Применение языка Python для параллельных вычислений
Спецкурс включён в магистерскую программу отделения прикладной математики (ОПМ) физического факультета МГУ и ориентирован на получение/совершенствование знаний и навыков, необходимых для написания на языке Python таких программ, в которых задействуется параллельная архитектура для ускорения разного рода вычислений.
В последние годы язык программирования Python -- из просто ещё одного из многих универсальных языков -- как-то незаметно стал чуть ли не самым распространённым. Этому способствуют и богатая «экосистема» (многочисленные созданные сообществом прикладные библиотеки из самых разных областей), и не слишком высокий пороговый «уровень входа» в программирование на этом языке.
Слушатели спецкурса последовательно знакомятся с основными возможностями языка Python, его синтаксисом и особенностями, позволяющими синтаксически элегантно оформить доступ из него к сторонним библиотекам и аппаратным средствам.
Рассматриваются возможности доступа к вычислительным возможностям GPU как через реализацию CUDA (пакеты PyCUDA, Theano, Numba), так и через реализацию OpenCL (пакеты PyOpenCL, PyViennaCL), а также посредством GLSL (написание т.н. шейдеров) либо с помощью различных библиотек-«обёрток» (ArrayFire Python Wrapper, gnumpy, cudamat, PyGPU). Затронуты также некоторые аспекты использования мобильных GPU (Mali, Adreno, Vivante, PowerVR) и недо-GPU типа тех, что имеются в популярном микрокомпьютере Raspberry Pi/Pi2/Pi3.
Рассчитан на студентов старших курсов физического факультета и аспирантов.
Attachment | Size |
---|---|
GPU+Python. Параллельные вычисления в рамках языка Python | 1.24 MB |