NVIDA выпустила CUDA 3.1 и Parallel Nsight — надстройку Visual Studio, направленную на то, чтобы сделать программирование на GPU общего назначения (GPGPU) более распространенным. Но что действительно необходимо, так это аппаратно-независимый подход к проблеме.
Nvida выпустила версию 3.1 своей системы разработки графических процессоров общего назначения CUDA и NVIDA Parallel Nsight для Visual Studio. Из этих двух именно Parallel Nsight открывает новые горизонты.
Новый CUDA 3.1 включает некоторые значительные улучшения, включая 16-сторонний параллелизм, но только на графических процессорах с архитектурой Fermi, то есть на новейшем оборудовании NVIDA. Также новинкой является GPUDirect, который позволяет графическим процессорам обмениваться данными по сети InfiniBand без участия ЦП. Очевидно, это требует специальной аппаратной поддержки.
Прежде чем вы подумаете о том, чтобы опробовать CUDA, вам необходимо убедиться, что у вас есть доступ к графическому процессору с поддержкой CUDA, что означает оборудование NVIDA в сериях GeForce, Quadro или Tesla. Вы можете проверить полный список поддерживаемого оборудования на http://www.nvidia.com/object/cuda_learn_products.html.
Сравните это со способностью OpenCL или DirectComputes работать с рядом графических процессоров от разных производителей.
Parallel NSight — это набор инструментов разработки, которые дополняют Visual Studio. Поставляется в двух версиях Standard и Professional. Стандартная версия поставляется с графическим отладчиком и инспектором, которые могут работать с кодом HLSL на графическом процессоре. Отладчик работает так же, как стандартный отладчик Visual Studio, позволяя вам проверять ход ядер, устанавливать точки останова, проверять локальные данные и т. Д.
Профессиональная версия в настоящее время доступна в виде 30-дневной пробной версии, и она стоит 350 долларов за дополнительные функции, которые она включает — анализатор кода. Также в настоящее время он работает только с Visual Studio 2008 и требует Quadro G9X или лучше или Tesla G1050 / 1070 GPU или выше. Хотя для использования отладчика вам потребуется оборудование NVIDA, вы можете отлаживать код CUDA C ++ / C и DirectX HLSL.
У NVIDA есть видеопрезентация использования Parallel Nsight.
В настоящее время использование графического процессора для любых пользовательских вычислений кажется старомодным возвратом к тем временам, когда вам приходилось учитывать, какое оборудование вы нацеливали. Такие компании, как NVIDA, используют разработку графических процессоров как способ выделить свое оборудование как особенное и необходимое.
Ирония заключается в том, что они, вероятно, продали бы больше оборудования, если бы разработка графических процессоров велась на высоком уровне и не зависела от оборудования. Только тогда у него есть шанс стать мейнстримом.