Добавить в корзинуПозвонить
Найти в Дзене

Революция в технологиях параллельных вычислений. CUDA.

За всю историю компьютерных систем видеокарты воспринимались как средство "ускорения" игр, и покупали их исключительно для игр. например в эпоху DOOM 1, DUKENUKEM 3D , WOLFENSTEIN и многих других рендеринг игровых пространств и расчет физики выполнялся только средствами процессора в то "старое" время видеокарта выступала только для вывода изображения на экран, то есть вела обработку 2D сцен. Но время идет, технологии развиваются, начали появляться более сложные в графическом исполнении игры. Начали появляться видеоадаптеры, которые "забирали" задачу рендеринга сцен на себя, что позволяло освободить центральный процессор для других задач (в частности для прорисовки "каркаса" мира). Появились производители видеоадаптеров ATI 3DFx Nvidia S3 и др способные обрабатывать 3D сцены. С этого момента рост производительности видеокарт начал расти семимильным и шагами. за последние 25 лет производительность видеокарт повысилась более чем в 10 000 раз! Сфера игровой индустрии так же начала развив

За всю историю компьютерных систем видеокарты воспринимались как средство "ускорения" игр, и покупали их исключительно для игр. например в эпоху DOOM 1, DUKENUKEM 3D , WOLFENSTEIN и многих других рендеринг игровых пространств и расчет физики выполнялся только средствами процессора в то "старое" время видеокарта выступала только для вывода изображения на экран, то есть вела обработку 2D сцен. Но время идет, технологии развиваются, начали появляться более сложные в графическом исполнении игры. Начали появляться видеоадаптеры, которые "забирали" задачу рендеринга сцен на себя, что позволяло освободить центральный процессор для других задач (в частности для прорисовки "каркаса" мира). Появились производители видеоадаптеров ATI 3DFx Nvidia S3 и др способные обрабатывать 3D сцены. С этого момента рост производительности видеокарт начал расти семимильным и шагами. за последние 25 лет производительность видеокарт повысилась более чем в 10 000 раз!

Сфера игровой индустрии так же начала развиваться, появились новые жанры, RTS RPG SIMULATOR и др. которые возлагали все более и более серьезные требования к производительности видеокарт и центрального процессора. На пример в 2007 году вышла игра Crysis, которая на то время привнесла в игровой мир новое качество изображения, и красоту открытого мира. На то время не было не было ни одного домашнего компьютера который был способен "вытянуть" эту игру на ультра качестве. Игра была принята очень тепло, и немного подтянула продажи видеокарт и процессоров. Время шло, производительность видеокарт росла, но их суть оставалась неизменной, они ускоряли обработку 3D графики.

В 2007 году была представлена технология, позволяющая использовать вроде как стандартное "железо" для нестандартных задач. Была представлена программно-аппаратная архитектура СUDA.

Эта технология появилась с появлением чипа NVidia G80 или в более понятном виде NVIDIA GeForce 8 серии (GeForce 8300 - 8800).

На момент появления было очень мало программных продуктов поддерживающих эту технологию. но время все ставит на свои места. Поддержка CUDA не заставила себя долго ждать, очень много софтварных производителей внедрили CUDA в свои продукты. Для примера Photoshop, при работе с файлом разрешением 8000*6000 не используя CUDA наблюдается часто используемое геймерами слово "слайдшоу", но стоит активировать как движение картинки становится плавное, при этом не обязательно должна быть самая мощная видеокарта.

Но в чем отличие центрального процессора (CPU central processing unit) от процессоров имеющихся в видеокарте (GPU graphics processing unit)? Основная задача CPU выполнять разнообразные задачи за максимально короткий промежуток времени. GPU же позволяет выполнить только очень небольшую часть задач которые способен выполнить процессор, но делает он это быстро. Дело в том, что количество ядер в GPU гораздо больше (2-8 в отношении к ~500-4000). при чем скорость выполнения этих задач ничуть не уступает в скорости CPU.

Варианты использования технологии CUDA все росли, его начали использовать практически повсеместно, и в 2009 году Сатоси Накамото разработал всем известную электронную валюту Bitcoin. Она так же использует технологию CUDA. Но почему именно с появлением чипа G80 начался резкий рост? Дело в том, что Bitcoin это цепочка математических вычислений, для которых не требуется богатый функционал CPU, а так как количество GPU процессоров в видеокарте огромен, то это самый удобный вариант майнить (конечно есть и всякие ASIC системы, но это другая история)...

Итог: Когда то разработанная революционная технология CUDA, тепло принятая обществом, произвела другую революцию, в сфере электронных денег.

PS - на рынке имеется альтернатива CUDA это OPEN-CL от AMD.