Осень 2026
Курс
ПОМИ РАН

Вычисления на видеокартах

Процессор и видеокарта — в чём между ними разница? Если видеокарты так хороши — зачем нужен процессор? Чем отличаются OpenCL, CUDA и Vulkan? Что и когда выбрать для задачи? Как выглядят алгоритмы на видеокартах?

Обсудим, что такое вычисления в модели массового параллелизма. Что такое hyper-threading, occupancy, code divergence, coalesced memory access? Какие алгоритмы выигрывают от использования видеокарт?

Рассмотрим на примерах:

– merge-sort* за O(N)O(N)1​1

​​ вместо O(N⋅logN)O(N⋅logN),

– умножение матриц,

– real-time построение BVH-дерева (из этого вырос современный Ray Tracing).

Обсудим, как, понимая архитектуру компьютера хотя бы в общих чертах, можно оценить потенциал для ускорения с помощью разных методов оптимизации — даже без профилировщика.

Лекция будет сопровождаться кодом — с ним можно будет экспериментировать и после лекции. Также на лекции будут карлики и клоуны!

  • merge-sort за O(N)O(N) — на видеокарте он, конечно, не работает строго за линию, но всё равно быстрее, чем на процессоре, в квинвигинтиллион**

​​ раз. **​ В 123.9 раз.

Лекторы

avatar
Полярный НиколайПреподаватель
avatar
Симиютин БорисПреподаватель

Партнеры