Вісник ХНУ. Технічні науки - 2019 рік
Постійне посилання зібрання
Переглянути
Перегляд Вісник ХНУ. Технічні науки - 2019 рік за Ключові слова "512.683"
Зараз показуємо 1 - 1 з 1
Результатів на сторінці
Налаштування сортування
Документ Производительность GPU и CPU для матричного умножения(Хмельницький національний університет, 2019) Мясищев, А.А.; Полозова, В.М.; Myasischev, A.A.; Polozova, V.M.В работе исследуется целесообразность применения графических процессоров при решении задач матричного умножения по сравнению с обычными многоядерными процессорами. Указываются особенности использования и проблемы установки библиотеки MAGMA. Для проведения вычислительных экспериментов рассмотрены две системы. В каждой из них установлен шестиядерный процессор (CPU) AMD. В первой системе использован графический процессор (GPU) Tesla C2075, во второй – GeForce GTX 480 фирмы «NVIDIA». GPU выполняют роль вычислительных ускорителей для решения задач матричного умножения. Причем в первом случае расчет выполняется с учетом распараллеливания по 6 ядрам процессора с использованием библиотек MPI, ScaLAPACK и ATLAS. Во втором и третьем случаях – распараллеливанием по ядрам GPU Tesla C2075 и GeForce GTX 480 с использованием технологии CUDA. Вычислительные системы работают под управлением операционной системы Linux Ubuntu. На них установлены компиляторы фортран и C++ с перечисленными выше библиотеками для 6-ядерного процессора. Для программирования на GPU Tesla C2075 и GeForce GTX 480 инсталлированы видеодрайвер nvidia и программное обеспечение CUDA Toolkit. Установлено, что производительность GPU GeForce GTX 480 и GPU Tesla C2075 выше производительности CPU AMD примерно в 3.5 и 6.3 раз соответственно для чисел с двойной точностью. А производительность GPU GeForce GTX 480 в 1.3 раза выше производительности GPU Tesla C2075 для чисел с одинарной точностью. Показано, что для достижения максимальной производительности GPU NVIDIA CUDA необходимо использование библиотек MAGMA или CUBLAS, которые дают ускорение расчетов примерно в 6.4 раза по сравнению с традиционным способом программирования с использованием глобальной памяти. Рассмотрено решение задачи матричного умножения с использованием разделяемой памяти. Показано, что в этом случае производительность GPU незначительно ниже по сравнению с использованием библиотек MAGMA. Показано, что производительность GPU при матричном умножении с использованием CUBLAS для GeForce GTX 480 практически равна пиковой производительности при двойной точности вычислений (пиковая - 168.1, полученная 165.1 Гигафлопс). Для GPU Tesla C2075 пиковая производительность почти в два раза выше полученной (пиковая – 515.2, полученная 300.6 Гигафлопс). Это указывает на недостаточную эффективность библиотеки CUBLAS и MAGMA для GPU Tesla.