Аннотация:
Ведущей тенденцией развития архитектур высокопроизводительных вычислительных систем в последние годы является использование сопроцессоров - графических ускорителей (GPU) и ПЛИС (FPGA) - программируемых логических интегральных схем. В связи с этим растет число приложений из самых разных предметных областей, модифицированных для использования на GPU и успешно использованных на практике. В работе предлагается подход к прогнозированию времени выполнения CUDA-ядер, основанный на статическом анализе исходного кода программы. Подход основан на построении модели CUDA-ядра и модели графического ускорителя. Разработанный метод оценки времени выполнения CUDA-ядер применен к реализации алгоритмов матричного умножения, преобразованию Фурье и методу обратного распространения ошибки для обучения нейросетей. В результате верификации подход показал хорошую точность предсказания, особенно при небольшой загрузке графического процессора.
Ключевые слова:анализ производительности, CUDA-ядро, статический анализ, модель графического процессора.