Poisk-podbor.Ru
ВИДЕОКАРТЫ

Неграфические вычисления на видеокарте (NVIDIA CUDA и AMD Stream)

Выбрать регион доставки»
Подбор видеокарты по параметрам

Неграфические вычисления на видеокарте (NVIDIA CUDA и AMD Stream)

GPGPU

История появления

Первые робкие попытки использования ресурсов видеокарт для неграфических вычислений (в основном для математических расчётов) были предприняты ещё в конце прошлого века задолго до их официального внедрения компаниями NVIDIA и AMD (ATI). Но ощутимого распространения эта технология не получила, так как возможности графических процессоров на тот момент были весьма ограничены, да и точность вычислений оставляла желать много лучшего.

GPGPU logoПереломным моментом можно считать выход видеокарт на чипах NV30 (NVIDIA GeForce FX) и R300 (AMD (ATI) Radeon 9500 и выше) в 2002-2003 годах. В них была реализована программируемая шейдерная архитектура второй версии, точность вычислений значительно повысилась, что заметно расширило область применения. Эта новая и стремительно растущая технология получила название GPGPU (General-purpose computing on graphics processing units - "вычисления общего назначения на графических процессорах").

BrookGPU logoЕщё одну ключевую роль сыграло появление компилятора BrookGPU. До его создания разработчикам приходилось получать доступ к ресурсам видеокарты через графические API OpenGL или Direct3D, что значительно усложняло процесс программирования, так как требовало специфических знаний - приходилось изучать принципы работы с 3D-объектами (шейдерами, текстурами и т. п.). Это явилось причиной весьма ограниченного применения GPGPU в программных продуктах и мешало её широкому распространению. BrookGPU стал этаким "переводчиком", при его использовании надобность в знаниях 3D-программирования практически отпала - вычислительные мощности видеокарт теперь были легко доступны программистам в виде дополнительного сопроцессора для параллельных расчётов.

Во многом благодаря BrookGPU компании NVIDIA и AMD (ATI) обратили внимание на зарождающуюся технологию произвольных вычислений на графических процессорах, тем более функционирующую непосредственно на видеокартах, ими же и произведённых. Началась разработка собственных реализаций, обеспечивающих прямой и более прозрачный доступ к вычислительным блокам 3D-ускорителей, в разработке которых приняли участие некоторые инженеры, создававшие компилятор BrookGPU.

 

Необходимое оборудование, принцип работы

Одновременно с выходом видеокарт серий NVIDIA GeForce 8 и AMD (ATI) Radeon X1900 / HD 2000 были официально представлены собственные реализации GPGPU - CUDA у NVIDIA и Stream у AMD (ATI). Эти платформы программно несовместимы между собой (в CUDA используется язык Cg, а в Stream сначала использовался Close To Metal, затем OpenCL), но принцип действия один и тот же. Если кратко, то заключается он в том, что графический ускоритель может одновременно обрабатывать огромное количество потоков данных (вплоть до нескольких тысяч), используя встроенные в него наборы инструкций. Если требуется одинарная точность вычислений, то скорость их выполнения может возрасти в десятки и даже сотни раз по сравнению с любым центральным процессором x86, если же требуется двойная точность, то прирост уже не столь впечатляющ, но всё же иногда может достигать нескольких десятков раз.

Видеокарта NVIDIA GeForce 9800 GT с поддержкой CUDA

Видеокарта NVIDIA GeForce 9800 GT с поддержкой CUDA

Для функционирования NVIDIA CUDA необходима видеокарта серии GeForce 8000 или выше, причём их количество в персональном компьютере может достигать шести (существуют материнские платы с необходимым числом разъёмов PCI Express x16), которые к тому же могут быть двухпроцессорными. Только вот есть сомнения, что кто-то будет собирать такие монстроподобные кластеры для домашнего применения.

Также выпускаются специализированные ускорители Tesla, предназначенные исключительно для неграфических вычислений. Варианты Tesla для рабочих станций отличаются от видеокарт большим количеством памяти (вплоть до шести гигабайт) и наличием только одного видеовыхода.

Ускоритель GPGPU Tesla C2070 с поддержкой CUDA

Ускоритель GPGPU Tesla C2070 с поддержкой CUDA

Для функционирования AMD (ATI) Stream необходима видеокарта серии Radeon HD 2000 или выше, как и у CUDA, их количество может достигать шести. Специализированные ускорители от AMD (ATI) для неграфических вычислений называются FireStream, оснащаются памятью вплоть до четырёх гигабайт и тоже имеют один видеовыход.

Ускоритель GPGPU AMD FireStream 9270 с поддержкой Stream

Ускоритель GPGPU AMD FireStream 9270 с поддержкой Stream

 

NVIDIA Physx logo

Практическое применение

Существует очень большое количество приложений, использующих GPGPU, но многие из них относятся к профессиональному и научному узкоспециализированному программному обеспечению. Можно с уверенностью предположить, что мало кому придёт в голову заняться на домашнем компьютере вычислениями гидрогазодинамики, поиском нефти или газа.

Bullet Physics logoОдним из самых распространённых применений GPGPU в домашних условиях является ускорение физических процессов в играх (и не только) через движки PhysX (NVIDIA CUDA) и Bullet Physics (AMD (ATI) Stream), хотя второй на данный момент куда менее распространён. Также большую популярность получили проекты распределённых вычислений, цели которых простираются от поиска радиосигналов внеземного разума (SETI@home) до исследования причин возникновений болезней человека (Folding@home). Многие клиентские программы отлично распараллеливают полученные для обработки задания и активно используют вычислительные ресурсы видеокарт, то есть любое количество установленных в системе графических процессоров без работы не останутся.

Также применительно к домашнему использованию вычислительные возможности GPGPU используются в программах для видеотрансляций в HD-качестве (распознавание объектов в реальном времени), шифровании и дешифровании данных (например, можно восстановить забытый пароль от какого-либо документа), обработки видео (в том числе его кодирования и декодирования) и звука сложными фильтрами, а также некоторых других.

 

Тестирование, заключение

И всё же какие преимущества эта технология даёт на практике? Рассмотрим их на примере кодирования относительно небольшого видеоролика в программе CyberLink PowerDirector 9, в которой имеется поддержка и CUDA, и Stream. Кодировка осуществлялась из FullHD-формата (H.264, 1080p) в SD-формат (H.264, 480p) с применением некоторых фильтров.

При тестировании использовалась следующая конфигурация компьютера:

  • процессор: AMD Phenom II X4 955 3200 МГц;
  • материнская плата: ASRock A770DE AM2+;
  • оперативная память: Hynix DDR2 4 x 2048 Гб PC2 8500 1066 МГц (в двухканальном режиме);
  • видеокарта: AMD Radeon HD 4890 1024Мб DDR5 PCI Express 2.0;
  • жёсткий диск: 2 x Seagate 7200.10 160 Гб SATA2 (320 Гб в режиме RAID 0).

Результаты представлены на следующем графике (меньше - лучше):

Тестирование GPGPU (Stream) в CyberLink PowerDirector 9

Прирост при использовании AMD (ATI) Stream по сравнению с далеко не самым маломощным процессором составил впечатляющие 360 процентов. Если бы кодировался не небольшой ролик, а полнометражный фильм, то выигрыш по времени был бы куда более ощутим.

Может возникнуть вопрос о том, что же всё-таки лучше - NVIDIA CUDA или AMD (ATI) Stream? Однозначного ответа нет. По личному опыту в разных приложениях прибавка производительности может сильно отличаться - где-то быстрее CUDA, где-то Stream. Даже в одной и той же программе изменение настроек может сделать одну технологию быстрее другой, и наоборот.

И хотелось бы надеяться, что в ближайшем будущем технологии вычислений общего назначения на графических процессорах найдут более широкое применение применительно к непрофессиональному использованию, так как на данный момент они практически ограничены только описанными выше сферами.

26.07.2011 Смирнов Михаил

Все статьи


Подбор видеокарты по параметрам

от 8 793 руб.

Gigabyte GeForce GTX 1050 1392Mhz PCI-E 3.0 2048Mb 7008Mhz 128 bit DVI 2xHDMI HDCP OC Low Profile

от 29 950 руб.

Gigabyte Radeon RX Vega 56 1170Mhz PCI-E 3.0 8192Mb 1600Mhz 2048 bit HDMI HDCP GAMING OC

от 2 279 руб.

Asus GeForce GT 710 954Mhz PCI-E 2.0 1024Mb 1800Mhz 64 bit DVI HDMI HDCP

от 2 684 руб.

Asus GeForce GT 710 954Mhz PCI-E 2.0 1024Mb 5012Mhz 32 bit DVI HDMI HDCP

от 9 794 руб.

Gigabyte GeForce GTX 1050 1392Mhz PCI-E 3.0 2048Mb 7008Mhz 128 bit DVI 3xHDMI HDCP Windforce OC

от 11 699 руб.

Gigabyte GeForce GTX 1050 Ti 1328Mhz PCI-E 3.0 4096Mb 7008Mhz 128 bit DVI 3xHDMI HDCP Windforce OC

от 3 445 руб.

Asus Radeon R5 230 650Mhz PCI-E 2.1 2048Mb 1200Mhz 64 bit DVI HDMI HDCP

от 2 780 руб.

Palit GeForce GT 710 954Mhz PCI-E 2.0 2048Mb 1600Mhz 64 bit DVI HDMI HDCP Silent

от 4 485 руб.

Gigabyte GeForce GT 730 902Mhz PCI-E 2.0 2048Mb 1800Mhz 64 bit DVI HDMI HDCP

от 11 955 руб.

Gigabyte GeForce GTX 1050 Ti 1328Mhz PCI-E 3.0 4096Mb 7008Mhz 128 bit DVI 2xHDMI HDCP OC Low Profile

от 2 469 руб.

MSI GeForce GT 710 954Mhz PCI-E 2.0 1024Mb 1600Mhz 64 bit DVI HDMI HDCP Silent

от 8 660 руб.

MSI GeForce GTX 1050 1404Mhz PCI-E 3.0 2048Mb 7008Mhz 128 bit DVI HDMI HDCP OC

от 2 412 руб.

Sapphire Radeon R5 230 625Mhz PCI-E 2.1 1024Mb 1334Mhz 64 bit DVI HDMI HDCP

от 2 579 руб.

Asus Radeon R5 230 625Mhz PCI-E 2.1 1024Mb 1200Mhz 64 bit DVI HDMI HDCP

от 8 803 руб.

Gigabyte GeForce GTX 1050 1354Mhz PCI-E 3.0 2048Mb 7008Mhz 128 bit DVI HDMI HDCP

от 2 856 руб.

Gigabyte GeForce GT 710 954Mhz PCI-E 2.0 1024Mb 1800Mhz 64 bit DVI HDMI HDCP Silent

от 9 840 руб.

Gigabyte GeForce GTX 1050 1404Mhz PCI-E 3.0 3072Mb 7008Mhz 128 bit DVI 2xHDMI HDCP OC Low Profile

от 10 779 руб.

Palit GeForce GTX 1050 Ti 1290Mhz PCI-E 3.0 4096Mb 7000Mhz 128 bit DVI HDMI HDCP StormX

от 2 509 руб.

Gigabyte GeForce 210 590Mhz PCI-E 2.0 1024Mb 1200Mhz 64 bit DVI HDMI HDCP

от 5 999 руб.

Asus Radeon R7 240 770Mhz PCI-E 3.0 4096Mb 1800Mhz 128 bit DVI HDMI HDCP

от 6 988 руб.

Gigabyte Radeon RX 550 1183Mhz PCI-E 3.0 2048Mb 7000Mhz 128 bit DVI HDMI HDCP

от 8 370 руб.

Palit GeForce GTX 1050 1354Mhz PCI-E 3.0 2048Mb 7000Mhz 128 bit DVI HDMI HDCP StormX

от 37 786 руб.

Gigabyte Radeon RX Vega 64 1276Mhz PCI-E 3.0 8192Mb 1890Mhz 2048 bit HDMI HDCP GAMING OC

от 4 849 руб.

Asus GeForce GT 1030 1228Mhz PCI-E 3.0 2048Mb 6008Mhz 64 bit DVI HDMI HDCP Silent

от 3 222 руб.

Asus GeForce GT 710 954Mhz PCI-E 2.0 2048Mb 1800Mhz 64 bit DVI HDMI HDCP

от 3 531 руб.

Asus GeForce GT 710 954Mhz PCI-E 2.0 2048Mb 5012Mhz 64 bit DVI HDMI HDCP

от 12 436 руб.

Asus GeForce GTX 1050 Ti 1379Mhz PCI-E 3.0 4096Mb 7008Mhz 128 bit 2xDVI HDMI HDCP Strix OC Gaming

от 14 025 руб.

Asus GeForce GTX 1060 1506Mhz PCI-E 3.0 3072Mb 8008Mhz 192 bit DVI 2xHDMI HDCP COMPACT

от 10 100 руб.

PNY Quadro P400 PCI-E 3.0 2048Mb 64 bit HDCP

от 5 790 руб.

Asus GeForce GT 730 902Mhz PCI-E 2.0 2048Mb 5010Mhz 64 bit DVI HDMI HDCP Silent

Обсуждение:
27.07.2011
А что это за хрень на фото в 3-м абзаце?
И вообще, зачем мне все это надо? Ролики для айпада готовые лежат
27.07.2011
> А что это за хрень на фото в 3-м абзаце?

Логотип BrookGPU.

> И вообще, зачем мне все это надо? Ролики для айпада готовые лежат

Прям вот все существующие ролики для айпада перекодированы? Да и за МКАД-ом далеко не все станут один и тот же фильм для всех девайсов выкачивать.
Оставить комментарий
Подберите видеокарту из 13 554 предложений
Линейка: ?
GeForce

(6142)

Radeon

(2558)

FirePro

(62)

Quadro

(958)

Тип слота: ?
PCI-E

(9692)

Максимальный объем видеопамяти (Мб): ?
Тип видеопамяти: ?
GDDR2

(19)

GDDR3

(1563)

GDDR4

(56)

GDDR5

(7713)

GDDR5X

(161)

Максимальное разрешение: ?
2560x1600

(446)

4096x2160

(2106)

7680x4320

(6457)

Торговая марка / бренд видеокарты
Все торговые марки
SLI/CrossFire
Выходы
Скорость
Количество видеопроцессоров: ?
1

(9271)

Шина обмена с памятью (бит): ?
32

(110)

64

(1973)

128

(3609)

192

(1454)

256

(2161)

384

(19)

512

(37)

Частота видеопроцессора: ?
Частота памяти: ?
Дополнительные характеристики
Количество поддерживаемых мониторов: ?
1

(121)

2

(1927)

3

(2697)

4

(3944)

5

(654)

6

(71)

Версия шейдеров: ?
4.1

(76)

5.0

(9169)

Размеры
Высота (мм) :
Длина (мм): ?


Обзоры и тесты

AMD Radeon HD 6870 vs NVIDIA GeForce GTX 560 Ti

Видеокарты среднего уровня (и по производительности, и по цене) являются наиболее популярными, так как обладают наилучшим соотношением цены и качества. В данном материале будут освещены особенности и проведено сравнительное тестирование двух конкурирующих 3D-ускорителей, которые находятся на самом верху Middle-End-класса, – это AMD Radeon HD 6870 и NVIDIA GeForce GTX 560 Ti.... 
  • Комментариев: 5
  • Голосование: +69

Видеокарты: выбираем минимально приемлемый ускоритель для современных игр

Дискретная видеокарта является наиболее важной частью любого «геймерского» компьютера, и чем она мощнее, тем лучше. Оптимальным вариантом будет установка топового 3D-ускорителя, но цены на них, мягко говоря, кусаются, да и стоимость владения будет немалая. Сегодня мы выясним, какие видеокарты в состоянии обеспечить достаточный уровень fps в современных играх и при этом не сильно обременят кошелёк.... 
  • Комментариев: 1
  • Голосование: +135

Видеокарты: выбираем современный 3D-ускоритель начального уровня

Дискретные видеокарты начального уровня чаще всего приобретаются теми, кто не планирует запускать на компьютере актуальные 3D-игры. Таким пользователям часто достаточно и интегрированной графики, но её может попросту не быть в компьютере либо их не устраивает малая функциональность подобного решения (отсутствие необходимых выходов, невозможность аппаратного декодирования HD-видео и т. д.).... 
  • Голосование: +3

Возможности современных интегрированных видеокарт

Когда бюджет на покупку компьютера или ноутбука ограничен небольшой суммой, часто предпочтение отдаётся конфигурации с интегрированной видеокартой. Но на данный момент на рынке присутствуют продукты со встроенными 3D-ускорителями разных поколений, производительность которых отличается буквально на порядки. Как же выбрать оптимальный вариант? Этому и посвящён данный материал.... 
  • Комментариев: 3
  • Голосование: +17

Несколько видеокарт в одном компьютере? Легко!

Самый распространённый путь к увеличению производительности видеоподсистемы компьютера – это замена видеокарты на более мощную. Но существует ещё один действенный способ, позволяющий увеличить скорость в играх в 2-4 раза. Заключается он в добавлении дополнительных (двух, трёх, но чаще всего одного) 3D-ускорителей в помощь к уже имеющемуся - благодаря технологиям NVIDIA SLI и AMD (ATI) CrossFireX.... 
  • Комментариев: 6
  • Голосование: +255

Выбор видеокарты. От общего к частному

Более-менее разобравшись с основными моментами, касающимися видеокарт, перейдем к рассмотрению основных характеристик и ответим на вопрос: на что следует обратить внимание в первую очередь? А также рассмотрим следующую проблему: как подобрать графический адаптер, исходя из конкретных потребностей пользователя?... 
  • Комментариев: 4
  • Голосование: +13

Все статьи в рубрике «Видеокарты»


© 2008 - 2019   ООО «Поиск-Подбор», г. Москва, ул. Кантемировская, д. 58 Карта сайта Размещение рекламы Личный кабинет