Евгений Бурмако, энтузиаст опен-сорс движения, рассказал про проект Conflux — GPGPU для .NET Framework.
Параллелизм сегодня в моде, а программирование графических процессоров (GPGPU) находится на самом острие этой моды. Несмотря на ажиотаж, на этом поприще простора еще много — на сегодняшний день промышленные библиотеки для GPGPU есть только для C/C++.
В докладе рассказано об опыте разработки решения для GPGPU в экосистеме .NET — исследовательского проекта Conflux. Главная идея Конфлакса — достичь полной интеграции в хостовый язык C# и избавить программиста от необходимости явно использовать стек инструментов CUDA.
Первая альфа-версия успешно этого достигла, скомпилировав C# код умножения матриц в ассемблер графических процессоров NVIDIA и успешно его исполнив.
Интересным артефактом разработки Конфлакса явился декомпилятор и построенная вокруг него инфраструктура метапрограммирования. Сам по себе C# не очень приспособлен для этих целей, но и на нем получилось достичь интересных результатов.
Внимание! Данная статья выбрана для репликации во внешнюю базу знаний компании. Пожалуйста, не допускайте в этой статье публикацию конфиденциальной информации, ведения обсуждений в теле статьи, и более ответственно относитесь к качеству самой статьи — проверяйте орфографию, пишите по-русски, избегайте непроверенной вами информации.