Nvidia cuda: тесты приложений на gpu для массового рынка

Nvidia cuda: тесты приложений на gpu для массового рынка

SETI@home

Если вы наблюдали фильм Контакт/Contact, то точно понимаете сущность программы SETI. Программа Search for Extraterrestrial Intelligence/Поиск внеземных цивилизаций применяет радиоастрономию для поиска радиосигналов из космоса, каковые, по собственной природе, возможно было бы отнести к разумным существам за пределами Почвы. Данные планируют в широкой полосе 2,5 МГц и отсылаются на главную базу SETI@home в Беркли.

Как продемонстрировано в фильме, большинство радиоданных (если не вся) представляет собой случайный шум, подобно статическому шуму на фоне реликтового излучения. Программа SETI@home делает анализ этих данных в отыскивании неслучайных фрагментов, таких как пульсирующие всплески и сигналы амплитуды. Чем громадная вычислительная мощность с плавающей запятой будет доступна для обработки данных, тем шире возможно забрать спектр и тем более чувствительным будет анализ.

Как раз тут параллелизм многопоточной обработки и CUDA оправдывают себя.

Сотрудники в Беркли разделяют эти на одночастотные рабочие блоки по 0,35 Мбайт либо 107 секунд. Сервер SETI@home после этого распределяет работу по домашним компьютерам, на которых, в большинстве случаев, трудится клиент SETI@home в качестве скринсейвера. В то время, когда проект SETI@home был запущен в мае 1999 года, его целью было сочетание вычислительной мощности 100 000 компьютеров.

Сейчас в проекте участвуют более 300 000 активных компьютеров из 210 государств.

В тестах SETI@home необходимо применять одинаковый рабочий блок, для получения надёжного результата. Мы нашли это лишь через пара часов тестов, в то время, когда результаты были неповторяющимися. Лаборатория nVidia намерено подготовила пакетные файлы и скрипт для тестирования SETI@home. Тест необходимо запускать из командной строчка, а не через прекрасный графический интерфейс. nVidia выслала нам все нужные файлы, по окончании чего картина производительности прояснилась достаточно чётко.

Если вы пологали, что кодирование видео отнимает больше всего времени, взглянуть на программу поиска внеземных цивилизаций. Несложная обработка одного 373-кбайт файла на современном двуядерном CPU заняла полтора часа времени, другими словами соотношение количества информации ко времени обработки составило приблизительно 1:50. По умолчанию тест SETI@home применяет один рабочий блок на процессор. На двуядерном чипе каждое ядро будет делать 50% нагрузки; на четырёхъядерном — 25 процентов. Но нам хотелось взглянуть полную загрузку, исходя из этого мы применяли команду benchcpu.bat 2, которая запускает два рабочих блока на процессор, всецело нагружая оба ядра.

Как вы имеете возможность подметить, время вычисления при применении лишь CPU на 9800 GTX чуть меньше, чем на 9600 GT. Но отличие находится в пределах погрешности. Дополнительные прогоны продемонстрировали мало отличающиеся результаты, исходя из этого, в среднем, они будут однообразные.

По итогам возможно сделать два ответственных вывода. Во-первых, обратите внимание на значительное понижение времени вычисления, которая даёт разработка CUDA если сравнивать с обработкой лишь на CPU, в то время, когда 9600 GT потребовалось 17% времени, а 9800 GTX — всего 11%. Весьма интересно, сколько лет пригодится, дабы такое же понижение времени вычислений дала эволюция CPU?

Во-вторых, мы очевидно видим преимущества дополнительных потоковых процессоров 9800 GTX. 9800 GTX даёт на 50% лучшую производительность если сравнивать с 9600 GT в тестах с применением лишь GPU. Для маленькой отличия в цене прирост легко огромен.

Потому, что этот тест больше синтетический, мы не отслеживали нагрузку на CPU на протяжении теста GPU. Но в случае если вам весьма интересно, запуск теста SETI@home лишь на CPU привёл, как и следовало ожидать, к 100% нагрузке. Запуск теста на GPU привёл к нагрузке на CPU от 50% до 60%.

В случае если вам больше нравится искать лекарство от заболеваний, чем инопланетные цивилизации, то мы рекомендуем запустить клиента Folding@home. Если вы желаете совершить тесты Folding@home, то nVidia рекомендуем воспользоваться новой утилитой OpenMM, дешёвой тут.

направляться подчернуть, что проект SETI@home сейчас находится на грани закрытия. Радиотелескоп Аресибо/Aricebo, самый громадный радиотелескоп в мире (из применяющих одну апертуру), находится в Пуэрто-Рико и с 1999 года снабжает все сведенья для проекта SETI@home. Изучения на радиотелескопе проводятся Корнельским университетом, причём проект финансируется из различных источников, как частных, так и публичных. К сожалению, ограничения бюджета вынудили Национальный научный фонд США заявить о закрытии Аресибо в 2011 году, что, возможно, приведёт и к закрытию проекта SETI@home, если не будут отысканы средства.

CyberLink PowerDirector 7

В мире рабочих станций от CUDA смогут побеждать приложения визуализации, но в потребительском мире главным применением CUDA есть перекодирование. Если не считать клиентов Folding@home и SETI@home, все остальные потребительские применения CUDA включают монтаж видео либо перекодирование. В случае если побродить по сайту nVidia CUDA Zone, то возможно отыскать и другие проекты, дающие слово хорошее будущее для CUDA в регионах распознавания речи, цифровых совокупностей наблюдения, монтажа/микширования аудио и игр (достаточно взглянуть на UT3 PhysX mod pack с тремя ускоренными CUDA уровнями — Lighthouse, Tornado и HeatRay). Сейчас имеется лишь видео. Будем сохранять надежду, что мы можем экстраполировать полученные тестовые результаты на другие схожие приложения, ожидая их появление в будущем.

Будем сохранять надежду… CUDA — это не чудесная палочка, ускоряющая всё, что угодно. Кроме того в своеобразной области перекодирования лишь определённый тип операций, такие как компенсация перемещения и дискретное косинусное преобразование (DCT) прекрасно подвергаются распараллеливанию. Многие функции параллельно запустить не окажется. Разработчики не смогут и написать код для CUDA, взяв 20x прирост производительности через две либо 20 дней. Приложение должно содержать функции, каковые смогут применять параллельную обработку так, как её поддерживает архитектура CUDA.

Программа CyberLink PowerDirector 7 стала первой, применяющей библиотеку CUDA Video Encoder Library. На сегодня библиотека поддерживает лишь кодирование H.264 — принципиальный момент, как мы скоро заметим. Превосходство кодека H.264 отмечают многие, потому, что он легко обходит тот же MPEG-2 по качеству и эффективности картины.

Но за это приходится расплачиваться тем, что декодирование и кодирование посредством H.264 требует значительной вычислительной мощности. Как раз исходя из этого встроенные графические ядра до последнего времени не имели аппаратной помощи H.264. Нагрузка декодирования на протяжении воспроизведения соответствующе закодированных дисков Blu-ray ложилась на CPU, что в той либо другой степени нагружало совокупность. Сейчас вас вряд ли поразит, что перекодирование рипа Blu-ray в формат MPEG-4/H.264 может занять весь день.

Само собой разумеется, формат H.264 нужен лишь в том случае, если вы сможете воспроизводить файлы в формате MPEG-4/H.264, к примеру, на iPod либо на PC. Производители подразумевают, что вы станете применять кодирование H.264 для незащищённых домашних фильмов, и кое-какие пользователи уже перешли на данный формат. Но, в любом случае, уже многие обзавелись телевизорами большого разрешения, так что дни ветхих хороших DVD сочтены.

И способов воспроизведения HD-видео будет всё больше. В случае если сейчас вам подобный перекодировщик не так и нужен, он может потребоваться на следующий день. В будущем кодек H.264 будет играться значимую роль.

PowerDirector 7 включает 10 эффектов, каковые смогут применять ускорение CUDA на протяжении рендеринга.

Если вы новичок в области монтажа, то кратко поясним сущность этого процесса: вы берёте исходный видеоролик, располагаете его на временной шкале монтажа, додаёте эффекты (размытие, обрезка, удаление шума и т.д.), по окончании чего записываете проект в нужном формате. В итоге вы получите обработанный ролик в одном файле. Звучит легко, но наложение эффектов на видео требует важной вычислительной мощности.

В действительности, монтаж традиционно являлся уделом специальных студий, поскольку на рендеринг видео на потребительских совокупностях смогут уйти многие часы, что приводит к в эффективности всего процесса. Размер файлов может изменяться, но кроме того сейчас монтаж видео дома есть весьма ресурсоёмким занятием.

Время экспорта, рендеринг посредством GPU.

Время экспорта, рендеринг без помощи GPU.

Нагрузка на CPU, рендеринг посредством GPU.

Нагрузка на CPU, рендеринг без помощи GPU.

Взяв для тестов 30-секундный тестовый ролик 720×480 MPEG-2, мы добавили к нему эффект Pen Ink, для вычисления которого употребляется CUDA, по окончании чего сохранили ролик в формате MPEG-2. С активной разработкой CUDA время рендеринга на обеих видеоплатах выяснилось менее половины от времени, в то время, когда рендеринг выполнялся всецело на CPU. Но тут направляться отметить две особенности.

В отличие от SETI@home мы замечаем мизерное преимущество (сводящееся к нулю) от дополнительных потоковых процессоров 9800 GTX. Помимо этого, применение CUDA смогло снизить нагрузку на CPU всего на 3-5%, другими словами процессор так же, как и прежде максимально нагружен рендерингом. В данном тесте разработка CUDA помогла ускорить процесс рендеринга, но CPU был нагружен так, что запуск вторых приложений сейчас смысла всё равняется не имеет.

Время экспорта, перекодирование в MPEG-2 посредством GPU.

Время экспорта, перекодирование в MPEG-2 без помощи GPU.

Нагрузка на CPU, перекодирование в MPEG-2 посредством GPU.

Нагрузка на CPU, перекодирование в MPEG-2 без помощи GPU.

Во втором тесте мы забрали большой ролик 1080 H.264 из передачи HDNet Get Out!, что мы после этого экспортировали посредством PowerDirector в форматы MPEG-2, AVCHD 720 x 480 и AVCHD 1920 x 1080. Снова же, мы замечаем мизерную отличие в производительности между 9600 GT и 9800 GTX. Помимо этого, обратите внимание, экспорт в формат MPEG-2 не даёт отличия, используем мы GPU либо нет, потому, что библиотека nVidia поддерживает лишь кодирование H.264, а не MPEG-2.

Вывод таков: в случае если перекодируете фильмы в формат MPEG-2 для просмотра на устройстве, которое не поддерживает H.264, то разработка CUDA будет ненужна.

Время экспорта, перекодирование в AVCHD 720 x 480 посредством GPU.

Время экспорта, перекодирование в AVCHD 720 x 480 без помощи GPU.

Нагрузка на CPU, перекодирование в AVCHD 720 x 480 посредством GPU.

Нагрузка на CPU, перекодирование в AVCHD 720 x 480 без помощи GPU.

В этом случае CUDA даёт 100% улучшение при перекодировании в формат с 480 строками и практически 300% понижение времени при формата с 1080 строками. А сейчас увеличьте исходный ролик до полнометражного фильма — и вы осознаете, сколько времени может сэкономить CUDA.

Время экспорта, перекодирование в AVCHD 1920 x 1080 посредством GPU.

Время экспорта, перекодирование в AVCHD 1920 x 1080 без помощи GPU.

Нагрузка на CPU, перекодирование в AVCHD 1920 x 1080 посредством GPU.

Нагрузка на CPU, перекодирование в AVCHD 1920 x 1080 без помощи GPU.

Случайная статья:

Ускорение GPU в видеоредакторе Sony Vegas — работает ли?


Похожие статьи:

Комментирование и размещение ссылок запрещено.

Обсуждение закрыто.