В ряде недавних работ было показано высокое ускорение (1-2 порядка) вычислений общего назначения (относительно центральных процессорных устройств традиционной архитектуры) при использовании графических процессорных устройств (ГПУ).
Одним из наиболее совершенных программно-аппаратных комплексов в настоящее время является платформа NVidia CUDA (Compute Unified Device Architecture). Стоит отметить, что существует альтернативная платформа, обладающая (в отличие от CUDA) свойством переносимости в классе ГПУ – OpenCL, поддержанная многими производителями аппаратного обеспечения (AMD, NVidia и др.). Однако на данный момент OpenCL-программы требуют значительных усилий по оптимизации для каждого типа ГПУ. Поэтому в данной работе авторы ограничились рассмотрением технологии CUDA.
Целью настоящей работы является исследование возможностей ГПУ для решения нестационарных задач динамики пучков заряженных частиц с применением метода частицы в ячейках. В данной работе поставленная проблема изучается на модельных двумерных задачах.
Разработано несколько способов организации параллельных вычислений на ГПУ с учётом его архитектуры и размерности задач.
Тестовые расчёты подтвердили, что ускорение составляет 1-2 порядка по сравнению с одно- и многоядерными персональными ЭВМ.
Работа выполнена при поддержке гранта РФФИ 10-08-00984.