Библиотека, читать онлайн, скачать книги txt

БОЛЬШАЯ БИБЛИОТЕКА

МЕЧТА ЛЮБОГО


Графическая карта с аппаратным ускорением

Адрес этой статьи в Интернете: Даже если все они начинаются с "1. Но когда ваше время - это деньги, скорость работы приложений Creative Suite может означать, заработали вы или нет. И даже если мы говорим про обработку домашнего видео с помощью Premiere и After Effects, кто хотел бы тратить в ожидании результата часы вместо минут?

Наш опыт показал, что это не преувеличение. По мере того как Adobe встраивает поддержку обработки данных на GPU в приложениях Creative Suite и оптимизирует их для многопочных вычислений, они всё более полно используют ресурсы современных ПК.

Или, говоря проще, Adobe CS5 на сегодняшнем компьютере быстрее Adobe CS2, работающего на машине пятилетней давности. Очевидно, не правда ли? Поэтому мы будем оценивать полезность более вероятных изменений - апгрейда компонентов рабочей станции, в том числе и апгрейда Adobe CS4 на Adobe CS5. В конце концов, именно переход с предыдущей версии на Adobe CS5 является самым значительным шагом, предпринятым Adobe в последние годы. Помимо просто увеличения функциональности каждого приложения, именно поддержка битных операционных систем и операций позволит приложениям выигрывать от использования больших объёмов памяти.

Ну и анонсированная поддержка вычислений на графических чипах - полезная функция, которую, пока что, мы редко встречаем в офисных и мультимедиа редакторах. Итак, вот наш сценарий. Допустим, у вас есть Adobe CS4, и вы рассматриваете переход на Adobe CS5 как способ повысить эффективность работы, сократив время ожидания. Мы протестируем три основных способа ускорения обработки: Переход с Adobe CS4 на Adobe CS5.

Предоставляет преимущества перехода с битного на битный код и адресацию более чем 4 гигабайт оперативной памяти; Увеличение количества потоков на процессоре. Как благодаря увеличению количества физических ядер, так и благодаря использованию технологии Hyper-Threading HT от Intel; Использование CUDA. На данный момент, поддержка аппаратного ускорения с помощью вычислительной мощности графических процессоров только начинает распространяться за пределы игровых приложений.

Но Adobe уже начала включать поддержку платформы nVidia CUDA. Может ли только переход с Adobe CS4 на Adobe CS5 принести достаточный эффект, чтобы не потребовался апгрейд системы?

Ускорение Adobe Adobe CS5 движком Mercury Playback Engine Мы протестировали три приложения из набора Creative Suite: After Effects, Photoshop и Premiere Pro, хотя самые значительные изменения коснулись Premiere Pro CS5 - приложение получило новый механизм воспроизведения Mercury Playback Engine, который основан на битном, оптимизированном для многопоточной обработки коде, и готов использовать ресурсы видеокарт nVidia технология CUDA для аппаратного ускорения.

Да, пока что движок Mercury влияет не на всё приложение, но ускоряются многие эффекты и операции. Например, ускорение будет в новом фильтре Ultra keyer для хромакеинга, эффекте proc amp, фильтре размытия по Гауссу Gaussian blur , в фильтре размытия краёв edge feathering , flips, фильтре резкости sharpening и функциях цветокоррекции - то есть в большинство популярных эффектов использован движок Mercury.

Как и cross dissolve, dip to black, и dip to white из арсенала эффекта переходов. Adobe обещает, что обработка крупных проектов может ускориться в 10 раз благодаря Mercury.

Хотя обещания Adobe кажутся нам более правдоподобными, некоторые результаты тестов производительности при вычислении на графических процессорах GPGPU , которые мы получали ранее, позволяют допустить даже такую прибавку в скорости. В это мы cможем поверить, только если нас убедят объективные результаты тестов.

Пока что, мы ожидаем прироста производительности благодаря CUDA , но не чудесного снижения нагрузки на центральный процессор. Включить Mercury Playback Engine довольно просто. В закладке Video Rendering and Playback, найдите опцию Renderer и выберите режим работы Mercury.

Quadro FX ; Quadro FX ; Quadro FX ; Quadro CX; GeForce GTX Из этого списка становится ясно, что ограничения заложены в драйверах, а не в самих видеокартах.

Единственная существенная разница между GeForce GTX и GeForce GTX состоит в том, что первая производится по 55 нм, а вторая по 65 нм техпроцессу. Гипотеза об искусственном ограничении совместимости только с дорогим решением GeForce GTX подтверждается тем, что GTX была выпущена в начале , то есть за год до Adobe CS5.

Как вы помните, GeForce GTX и GeForce поступили в продажу только в апреле, то есть почти одновременно с началом продаж Adobe CS5. Скорее всего, Adobe не хватило времени для тестов совместимости й серии GTX с Adobe CS5, и поэтому список поддерживаемых игровых карт был ограничен единственной карточкой предыдущего поколения, выполненной по 55 нм техпроцессу. Кроме нее поддерживались только Quadro, которые предназначены для профессиональных пользователей и приносят nVidia значительно больше дохода за каждый проданный экземпляр.

Однако, с тех пор появился патч 5. Прошло менее месяца с момента выпуска Adobe CS5 до момента появления в сети руководства по снятию ограничения совместимости, позволяющего использовать аппаратное ускорение в Windows практически с любой картой GeForce с поддержкой CUDA. Мы проверили его действенность на редакционных GeForce GTX и GeForce , и способ замечательно сработал в обоих случаях.

Чтобы сэкономить вам время, мы приводим его описание: Найдите у себя в системе файл GPUsniffer. Скорее всего, он находится по адресу C: Теперь через пункт "Выполнить" меню "Пуск" запустите командой CMD консоль и в ней запустите GPUSniffer. Вы увидите название вашей графической карты в пункте "CUDA device details". Скопируйте его в точности, включая символы, разделители и пробелы.

Запустите "Блокнот" с администраторскими правами: Добавьте название вашей видеокарты в короткий список поддерживаемых карт nVidia и сохраните файл в том же месте с тем же названием.

Правым щелчком мыши на рабочем столе вызовите меню и выберите nVidia Control Panel. В пункте Manage 3D Settings, найдите закладку Program Settings. В выпадающем списке выберите Adobe Premiere CS4. Да, даже если у вас установлен Adobe CS5 - либо драйвер не отличает их, либо это опечатка, но так или иначе: На момент написания статьи nVidia расширила список поддерживаемых Adobe CS5 настольных графических карт: Quadro ; Quadro ; Quadro FX ; Quadro FX ; Quadro FX Mac; Quadro FX ; GeForce GTX ; GeForce GTX Мы решили проводить тесты с включенными двумя, четырьмя и всеми шестью ядрами.

В каждом случае мы проводили тесты с задействованной и отключенной технологией Hyper-Threading, то есть в результате у нас получилось шесть вариантов многопоточности. Мы считаем, что это даст возможность оценить полезность использования технологии Hyper-Threading при работе с Adobe CS5. Мы предполагаем, что большинство пользователей Creative Suite вряд ли станут собирать рабочую станцию на основе Core i3 и поэтому оставили функцию Turbo Boost включенной во всех тестах.

Мы измеряли степень загрузки процессора через десять секунд после начала теста, и не менее двух минут в течение теста. Максимальные и минимальные значения загрузки мы учитывали только в том случае, если они повторялись хотя бы дважды.

Кроме того, использование в тестовом стенде 12 ГБайт оперативной памяти важно потому, что одной из основных причин перехода с Adobe CS4 на Adobe CS5 является возможность использовать более чем 4 ГБайт оперативной памяти благодаря битной адресации. Во время тестов Adobe CS4 в системе также стояло 12 ГБайт памяти, но приложения обращались только к 4 гигабайтам из них.

Это несколько усложняет прямое сравнение эффективности приложений, но мы решили, что важнее отразить реалистичный сценарий. Если вы собираетесь потратиться на покупку Adobe CS5, то, скорее всего, вы сможете позволить себе увеличить объём оперативной памяти, и трёхканальные 12 ГБайт наборы DDR3 - самые привлекательные в сегменте высокопроизводительных систем.

Мы долго выбирали, какие жёсткие диски использовать. Окончательная конфигурация выглядит так: Ускорение After Effects Adobe CS4 Первой задачей этой статьи было продолжить тесты с того места, на котором мы остановились в статье о процессорах Intel серии Xeon В ней мы начали с 12 потоков вычисления на процессоре архитектуры Gulftown и закончили тестированием 24 потоков на паре Xeon X Неожиданно обнаружилось, что скорость обработки данных падала с ростом производительности системы.

В результате - рост обращений к виртуальной памяти, находящейся на твердотельном носителе, быстром, конечно, но несравненно более медленном, чем трехканальная память DDR3. В таком режиме он достаточно точно представляет вычислительные мощности таких процессоров, как Athlon II от AMD.

В той статье мы специально включили функцию мультипоточных вычислений в After Effects Adobe CS5 - так скорость обработки была наивысшей.

Когда она задействована, After Effects обрабатывает разные кадры отдельными ядрами процессора. Без неё все ядра вместе обрабатывают каждый отдельный кадр от начала до конца. Как вы видите, After Effects Adobe CS4 явно не нравится Hyper-Threading. Во всех наших тестах, когда мультипоточность и HT были выключены, After Effects загружал процессор на десять-двадцать с чем-то процентов, но все чётные потоки вычислений, то есть те, которые работали на логических ядрах, созданных HT, были едва задействованы.

Если были задействованы только два физических ядра то есть 4 логических , чётные потоки были загружены чуть больше, но по-прежнему, гораздо слабее, чем при включенной функции многопоточности в приложении. Как соотнести загрузку процессора с практической эффективностью? Данные дают однозначный ответ: After Effects Adobe CS4 гораздо эффективнее справляется с задачами, если функция Hyper-Threading отключена, иногда до двух раз эффективнее.

Это значит что, оптимальным способом Adobe CS4 будет работать при отключенном HT и включенным многопоточным вычислением. За исключением тех случаев, когда вы работаете в каком-то другом приложении, пока AE производит обработку.

Так что многопоточные вычисления должны быть включены в любом случае. А что насчет выигрыша от дополнительных ядер? Без HT мы можем наблюдать довольно скромный прирост по мере увеличения потоков обработки. Например, мы не наблюдали практически никакого прироста от 6 включенных ядер по сравнению с четырьмя. Просто After Effects Adobe CS4 настолько плохо оптимизирован для Hyper-Threading. Ускорение After Effects Adobe CS5 Вспомните, лучшее время, за которое After Effects Adobe CS4 выполнил наш тест, составило 2: При этом процессор был загружен почти полностью.

В After Effects Adobe CS5 такое время - едва ли ни наихудший результат в нашем тесте разница между 2: И, что интересно, загрузка процессора находилась в пределах процентов.

Как видно, Adobe CS5 не имеет проблем Adobe CS4 при работе с Hyper-Threading. Очевидно, что HT приносит гораздо больше пользы, когда в системе немного ядер, но главное, нет никакого замедления работы.

И странные скачки производительности при включенных HT и поддержке многопоточности тоже побеждены. Скорее всего, владельцы двухьядерных процессоров Intel не побегут покупать новый Adobe CS5, потому что выигрыш от использования Hyper-Threading не слишком значителен.

Да, он есть, но если вы хотите поднять производительность системы на заметную величину, необходима замена процессора на другой, с большим количеством ядер. Странности становятся заметны при изучении графиков загруженности процессора. В каждом тесте наблюдалась одинаковая картина: Это напомнило нам историю о зайце и черепахе, "Я самый быстрый, у меня 12 потоков параллельных вычислений, так что я не буду слишком уж напрягаться".

Наше первое предположение состояло в том, что повторилась ситуация, описанная в предыдущей статье, всё больше ядер работают со всё меньшим в расчете на каждое объемом оперативной памяти, даже не смотря на то, что мы увеличили ее объем с 4 до 12 доступных ГБайт. Однако мы получили сообщение от сотрудника отдела технического маркетинга nVidia Шона Килбрайда, с описанием причин этого явления: Кодирование видеопотока состоит из большого количества последовательных операций, и вам нужен результат одного действия, прежде чем вы сможете начать следующее.

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

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

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

Мы не смогли протестировать эффект от аппаратного ускорения CUDA , потому что Adobe пока что не встроил его поддержку в After Effects. В него встроена поддержка ускорения OpenGL, как и во все приложения CS, но это не то же самое, что поддержка вычислений на графическом процессоре, которую мы хотели бы протестировать. Ускорение Photoshop Adobe CS5: И естественным вопросом является, удалось ли этому приложению ещё больше масштабироваться с появлением ещё более многоядерных процессоров.

Ещё мы решили проверить, какой эффект на работу окажет включение или отключение ускорения OpenGL в настройках видеокарты. Это конечно несколько выпадает из общего направления тестирования, но всё же показывает практическое влияние железа в деле оптимизации Adobe Creative Suite и, следовательно, скорости и удобства работы. Кроме того, этот тест ответит на вопрос некоторых энтузиастов: По нашим расчетам, эта операция потребует почти весь объём оперативной памяти, но не превысит его и не потребует обращений к файлу подкачки.

Затем мы выполнили операцию "поворот" на 45 градусов с получившимся изображением. Значения загрузки процессора, приведенные ниже, повторились в этих двух тестах и являются вполне показательными. Результаты и методика этого теста не совсем похожа на часто встречающиеся в жизни задачи, но точно отражает их характер.

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

С другой стороны, разрешение сенсоров фотоаппаров постоянно растёт, размеры изображений увеличиваются, в Photoshop обрабатывают не только сами фото, но и их интерполированные варианты для печати на огромный формат. В ситуации, похожей на тест для оценки влияния HT и поддержки многопотоковых вычислений на скорость обработки в After Effects Adobe CS4, можно заметить, что включение аппаратного ускорения OpenGL при отключенном Hyper-Threading несколько замедляет вычисления.

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

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

Только на двухъядерном процессоре Photoshop использует ресурсы почти на полную катушку. CUDA К громадному сожалению, Adobe Photoshop CS5, как и его предшественник, не поддерживает CUDA! Мы уже решили, что оказываемся в той же ситуации, что и с After Effects Но потом вспомнили, что CUDA умеют использовать некоторые плагины.

Мы выбрали для тестов Beauty Box Photo от Digital Anarchy и не разочаровались. Результат работы инструмента сглаживания кожи выглядит незаметно, но омолаживает людей на фотографии - и всего в несколько движений мыши.

Неудивительно, что это требует довольно серьезных объемов обработки. Мы решили загрузить Photoshop настолько, насколько это вообще возможно - мы использовали этот инструмент на портрете размером 29 x 14 пикселей.

Мы уже привыкли к результатам, которые способно показать ускорение с помощью CUDA при грамотном внедрении поддержки GPGPU в код , но каждый раз они продолжают нас радовать. Но после включения CUDA все эти проценты не имеют никакого значения. Три минуты, безотносительно количества потоков обработки.

Без CUDA лучший результат - 12 минут. Без задействованного CUDA , загрузка центрального процессора остается высокой, лишь немного сокращаясь с увеличением активных ядер. Hyper-Threading несколько вредит скорости обработки, но снижает среднюю загрузку процессора и освобождает немного ресурсов. С задействованным ускорением CUDA , скорость выполнения задания не отличается, но зато загрузка процессора объясняет, что происходит на самом деле.

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

Что соответствует, например, ситуации активной работы параллельно с обработкой нескольких изображений "пакетом" в фоновом режиме. Нам не известно о существовании простого способа обойти ограничения совместимости, в отличие от Adobe CS5. Ускорение Premiere Pro Adobe CS4 Мы хотели как можно более полно использовать данные, полученные при подготовке статьи о многопроцессорности, так что мы применяли не только тестовый набор задач для After Effects, но и соответствующие задачи для Premiere Pro.

Частью тестирования являлось конвертация ролика со стандартной для Blu-ray частотой кадров Мы отмечали время, потребовавшееся в обоих случаях на обработку и время экспорта в Adobe Media Encoder AME , для оценки скорости двух самых востребованных операций обработки видео. И то, что наши результаты отличаются от результатов полученных в предыдущих исследованиях влияния железа на пакеты Adobe менее чем на 20 секунд, только подтверждает их правильность и воспроизводимость опыта.

В сценарии использования рабочей станции, в предыдущих статьях, мы не зарегистрировали значительного преимущества от перехода с Intel Core i7 на Intel Xeon. Используя в тестах только Core i7 и изменяя количество активных ядер, мы можем наблюдать пропорциональные и логичные изменения в производительности. Конечно польза от перехода с четырех на шесть ядер не так же велика как польза от перехода на четыре с двух, но полезность увеличения количества ядер несомненна. В случае с Premiere Pro Adobe CS4 шесть ядер от Intel , несомненно, являются оптимальным решением.

В отличие от других двух протестированных приложений Creative Suite, Premiere Pro эффективно использует каждый поток вычислений, физическое это ядро или виртуальное. Загрузка процессора остается высокой до тех пор, пока количество ядер не достигнет Ускорение Premiere Pro Adobe CS5 рендеринг Тест Premiere Pro Adobe CS5 является центровым для этой статьи, и поэтому мы копнём немного глубже.

Наконец, мы можем использовать новый Mercury Playback Engine от Adobe и увидеть его возможности в работе с поддержкой 64 бит, многопоточности и ускорением CUDA - всех их одновременно!

Для начала, давайте сравним разницу в скорости обработки между разными версиями приложения. Как вы помните, с задействованным Hyper-Threading, Adobe CS4 показывал время По странному совпадению, это почти соответствует временам Adobe CS5 - но с отключенным HT. А теперь о Mercury Playback Engine. Эффект от его использования просто поражает! Утверждения Adobe о росте скорости на порядок оказываются В конфигурации со всего двумя ядрами, Mercury и GeForce оказались способны показать время 1: Если включить все ядра, Mercury и Adobe CS5 способны выполнить то же задание за Мы не отразили здесь загрузку процессора, из-за её характера.

Эти числа, к сожалению, никак не объясняют происходящих процессов. Ускорение Premiere Pro Adobe CS5 Экспорт в AME Следите за числами: Результаты Adobe CS5 - Да, это прогресс, но мы все равно разочарованы. Это совсем не похоже на блестящую победу, которую мы наблюдали чуть раньше.

Переход с бит кода на 64, рост доступной памяти, удивительно быстрый механизм Mercury Playback Engine Всё ради роста скорости в два раза? Так что же, по сравнению с ростом скорости обработки в 10 раз рост в 2 незаметен? Давайте представим, что вы платите, по американским расценкам, больше долларов за час работы нанятого профессионала.

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

Так что окончательное заключение таково: Да, и если для вас важно работать во время экспорта проектов, то смотрите на график загрузки процессора. Вам потребуется 12 параллельных потоков вычислений, чтобы иметь возможность работать в другом приложении во время экспорта. Любые более слабые системы будут загружены практически полностью. Заключение Да, CUDA - не панацея. Как показали наши тесты, только в некоторых случаях поддержка CUDA и преимущества от её использования перевешивают все остальное.

В зависимости от того, предусмотрели ли разработчики приложений и плагинов возможность использования CUDA, это ускорение может помочь в наложении эффектов, кодировании видео, масштабировании, блендинге и других подобных операциях. В других областях, CUDA может оказаться бесполезной. Например, у вас есть видеозапись с разрешением x в формате WMV, которую нужно перекодировать в x MPEG-4 с помощью Premiere Pro.

В таком случае, графический процессор ничем вам не сможет помочь, все расчеты будет производить центральный процессор. А вот если вам нужно провести цветокоррекцию, регулировку яркости, добавить отбрасывание тени и свести в один канал и закодировать в клип MPEG-2 разрешением х для экспорта на DVD три клипа разрешением х, эффект от аппаратного ускорения может быть громадным. Если вы удваиваете частоту кадров с 30 до 60 путем их дублирования, CUDA вам ничем не поможет, а если воспользоваться механизмом "Tweening" инструмент Premiere, автоматически добавляющий и корректирующий кадр между двумя существующими , тогда ускорение CUDA может значительно сократить время доработки.

Если вы хотите пример, вот график скорости обработки тестовой задачи от nVidia для Premiere Pro Adobe CS5, "Paladin",которая использует больше инструментов и эффектов оптимизированных для CUDA: Мы уже приводили комментарий сотрудника nVidia , Шона Килбрайда, раньше в этой статье и хотим еще раз дать ему слово, потому что его помощь, в любое время дня и ночи, на протяжении нескольких недель, поразила нас и установила новый уровень терпения и вежливости для представителей вендоров.

Его участие сделало возможной эту статью. Его ответ на наш вопрос с подвохом, "Если в Adobe Premiere Pro CS5 есть функция прямого и последовательного экспорта, они делают одно и то же, но прямой работает быстрее, то зачем Adobe CS5 по-прежнему поддерживает последовательный экспорт?

Что такое аппаратное ускорение?

Мы готовы поспорить с этим утверждением, потому что согласно полученным данным загрузки процессора вы не сможете работать параллельно с обработкой в любом случае, за исключением ситуации, когда вас 12 потоков параллельных вычислений 6-ядерный процессор с Hyper-Threading , а приложение, в котором вы хотите работать довольно нетребовательно к ресурсам.

Но главный вопрос статьи: Отношение Adobe Photoshop CS5 к количеству физических ядер оказалось примерно таким же, но если ваш плагин поддерживает CUDA , то тогда только держитесь - обработка происходит молниеносно. И наконец, Premiere Pro ведет себя именно так, как мы ожидали.

Видеоредактор ускоряет свою работу от каждого добавленного ядра, выигрывает от использования Hyper-Threading, стал эффективнее Adobe CS4 и больше всех использует CUDA благодаря Mercury Playback Engine. Если вы работаете в Premiere Pro, каждый апгрейд имеет смысл. КОНЕЦ СТАТЬИ Координаты для связи с редакцией: Копирование и распространение информации, упомянутой на страницах THG.

По вопросам использования наших статей обращайтесь по электронной почте. Gigabyte X58A-UD7, LGA , BIOS F7. Thermalright Ultra eXtreme. Операционная система и системные драйверы. Microsoft Windows 7 Ultimate bit. CS4 и CS5; специально разработанный тест, проект SD качества, с тремя picture-in-picture вставками, источник в разрешении p. CS5; тестовое изображение 20K x 20K. Специально разработанный тест, перекодировка проекта Premiere Pro в H.



copyright © sport-planeta.pl