- Параллельные вычисления на видеокарте. Производительность решений GPGPU. Бенчмарки для параллельных вычислений на CUDA. Производительность решений GPGPU. Параллельные вычисления на GPU. Производительность GPU. Параллельные вычисления cuda. Параллельные вычисления GPGPU. Benchmarks for CUDA. Parallel computing on CUDA.
высокоскоростная съёмка скоростная съёмка
ГЛАВНАЯ
  ВИДЕОКАМЕРЫ
  ПРОГРАММЫ
  РЕШЕНИЯ
  ПРОЕКТЫ
  НОВОСТИ
  ИНФО
  ВАКАНСИИ
  АДРЕС
  КАРТА САЙТА
  ENGLISH VERSION
 
  Поиск по сайту:

Производительность параллельных вычислений GPGPU

Использование видеокарт для организации параллельных вычислений очень перспективно, причём это не описание ближайшего будущего, а суровая реальность. Для реализации возможностей современных видеокарт необходимо соответствующее программное обеспечение и алгоритмы, которые можно распараллелить. Большинство алгоритмов, используемых в программном обеспечении для процессоров Intel/AMD/Cell изначально являются последовательными, поэтому не всегда возможна их переделка для параллельной реализации. Примерами таких последовательных алгоритмов являются арифметическое кодирование, сжатие в JPEG без потерь (JPEG-LS), декодирование видеопотока и др.

Для демонстрации возможностей параллельных вычислений на видеокартах NVIDIA с технологией CUDA мы написали ряд программ, которые раскрывают потенциал этого направления. Эти примеры сделаны нами и не повторяют код из примеров CUDA SDK. Более того, наши результаты заметно лучше, чем можно найти в SDK.

Конфигурация компьютера

  • Для тестирования программного обеспечения использовалась такая конфигурация компьютера: ASUS P6T Deluxe V2 LGA1366, X58, Core i7 920, 2,67 ГГц, DDR-III 6 ГБайт
  • Видеокарта для вычислений: GeForce GTX 580 (CC=2.0, 512 ядер, технология Fermi)
  • Операционная система Windows-7, 64-bit, CUDA 4.1, драйвер 296.10

Дополнительные условия

Для демонстрации результатов параллельных вычислений на видеокарте есть следующие варианты: данные перед вычислениями могут находиться в памяти компьютера или в памяти видеокарты. Такая постановка задачи позволяет оценить потенциал именно видеокарты, без учёта влияния других устройств, связанных с операциями ввода-вывода.

Вычисление гистограмм на видеокарте (исходные данные в памяти видеокарты)

При вычислении гистограммы (64-bin) для массива данных размером 143 МБайт получена производительность расчётов 110 ГБайт в секунду.

Для расчётов гистограммы (256-bin) для массива данных размером 143 МБайт получена производительность 74 ГБайт в секунду.

Для видеокарт, у которых cc=2.0 (Fermi) скорость расчёта гистограмм не зависит от исходных данных. При этом существенное ограничение состоит в том, что размер данных должен быть кратен 14 кБ. Для видеокарт, у которых сс=1.2 или 1.3, скорость расчёта гистограмм намного ниже и она сильно зависит от исходных данных. В этом случае при расчёте гистограммы для абсолютно белого изображения скорость упадёт значительно из-за конфликтов при записи промежуточных результатов.

Сжатие 8-битных изображений по алгоритму Baseline JPEG (исходные данные в памяти ПК)

При компрессии 8-битного изображения с разрешением 7216 х 5408 по алгоритму Baseline JPEG со сжатием примерно в 13 раз с учётом копирований, получена производительность кодирования 3,4 ГБайт в секунду. Декомпрессия этого изображения с учётом копирований, может выполняться с производительностью 3,2 ГБайт в секунду. В настоящее время наш быстрый кодек JPEG может работать с 8-битными изображениями, разрешение которых не превышает 12000 x 12000.

Декодирование 8-битных изображений по алгоритму Baseline JPEG (исходные данные в памяти ПК)

Мы получили предварительные результаты для декодирования 8-битных изображений с разрешением более 4 мегапекселов. Производительность декомпрессии равна 3,2 ГБайт в секунду с учётом загрузки и выгрузки кадров в видеокарту (исходное изображение было сжато в 13 раз).

Выводы

Сравнений с аналогичными программами на CPU мы не проводим, поскольку разница более чем очевидна. Насколько нам известно, лучшие коммерческие решения с похожим функционалом могуть сжать не более пятисот мегабайт в секунду при аналогичных условиях. Производительность наших систем на GPGPU даже выше по сравнению с аппаратными решениями на базе FPGA. Подробнее эта тема освещена с описании реализации алгоритма DCT, а также кодера и декодера JPEG (для гистограмм мы не нашли данных для сравнения).

Rambler's Top100 НПО Астек - официальный дилер "Фаствидео"
Москва, 129344, ул. Искры 17А, корп. 3, тел: +7 (495)-542-04-49
высокоскоростные камеры