Очень интересная для меня тема! Жду следующих публикаций. Особенно была бы интересна тема оптимизации работы с памятью видеокарты, параллельные вычисления, многопоточность.
Cuda — это очень хорошо!
Вот только если бы все вместе договорились об «едином стандарте», а то получается для nVidia отдельно, для AMD и Intel — отдельно «писать».
Я понимаю nVidia — её надо продвигать то, что они купили и рассказывать инвесторам куда они девают деньги. Но извините, писать под каждую систему свой код — накладно и трудоёмко.
Все же Intel и AMD пошли по другой дороге (Havoc) ;)
Может nVidia, лучше купить VIA с их лицензией на x86, а потом сделать процессор и выработать единый с Intel, AMD стандарт, тогда не будет войн и программеры будут писать не узко-заточенные программы. Или договориться с Microsoft, чтобы CUDA включили в DirectX :)
В принципе, CUDA — низкоуровневый программно-аппаратный стек для программирования GPU. В документации у NVidia есть небольшая схема по которой: OpenCL и Compute Shaders из DX11 работают поверх CUDA-стека. Просто железа что-то не видно с поддержкой этих технологий, а CUDA уже на рынке больше 3 лет.
Я хотел DX11 SDK Beta качнуть, чтобы глянуть на Compute Shaders, а там в загрузке уже написано, что пока это чудо работает только в режиме эмуляции и надо ждать соответствующее железо.
Я всегда говорил, только общие стандарты будут будут «двигать» хорошие технологии.
nVidia надо сосредоточиться на продвижении стандартов.
Не знаю, на мой взгляд nVidia действует как то «однобоко». А продвигает, «жестоко». Наказывает железячные сайты, которые не упоминают о cuda. %( (habr-y теперь это не грозит :)
Как-то не «по-людски».
По поводу общих стандартов я не совсем согласен. В свое время много работал с OpenGL и думал, что это лучшее API для 3D графики (кросплатформенное, открытое и т.д). Слышал много недовольств в сторону DirectX, мол не совместим даже между новыми версиями, использует кривую COM модель программирования и вообще закрытый, до кучи еще и тормозной. Отношение у меня к DX после этого было подпорчено, но когда взял DX SDK и попробовал в действии этот «плохой» DX, то отношение резко изменилось на противоположенное. После DX на OpenGL возвращаться навряд ли буду. Все беда, что при принятии этих самых стандартов каждый тянет одеяло на себя и это длиться по несколько лет. К примеру — OpenGL 3.0, я бы сказал максимум 2.1, но не как не 3, а сколько перед этим было шуму.
я жду приличный бесплатный HD-кодер для видео написанный с использованием CUDA, а так почитать будет интересно
только скажите мне, в качестве VisualStudio подойдёт Express-версия???
Должно работать. Разве CUDA Visual Studio Wizard может косячить, сам не пробовал. В крайнем случае можно пример проекта из CUDA взять и сделать свой шаблон.
Это вряд ли, но если Вас смущает выяснение таких подробностей на публике — мы можем переместиться в PM. Ведь Ваш работодатель — это не секрет, надеюсь? =)
Да и в принципе не лишне было бы дать пару tip'ов по настройке IDE. Как по мне так ценность такого рода статей это именно системное описание немного разрозненых вещей (ide, компилятора, доп утилит и т.п.), что позволяет меньше гуглить, и не забивать мозги всяким попутным хламом.
Просмотрев эти ролики, скачал VS, CUDA SDK и сам потрогал это дело. N-Body Simulation просто фантастика. Ощутил какие большие вычислительные мощности у нас простаивают, когда мы не играемся в игрушки.
Кстати, в распределенных вычислительных сетях (например boinc.berkeley.edu/) огромную часть вычислений (на порядок больше чем CPU) делают GPU nVidia с CUDA.
CUDA: Начало