Ускорение MATLAB на GPU. GPGPU General-Purpose Graphics Processing Units (2003 г.) – («GPU общего назначения») – техника использования графического процессора.

Презентация:



Advertisements
Похожие презентации
Суперкомпьютер «УРАН» Андрей Созыкин Заведующий сектором суперкомпьютерных технологии ИММ УрО РАН Заведующий кафедрой высокопроизводительных.
Advertisements

Библиотека для работы с конечными множествами, использующая графический процессор в качестве основного вычислительного устройства Новосибирский Государственный.
Часть I: Введение в CUDA Александр Межов Ассистент кафедры Информатики 30 сентября 2011 Кафедра Информатики.
Обработка изображений Image Processing (IP) Изображение Компьютерное зрение Computer Vision (CV) Изображение Модель (Описание) Компьютерная графика Computer.
Библиотека для работы с конечными множествами, использующая графический процессор в качестве основного вычислительного устройства Новосибирский Государственный.
Библиотека для работы с конечными множествами, использующая графический процессор в качестве основного вычислительного устройства Новосибирский Государственный.
Сравнение производительности NVidia NPP и Intel IPP Участники: Калишев Глеб Майоров Алексей Руководитель: Половинкин Алексей Участники: Калишев Глеб Майоров.
Анатолий Свириденков (сodedgers.com) Блог:
Вычисления Общего Назначения на Графическом Ускорителе.
Сравнение возможностей инструментария разработки программного обеспечения графических процессоров.
Система в сборе 1. Кластер 2. ИБП 3. Стойка 14 U 4. Поставщик оборудования - компания Bevalex.
Принципы адаптации вычислительных алгоритмов под параллельную архитектуру графических акселераторов С.М.Вишняков научный руководитель: д.т.н. А.В.Бухановский.
Факультет прикладной математики и физики Кафедра вычислительной математики и программирования МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ (национальный исследовательский.
САМАРСКИЙ ГОСУДАРСТВЕННЫЙ АЭРОКОСМИЧЕСКИЙ УНИВЕРСИТЕТ ИМЕНИ АКАДЕМИКА С.П. КОРОЛЕВА (национальный исследовательский университет) Якимов Павел Юрьевич,
Дипломная работа Преснова И.М Научный руководитель Демьянович Ю. К
Лекция 1. Архитектура и программирование массивно- параллельных вычислительных систем Summer of coding. CUDA course. Борисов Александр
RISC-архитектуры ( Reduced Instruction Set Computer)
Принципы адаптации вычислительных алгоритмов под параллельную архитектуру графических акселераторов С.М.Вишняков научный руководитель: д.т.н. А.В.Бухановский.
CONFLUX: GPGPU ДЛЯ.NET Евгений Бурмако Андрей Воронович.
Санкт-Петербургский государственный университет информационных технологий, механики и оптики Санкт-Петербург 2009 Санкт-Петербургский государственный университет.
Транксрипт:

Ускорение MATLAB на GPU

GPGPU General-Purpose Graphics Processing Units (2003 г.) – («GPU общего назначения») – техника использования графического процессора видеокарты для общих (неграфических) вычислений, которые обычно проводит центральный процессор. Применение GPGPU: Вычислительная математика Вычислительная биология Вычислительная экономика Моделирование в физике Обработка сигналов…

CPUGPU Память оптимизирована под минимальную латентность (системакэшей). Много транзисторов управления (предсказание ветвлений, планировщики и пр.). Архитектура оптимизирована для программ со сложным управлением (эффективная обработка ветвлений). Память оптимизирована под максимальную пропускную способность. Большая часть транзисторов для вычислений. Архитектура оптимизирована для программ с большим объемом вычислений (параллелизм по данным типа SIMD). Латентность скрывается вычислениями во время запросов к памяти.

GPU демонстрируют хорошие результаты в параллельной обработке данных: с одной и той же последовательностью действий, применяемых к большому объёму данных (многопоточные вычисления), что подразумевает меньшие требования к управлению исполнением, c высокой плотностью арифметики - высоким отношением числа арифметических операций к числу обращений к памяти, что означает возможность покрытия латентности памяти вычислениями.

CUDA Compute Unified Device Architecture (2007 г.) - новая программно-аппаратная архитектура NVIDIA для параллельных вычислений на GPU, предоставляющая средства (toolkit) для организации вычислений общего назначения на GPU Присутствует в GPU NVidia: GeForce 8800 и выше, Quadro FX 5600/4600 и выше, Tesla серии 10, Tesla серии 20 (Fermi).

CUDA Toolkit компилятор nvcc; библиотеки CuFFT и CuBLAS; профилировщик; отладчик gdb для GPU; API высокого уровня (CUDA Runtime) и API низкого уровня (CUDA Driver); руководство по программированию; CUDA Developer SDK (исходный код, утилиты и документация).

Вычислительный сервер на базе GPU NVidia Tesla Конфигурация: Платформа SuperServer SYS-7046GT-TRF-TC4 CPU 2 x Intel Nehalem 4Core X GHz RAM 12 x 2 GB RAM HDD 8 x 500 GB SATA GPU 4 x TESLA C1060 (4 x 240 ядер) Пик. произв. (SP) ~3,73 TFlops (4 GPU) Пик. произв. (DP) 312 GFlops (4 GPU)

GPU NVidia Tesla C1060 Total amount of device memory: 4 GB Number of multiprocessors: 30 Number of cores: 240 Clock rate: 1.30 GHz

Вычислительный сервер на базе GPU NVidia Tesla Программное обеспечение: OS Gentoo Linux (kernel ) Intel C/C++/F90/F95 (v.11.1) CUDA Toolkit (v.3.2) AccelerEyes Jacket (v.1.3) Multi-GPU License (4 GPU) Matlab ( R2010b 64-bit) Concurrent Network License

AccelerEyes Jacket accelerates MATLAB code on GPUs. With minimal knowledge and time, single threaded M-codes are transformed to GPU-enabled applications that fully leverage hardware. Thousands of MATLAB function syntaxes are supported. Jacket is designed for engineers, scientists, and analysts who want maximum performance and maximum leverage of GPU resources, without hassling with low-level programming details. Jacket automatically translates M-code to high performance primitives required for best utilization of GPUs. All GPU- specific programming details are handled by Jacket, freeing the user to focus on science, engineering, and analytics.

AccelerEyes Jacket пример кода Matlab + Jacket:

Ускорение MATLAB на GPU

Parallel Computing Toolbox lets you solve computationally and data-intensive problems using multicore processors, GPUs, and computer clusters. High-level constructs - parallel for-loops, special array types, and parallelized numerical algorithms let you parallelize MATLAB applications without CUDA or MPI programming. You can use the toolbox with Simulink to run multiple simulations of a model in parallel. The toolbox provides eight workers (MATLAB computational engines) to execute applications locally on a multicore desktop. Without changing the code, you can run the same application on a computer cluster or grid (using MATLAB Distributed Computing Server).

Вычислительный сервер на базе GPU NVidia Tesla Программное обеспечение: OS Gentoo Linux (kernel ) Intel C/C++/F90/F95 (v.11.1) CUDA Toolkit (v.3.2) AccelerEyes Jacket (v.1.3) Multi-GPU License (4 GPU) Matlab ( R2010b 64-bit) Concurrent Network License

Благодарю за внимание! ИДСТУ СО РАН Суперкомпьютерный центр коллективного пользования тел.: , URL: