CPU
Сравнение пиковой производительности систем на CPU и GPU (см. рис.Рис. 5)
Рис. 6. Динамика производительности CPU и GPU
Потоки GPU обладают крайне небольшой стоимостью создания, управления и уничтожения (контекст нити минимален, все регистры распределены заранее), для эффективной загрузки GPU необходимо использовать много тысяч потоков, в то время как для CPU обычно использует 10-20 потоков. За счёт того, что программы в CUDA пишутся фактически на обычном языке C (на самом деле для частей, выполняющихся на CPU, можно использовать C++), в который добавлены новые конструкции (спецификаторы типа, встроенные переменные и типы, директива запуска ядра), написание программ с использованием технологии CUDA оказывается заметно проще, чем при использовании графического API (табл.Таблица 1).
Разработчики софта для сжатия видео с GPU отмечают, что для того, чтобы получить ощутимую прибавку в производительности, надо производить сжатие видео формата не ниже 720p на машине с мощными как CPU, так и GPU. Отсюда следует, что применение GPU целесообразно для видео высокого разрешения. Действительно, для сжатия видео небольшого разрешения вполне можно использовать кодеры без применения GPU.
Таблица 1.
Прирост производительности
Видео | Разрешение | H.264 CPU, fps | H.264 CPU (CUDA), fps | Прирост произво-дительности, % |
Akiyo | CIF | 274.7 | 274.7 | |
Football | CIF | 200.8 | 277.8 | |
Mobile | CIF | 221.1 | 249.8 | |
Paris | CIF | 239.5 | 256.6 | |
Crew | 4CIF | 109.2 | 105.7 | -3 |
Stockholm | 720p | |||
Station | 1080p |
Наличие B-кадров в настройках кодера CPU приводит к снижению производительности, нетипично большая область поиска макроблоков для межкадровой компенсации движения, также приводит к снижению производительности, обычно это значение гораздо меньше, в популярной реализации кодера стандарта H.264 x264 значение по умолчанию для этого параметра 16. Наибольшее значение этого параметра для кодера с CUDA не так критично. Для GPU задачи такого плана являются типичными, так как легко распараллеливаются.
|
При использовании мощных ПК можно сжимать в реальном времени видео с разрешением до 720p. Стоит отметить, что кодер с использованием GPU с включёнными B-кадрами на мощных РС всегда работает быстрее, чем с выключенными B-кадрами. Из табл.Таблица 2 видно, что качество декодированного видео при использовании B-кадров зачастую падает.
Таблица 2.
Сравнение качества декодированного видео сжатого разными кодерами.
Видео | Битрейт, Кбит/с | X254 PSNR, dB | CPU PSNR, dB | GPU with B-frames PSNR, dB |
Akiyo | 48.13 | 48.13 | 48.13 | |
Football | 31.23 | 31.23 | 31.23 | |
Mobile | 29.81 | 29.81 | 29.81 | |
Paris | 38.13 | 38.13 | 38.13 | |
City | 34.51 | 34.51 | 34.51 | |
Crew | 35.34 | 35.34 | 35.34 | |
Ice | 41.14 | 41.14 | 41.14 | |
Stockholm | 36.09 | 36.09 | 36.09 |
На основании проведённых тестов можно утверждать, что видеокодер с использованием GPU пока не показал своих преимуществ перед кодером без GPU. Имеющиеся реализации кодеров с GPU проигрывают кодерам без GPU в качестве декодированного видео. При этом прирост производительности при использовании GPU не столь ощутим и составляет единицы или десятки процентов (в зависимости от контекста видео и его разрешения).
Видеокарта
Объём памяти большого количества современных видеокарт варьируется от 33 МБ (напр. Matrox G550) до 6 ГБ (напр. NVIDIA Quadro 6000). Поскольку доступ к видеопамяти GPU и другими электронным компонентами должен обеспечивать желаемую высокую производительность всей графической подсистемы в целом, используются специализированные высокоскоростные типы памяти, такие как SGRAM, двухпортовые (англ. dual-port) VRAM, WRAM, другие. Приблизительно с 2003 года, видеопамять, как правило, базировалась на основе DDR технологии памяти SDRAM, с удвоенной эффективной частотой (передача данных синхронизируется не только по нарастающему фронту тактового сигнала, но и ниспадающему). И в дальнейшем DDR2, GDDR3, GDDR4 и GDDR5. Пиковая скорость передачи данных (пропускная способность) памяти современных видеокарт достигает 327 ГБ/с (напр. у NVIDIA GeForce GTX 580 или 320 ГБ/с у AMD Radeon™ HD 6990) (см. табл.Таблица 3).
|
Таблица 3.
Пиковая скорость памяти
Тип | Эффективная частота памяти, МГц | Пиковая скорость передачи данных (пропускная способность), ГБ/с |
DDR | 166 — 950 | 1.2 — 30.4 |
DDR2 | 400 – 2400 | 3,2 — 9,6 |
GDDR3 | 700 – 2400 | 5.6 — 156.6 |
GDDR4 | 2000 – 3600 | 128 — 200 |
GDDR5 | 900 - 5700 | 130 — 320 |
Заключение
Видеокарты
За короткий период видеокарты набрали огромные темпы развития. В данный момент времени выпускаемая продукция может удовлетворить интересы любого пользователя. Лидерами на рынке производства видеокарт на данный момент времени являются:
- AMD
- nVidia
- Intel
- Matrox
- 3D Labs
- Elsa
Так же в разработке занят ряд других компаний.
D графика
На данный момент времени данное направление является крайне перспективным. Игровая индустрия, киноиндустрия, а так же программная инженерия требуют точного построения 3d изображений.
В разработке 3D изображения часто используются такие системы как:
|
• PhotoRealistic RenderMan (PRMan)
• mental ray
• V-Ray
• FinalRender
• Brazil R/S
• BusyRay
• Turtle
• Maxwell Render
• Fryrender
• Indigo Renderer
• LuxRender
• YafaRay
• POV-Ray
Список литературы
4. Ли, Дж. Трёхмерная графика и анимация/ Дж. Ли — М.: Вильямс, 2002. — 640 с.
5. Бейкер М. П. Компьютерная графика и стандарт OpenGL/ М. П. Бейкер, Д. Херн — М., 2005. — 1168 с.
6. Энджел Э. Интерактивная компьютерная графика. Вводный курс на базе OpenGL/ Э. Энджел — М.: Вильямс, 2001. — 592 с.
7. Снук Г. 3D-ландшафты в реальном времени на C++ и DirectX 9/ Снук Г. — М.: Кудиц-пресс, 2007. — 368 с.
8. Иванов В. П. Трёхмерная компьютерная графика / В. П. Иванов, А. С. Батраков, под ред. Г. М. Полищука. — М.: Радио и связь, 1995. — 224 с.
9. Скотт Мюллер. Модернизация и ремонт ПК (Upgrading and Repairing PCs.)/ Скотт Мюллер — М.: «Вильямс», 2007. — 170 с.
10. Чобану М. Многомерные многоскоростные системы обработки сигналов. / Чобану М. — М.: ТЕХНОСФЕРА, 2009 — 480 с.
11. RegEx match open tags except XHTML self-contained tags / StackOverflow — 2012 — https://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454