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

В современной вычислительной технике аппаратное ускорение используется повсеместно. Оно стало таким же привычным и естественным, как расширение процессорных команд MMX. А ведь так было далеко не всегда. Первые робкие шаги разработчиков и программистов по продвижению новых возможностей, неоднозначная оценка компьютерного сообщества, а затем - признание…все это было.

Теперь же аппаратное ускорение присутствует почти в каждом устройстве и программе. Подчас, даже там, где его и искать никто не будет. Хотите видеокарту, поддерживающую аппаратное ускорение? Пожалуйста! А звуковой адаптер? Да сколько угодно! Ну а сетевая карта? И она обладает возможностью разгружать центральный процессор от рутинной работы с пакетами данных!

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

Что же это за ускорение такое? На самом деле все просто. Согласно общей схеме устройства компьютера, все математические расчеты выполняет центральный процессор (CPU). Так, команда посчитать сумму «2+2» программой преобразуется в машинные коды и передается ему на обработку. Но так как процессор каждую секунду выполняет огромное количество вычислений, то с добавлением новой задачи его производительность немного снижается – ядро загружается. Разработчики давно стремились увеличить скорость выполнения расчетов, не увеличивая мощность CPU, и внедрение вспомогательных аппаратных возможностей дало такую возможность.

Представьте видеокарту десятилетней давности. Она представляла собой логику и видеопамять. Любая информация, так или иначе связанная с изображением, записывалась с массив ячеек памяти и определенным образом преобразовывалась в сигнал, «понятный» схемам монитора.

Любое изменение изображения, даже банальное перемещение точки по цветному фону – результат работы центрального процессора. Он рассчитывал координаты, смещение и цикл повторялся. Если же точка не одна, то количество расчетов возрастает. Кроме того, процессору и без того есть «чем заняться». Результат – замедление работы.
Для решения этого на видеокарте стали размещать специализированный процессор, который занимался только графикой, что позволило освободить ресурсы универсального CPU. Подобный метод стал применяться для работы со звуком - аудиочипы «научились» ускорять некоторые функции; сетью – адаптеры обзавелись специализированным процессором и пр.

Отключить или включить аппаратное ускорение можно в приложении, но только если такая возможность предусмотрена программистом. К примеру, управлять ускорением графики в Windows XP можно следующим образом: необходимо вызвать свойства рабочего стола и проследовать по пути «Параметры – Дополнительно – Диагностика». Бегунок, находящийся в этом окне, позволяет полностью или частично отключить аппаратное ускорение во всей системе. Иногда это необходимо для решения проблем с совместимостью.

Комментарии