Posts Tagged ‘CUDA.NET’

CUDA.NET для .NET-разработчика (ч.1)

Суббота, Май 5th, 2012 Нет комментариев

Under : , , , ,

Думаю, аббревиатура CUDA в достаточной степени на слуху, и знакома многим из вас. Википедия подсказывает нам, что CUDA расшифровывается как Compute Unified Device Architecture, что можно вольно перевести как «архитектура устройств с поддержкой универсальных вычислений». Этими устройствами являются видеокарты производства NVidia. Поддержку CUDA обеспечивают карточки GeForce, начиная с 8xxx и выше, а также модельный ряд «профессиональной серии» — Quadro и Tesla. Таких устройств выпущено очень большое количество — от самых дешевых до супердорогих, и распространены они повсеместно. Тем интереснее становится сама технология — успешное её применение сулит хорошее преимущество по производительности. Разумеется, не всё так просто. Создание многопоточных программ, даже исполняемых на привычном CPU, сопряжено с определённым количеством трудностей. Лишь небольшое число приложений являются «распараллеленными», и дело тут не столько в технической сложности, сколько в характере задач и подходов к их решению. Чего уж тут говорить про GPGPU-вычисления — они имеют свои характерные особенности, ограничивающие сценарии применения. Вообще, это тема отдельного обсуждения, и я не стану в неё углубляться — предлагаю вместо этого подробнее познакомиться с CUDA и возможностями применения её в .NET приложениях. (далее…)

CUDA.NET для .NET-разработчика (ч.2)

Суббота, Май 5th, 2012 Нет комментариев

Under : , , , ,

Мы рассмотрели аппаратную часть, и теперь примерно понятно, на базе чего работает CUDA. Самое время познакомится с программной частью — каким образом происходит доступ к аппаратным ресурсам, что доступно прикладному программисту, и как вообще строится программа, выполняющаяся на CUDA-совместимом GPU.

Для запуска примеров нам потребуется:

1) видеокарта на чипе NVidia — GeForce 8 и выше; (далее…)

CUDA.NET для .NET-разработчика (ч.3)

Суббота, Май 5th, 2012 Нет комментариев

Under : , , , ,

С точки зрения платформы .NET  вплоть до недавно выпущенной 4-й версии фактически не было средств, облегчающих параллельную обработку данных. Однако ещё 4 июля 2008 года увидела свет версия 1.1 alpha библиотеки CUDA.NET. Она работала только подWindows XP , и поддерживала CUDA версии 1.1. С тех пор проект довольно динамично развивался, и на данный момент актуальной является релиз 3.0.0 — кроссплатформенный (в Linux и Mac OS использующий Mono), совместимый с CUDA версии 3.0, вышел он 17 июня 2010 года. Этого пакета вполне достаточно для изучения CUDA и создания каких-либо приложений на её основе: примером может служить программа для конвертации музыки в формат FLAC - FlaCuda. Фактически, CUDA.NET представляет собой объектно-ориентированную обёртку для использования API, предоставляемых драйвером CUDA.
(далее…)