Вы здесь

Программирование с использованием аппаратных ускорителей

Лекция
Предмет:
Дата записи:
03.07.14
Дата публикации:
07.10.14
Код для блога:

Большинство программистов пишут для x86 и не задумываются о том, чтобы использовать аппаратные ускорители. Единственная индустрия, о которой мы знаем — это Game Development, использующий (кто бы мог подумать) видеокарты. Но аппаратные ускорители используются и во многих других дисциплинах. В этом докладе Дмитрий рассказывает про три варианта аппаратных ускорителей: GPGPU (графические карты), аппаратные ускорители Intel Xeon Phi и FPGA-процессоры.

  • GPGPU (General-Purpose computation on GPUs) — это технология которая выросла из идеи использования графических ускорителей для вычислений которые, порой, с графикой не имеют ничего общего. На сегодняшний день производители графических ускорителей поставляют карты как для графики, так и для других расчётов (например, NVIDIA Tesla не имеет портов для мониторов вообще), а также предоставляют весьма зрелые инструменты для программирования и отладки на подобных устройствах.
  • Intel Xeon Phi — это сопроцессорная технология от Intel, первая технология которая предоставляет на PCI плате 60(!) дополнительных ядер общего пользования. Эта технология не страдает от ограничений GPU (branch divergence) и позволяет запускать независимые вычисления на разных ядрах. Технология поддерживает x86, что очень удобно, так как не нужно переписывать уже существующие алгоритмы.
  • FPGA — технология которая фактически позволит вам создать свой собственный процессор, настроенный на конкретные задачи, однако за специализацию предётся заплатить временем разработки и внедрения.