Апаратне прискорення – що це та як можна підвищити продуктивність ПК за його допомогою

Швидше за все ви бачили опцію «апаратного прискорення» при використанні різних додатківта пристроїв. Можливо, вам навіть знадобилося включити або вимкнути його для підвищення продуктивності або запобігання помилкам в одному з ваших улюблених програм, але ви, можливо, і не знали чому. У цій статті ми розповімо вам все, що вам потрібно знати про апаратне прискорення, і про те, чи можуть ваші програми використовувати його.

Апаратне прискорення - це термін, що використовується для опису задач, що завантажуються на інші девайси. За замовчуванням у більшості комп'ютерів та програм центральний процесор переважає в завантаженості, передусім, перед іншими апаратними засобами. Це цілком нормально, особливо, якщо у вас є потужний процесор. Інакше корисно використовувати інші компоненти вашої системи. Тоді відбувається активація функції. Ось кілька популярних прикладів використання:

  • за допомогою АУ можна використовувати звукові карти, щоб забезпечити високу якість та запис звуку;
  • графічні карти можна використовувати за допомогою апаратного прискорення графіки для забезпечення швидкого та якісного відображення мультимедіа.

Що таке апаратне прискорення у браузері? Одним словом, це здатність програми для перегляду інтернет-сторінок відображати їх вміст максимально швидко та якісно. Хоча апаратне прискорення може бути визначене як практично будь-яке завдання, яке вивантажується на те, що не є ЦП, графічні процесори та звукові карти , як правило, є найбільш популярними прикладами, що використовуються у вашому програмному забезпеченні. Тільки ваш процесор технічно здатний на все, що можуть зробити ці пристрої, особливо якщо він може похвалитися інтегрованою графікою (як це багато хто робить у наші дні), але, як правило, найкращий варіант – використання спеціалізованого обладнання.

Використання потужності графічного макета для відображення веб-контенту, що динамічно змінюється, тобто так званого апаратного прискорення, безсумнівно, є однією з найцікавіших новинок, що з'явилися в Firefox 4 і Internet Explorer 9. За словами розробників цих браузерів, використання графічного процесора дозволить домогтися безпрецедентної досі продуктивності, швидкої та плавної роботиінтернет-додатків із використанням сучасних технологій. У той же час це допоможе знизити навантаження на процесор, який меншою мірою здатний робити обчислення, пов'язані з обробкою графіки. Це безпосередньо позначиться на роботі всієї системи, а у випадку портативних комп'ютерів– також тривалість роботи без електроживлення. Microsoft додає покращення якості тексту та зображень, що відображаються на екрані та під час друку на сторінці. Окремою проблемоює використання графічного макета для рендерингу 3D-графіки за допомогою API WebGL.

Використання графічних процесорів у браузерах неможливо завжди, скрізь і кожному комп'ютері. Основні обмеження пов'язані з операційною системою: Наразібета-версії обох браузерів підтримують лише Windows Vista, 7 і 10. У випадку з Internet Explorer 9 він не зміниться навіть у фінальної версії, але Mozilla обіцяє впровадити рішення, які виконуються на інших платформах. Єдина система, пропущена обома виробниками – це Windows XP.

Чому може знадобитися вимкнути його

Ось випадки, коли ви, ймовірно, повинні вимкнути апаратне прискорення:

  • якщо ваш процесор дійсно потужний, а інші компоненти системи не вирізняються продуктивністю, прискорення може фактично виявитися неефективним у порівнянні з тим, щоб дозволити електроживленню піклуватися про ресурси ПК. Крім того, якщо ваші компоненти схильні до перегріву або будь-яким чином пошкоджені, інтенсивне використання апаратного прискорення може викликати проблеми, які ви не відчували б без нього;
  • Програмне забезпечення, призначене для використання апаратного забезпечення, не дуже добре працює або не може працювати так само стабільно, як при використанні тільки процесора.

Коли його потрібно використати

Звичайно, апаратне прискорення не таке вже й погано. Працюючи за призначенням воно насправді дуже ефективно. Ось деякі випадки, коли ви повинні увімкнути апаратне прискорення у своїх додатках:

  1. Якщо у вас є потужний, стабільний графічний процесор, включення апаратного прискорення дозволить вам використовувати його повною мірою у всіх підтримуваних програмах, а не тільки в іграх. У Chrome прискоренняапаратного забезпечення графічного процесора зазвичай забезпечує набагато більш плавний перегляд та споживання мультимедіа.
  2. У програмах редагування відео/рендерингу, таких як Sony Vegas(або потокових програм, таких як OBS), включення апаратного прискорення дозволяє використовувати спеціалізоване обладнання, розташоване на пристроях, що підтримуються, як правило, на графічному процесорі або CPU. (Наприклад, Intel QuickSync є доповненням до їх сучасних процесорів, призначених для швидкого рендерингу та кодування відео).

Як перевірити, чи увімкнено апаратне прискорення

На робочому столі правою кнопкою миші – Роздільна здатність екрана – Додаткові параметри – Діагностика – Змінити параметри. Якщо кнопка неактивна – апаратне прискорення увімкнено.

Для Windows 10 використання апаратного прискорення: Win+R – dxdiag – Екран – Прискорення DirectDraw, Прискорення Direct3D, Прискорення текстур AGP – всі 3 параметри мають бути у стані ВКЛ. В іншому випадку апаратне прискорення вимкнено.

Процедура активації апаратного прискорення

Як увімкнути апаратне прискорення на Windows 7? З якоїсь причини вам може знадобитися увімкнути апаратне прискорення, наприклад, для запуску емулятора Android у Visual Studio. Просто увійдіть на комп'ютер у свій BIOS (Налаштування - Оновлення та безпека - Відновлення). У розділі «Розширений запуск» натисніть кнопку «Перезавантажити зараз», і комп'ютер перезапуститься. Це також працює на Windows 10.

Після перезавантаження натисніть «Усунення несправностей» – «Додаткові параметри» – «Налаштування вбудованого програмного забезпечення UEFI» – «Перезавантаження».

Вам буде представлено користувальницький інтерфейс BIOS, перейдіть до розділу «Конфігурація». Просто перевірте, чи технологія віртуалізації, наприклад, прискорювач відеокарти « Віртуальна технологія Intel» або «Віртуалізація AMD-V» увімкнено. Потім перейдіть до заключного розділу «Вихід» та натисніть «Вийти та зберегти зміни». Тепер у вас апаратне прискорення.

Апаратне прискорення у Chrome. Що дає та як його включити?

Google Chrome дозволяє використовувати графічну карту для рендерингу та масштабування графіки на веб-сайтах. Це прискорює роботу браузера та вивантажує процесор. Дізнайтеся, як використати цю можливість!

Переваги увімкнення апаратного прискорення будуть відчуватися, зокрема, користувачами зі слабкішими комп'ютерами або одночасним використаннямкількох десятків вкладок. Щоб увімкнути цю функцію, введіть команду «about:flags» у адресному рядку.

Першим кроком є ​​включення опції прискореного компонування з використанням графічного процесора (Override software rendering list). Безпосередньо нижче – інше – 2D-процесор прискорюється з використанням графічного процесора (Accelerated 2D canvas), який також має бути увімкнений. Користувачі Chrome 11 не зможуть використовувати перший варіант – у цій версії браузера він увімкнений за замовчуванням.

Дещо нижче є ще одна функція – Початковий рендеринг веб-сайтів. Він також має бути включений. Останній крок – перезапустити браузер.

Як вимкнути апаратне прискорення

Ця функція, в основному, відноситься до використання компонентів ПК для виконання конкретної дії (зазвичай виконуваного програмним забезпеченням) якомога швидше. Це покликане зробити графіку на комп'ютері більш плавною та швидкою, вивантажуючи графічні функції рендерингу на відеокарті комп'ютера замість ПЗ та його центрального процесора(CPU). Ідея Hardware Acceleration полягає у прискоренні процесів відеообробки, забезпечуючи кращу продуктивність.

На першому етапі для рендерингу вмісту сторінки використовуються бібліотеки Direct2D та DirectWrite, завдяки чому досягаються більш гладкі краї тексту та векторної графіки. Також покращено продуктивність рендерингу звичайних елементів сторінки, таких як зображення, межі та фонові блоки. Крім того, якщо на сторінку вбудовано відео з використанням кодека H.264, можна також обробити відеокарту. На цьому етапі прискорення працює як в Internet Explorer 9, так і Firefox 4.

На цьому етапі браузер Microsoft використовує новий механізм декодування для стислих графічних файлів, який також підтримує формат TIFF та створений Microsoft JPEG XR. Останній має бути наступником формату JPEG, забезпечуючи найкраще співвідношення "зображення у файл". Більш складний алгоритм вимагає більшої обчислювальної потужностітому використання GPUдля цієї мети є ідеальним рішенням.

Складання сторінки або об'єднання її елементів виконується за допомогою Direct3D-бібліотек. Компонентні зображення (створені на попередньому етапі) зберігаються у пам'яті графічної картитому їх можна швидко зібрати в єдине ціле. Поки що тільки в Internet Explorer, у майбутньому також Firefox 4.

Створення отриманого зображення, тобто всього робочого стола із вікном браузера та його вмістом, виконується з використанням системного компонента Windows Vista та 7-Desktop Window Manager (DWM). Завдяки тому, що він використовує бібліотеки DirectX, він може безпосередньо використовувати вже наявну пам'ять зображень, яка представляє вміст сторінки та інтегрує його в робочий стіл без необхідності навантажувати ОЗУ (що відбувається, якщо браузер не використовує графічні бібліотеки).

Internet Explorer 9 також має новий механізм обробки сторінок для друку – XPS. Це не тільки дозволяє швидко застосовувати всі шари та створювати з них одне зображення, а й підвищує його якість. Наприклад, всі види діаграм виглядатимуть краще.

Як вимкнути апаратне прискорення у Windows 7? Незважаючи на те, що Windows не використовує цю можливість, її досить легко відключити самостійно. Деактивація Hardware Acceleration призведе до запуску програмного забезпечення у форматі рендерингу програм — вся графіка відображається програмами, а робота з графічного рендерингу передаватиметься на GPU.

Як вимкнути апаратне прискорення в Яндекс.Браузері? Необхідно зайти в налаштування, опуститися вниз сторінки, включити додаткові параметри. Потім знайти розділ Система та зняти галочку з «Використовувати апаратне прискорення, якщо це можливо». Після перезавантаження браузера зміни набудуть чинності.

Щоб вимкнути апаратне прискорення в Chrome, використовуйте інструкцію для браузера Яндекс – ідентичні налаштування. Якщо після перезавантаження браузера проблеми не зникнуть, спробуйте:

  • в адресному рядку введіть chrome://flags і натисніть Enter;
  • у списку налаштувань вимкніть «Апаратне прискорення для декодування відео» та перезапустіть програму.

Після перезавантаження проблеми із прискоренням зникнуть. Для вимкнення функції в опері також необхідно зайти в налаштування, вибрати додаткові параметри та в розділі система зняти прапорець із «Використовувати апаратне прискорення».

Щоб вимкнути прискорення флеш плеєра, відкрийте будь-яку програму flash, натисніть на неї правою кнопкою миші і зніміть прапорець з потрібної функції. Перезавантажте браузер.

Як вимкнути апаратне прискорення у Firefox

Далі ми пояснимо, як відключити апаратне прискорення в браузері Mozilla Firefox. Це може бути ефективним, наприклад, якщо у вас виникли проблеми з графічним контролером, що змушує браузер працювати нестабільно чи повільно, причому неправильно відображаються елементи сторінок, які ви відвідуєте.

Апаратне прискорення підтримується не всіма драйверами – у деяких випадках можуть виникнути проблеми із завантаженням елементів на сторінці. Тому, якщо ви виявите, що під час використання браузера сторінки завантажуються повільно, і виникають проблеми із запуском окремих сторінок, вимкніть апаратне прискорення. Це має вирішити усі проблеми.


Якщо проблема вирішена, це означає, що апаратна проблема призвела до несправності браузера.

Покажу, як прискорити планшет на Android. За замовчуванням планшет налаштований виробником не так на швидкість роботи, але в стабільну роботу, До того ж виробник часто встановлює в планшет багато своїх програм, які мало кому потрібні, але за це виробник отримує гроші з тих чиї програми він вшив у планшет.

1. Відключення системних служб та додатків

Заходимо в налаштування – диспетчер додатків. Проводимо пальцем праворуч наліво, щоб відкрити всі програми.

Перейшовши до всіх програм, ми побачимо список усіх програм, які встановлені на вашому планшеті.

Внизу списку відображаються всі вимкнені програми. Я відключив на своєму планшеті перегляд вулиць, синтезатор мови Google, яндекс кіноафіша, яндекс новини, яндекс пробки, яндекс таксі.

Також я відключив диспетчер додатків, карти, світовий час, мобільний друк, налаштування Google Partner, обмін даними через Wi-Fi Direct.

Вимкнув Play ігри, Play музика, Polaris Office 5, S Voice, Samsung apps, Samsung print Service.

Відключено на моєму планшеті також Google play книги, Google play фільми, Google play пошук, Google+, Hangouts.

Всі ці програми мені не потрібні і я ними не користуватимуся, але якщо вони включені, то вони будуть оновлюватися, займати місце, пропонувати мені свої послуги, візуально мені заважати своїм марним нагромадженням.

Ви також можете відключити у себе на планшеті програми, якими ви не користуєтесь.

Щоб вимкнути програму, натискаємо на неї в списку програм. І тут бачимо кнопку Зупинити, натиснувши яку програму зупинить свою роботу, але не відключиться. При перезавантаженні планшета воно знову розпочне свою роботу.

Не всі системні програми в планшеті можна вимкнути, деякі можна зупинити.

Покажу як вимкнути вбудовану програму на прикладі програми повідомлення.

Наприклад, додаток повідомлення, яке дозволяє надсилати та приймати смс з планшета можна зупинити та вимкнути, якщо ви не надсилаєте та не приймаєте смс зі свого планшета.

Натискаємо зупинити.

Видається сповіщення: Примусово зупинити. Примусове зупинення програми може призвести до помилок. Тобто додаток повідомлення зараз працює. Натискаємо так.

Програма повідомлення зупинена. Тепер відключаємо програму повідомлення. Натискаємо вимкнути.

Виходить попереджувальне питання: Вимкнути вбудовану програму?

Вимкнення вбудованих програм може спричинити помилки інших програм.

Натискаємо так.

Тепер програму повідомлення вимкнено.

У списку програм можна побачити, що його вимкнено.

Якщо вимкнена вбудована програма вам знову знадобиться, то її можна ввімкнути. Відкриваємо вимкнений додаток у списку програм і натискаємо увімкнути.

Вбудована програма повідомлення знову працює.

2. Зупинення працюючих додатків

Заходимо в налаштування – диспетчер додатків. Проводимо пальцем праворуч наліво, щоб відкрити список «виконується», у цьому списку відображені програми, які працюють в даний момент.

Допустимо зупинимо працюючий додаток на планшеті дитячий диктофон (ця програма дозволяє записувати звуки та голос, коли в дитячому режимі вона запущена).

Натискаємо зупинити, щоб зупинити роботу програми, щоб вивантажити програму з оперативної пам'яті(воно займає 2,5 Мб. оперативної пам'яті) та зупинити його фонову роботуяка також навантажує іноді процесор.

3. Увімкнення параметрів розробника

Заходимо в налаштування – параметри розробника.

Якщо у вас немає пункту параметри розробника, його можна включити.

Щоб увімкнути параметри розробника, заходимо в пункт про пристрій і натискаємо 7 разів на рядок номер складання, після цього у вас повинен з'явитися пункт параметри розробника.

У мене параметри розробника на планшеті вже є, тому коли я натискаю на номер збірки мені пишеться повідомлення: не потрібно, режим розробника вже включений.

4. Вимкнення анімації

Заходимо в налаштування - параметри розробника, знаходимо пункт масштабування анімації вікна і натискаємо на цей пункт.

Тепер натискаємо на анімацію вимкнена, щоб вимкнути анімацію переходу вікна, щоб не навантажувати відеопроцесор та процесор цією процедурою.

Також вимикаємо масштаб анімації переходу, шкала тривалості аніматора.

Також включаємо примусове оброблення GPU, щоб використовувати апаратне прискорення в 2D додатках. Таким чином, відеоприскорювач візьме на себе обробку графіки в 2D додатках і звільнить трохи процесор від цього завдання.

5. Заборонити фонові процеси.

Заходимо в налаштування – параметри розробника. Знаходимо пункт фонових процесів, за замовчуванням стоїть стандартне обмеження.

Натискаємо на пункт фонові процеси, щоб редагувати пункт і змінюємо фонові процеси нанівець фонових процесівЩоб додаток не на екрані і ми ним прямо зараз не користуємося, то воно фоново не працювало і не витрачало заряд і не навантажувало процесор своєю фоновою роботою.

Таким чином буде працювати тільки та програма, яка запущена в даний момент і на екрані і ніщо не буде фоново «з'їдати» ресурси планшета.

Ось відео урок на тему, як прискорити Android.

Вступ

Паралельно з виходом Windows 7 місяців тому виробники відеокарт представили багато моделей на нових GPU, після чого зайнялися вдосконаленням драйверів для своїх продуктів. Як нам здається, сьогодні пройшло достатньо часу, щоб вони змогли розібратися із найгострішими проблемами під свіжою операційною системою (які, чесно кажучи, були не такими критичними, як у разі появи Vista), а об'єктивні тести мають показати стан нової технології.

Звичайно, ми розуміємо, що сьогодні основна увага прикута до 3D-технологій, але ми вирішили повернутись до компоненту графіки, який сьогодні сприймається як належне – 2D-графіці. Причому не думайте, що ми просто вирішили додати пару тестів до нашого тестового пакету, піднявши проблеми, вирішені ще за часів, коли продуктивність RAMDAC давала істотну різницю. Але докладніше про це ми поговоримо трохи згодом.

Хоча більшість користувачів будуть цікавитись швидкістю відображення графічного інтерфейсу Windows (за яким Windows 7 отримала чимало похвал порівняно з Vista), ми виявили, що передбачуване "графічне оновлення" Windows 7 не таке свіже, як здається. У порівнянні з Windows XP (і навіть Vista) виробники графічних процесорів поки не провели повну оптимізацію 2D-графіки під Windows 7, принаймні, як показують дослідження нової реалізаціїдзвінків API GDI (Graphics Device Interface). Ми всі знаємо, що 2D-графіка складається не тільки із забавної палітри, оптичних ефектів переходів та анімованих меню з тінями; розробникам потрібно прискорювати відмальовування старих добрих пікселів, ліній, кривих, прямокутників, полігонів та всіляких графічних примітивів, як їх часто називають.

Важливе попереднє зауваження

Ми не хотіли давати статті якесь емоційне забарвлення, хоча прихильники "червоного" або "зеленого" таборів протиратимуть очі під час читання матеріалу. Оскільки ми самі не повірили у результати тестів, то витратили додатковий час на підготовку статті, щоб на користь усіх сторін результати були максимально об'єктивними та повторюваними. Ми також попрацювали над тим, щоб створити найбільш об'єктивну основу порівняння відеокарт між собою. Ми не хотіли вказувати пальцем у бік того чи іншого виробника: важливо розуміти, що ця стаття покликана допомогти тим користувачам, хто використовує комп'ютер не тільки для ігор, а й виконує на своїх ПК справжню роботу.

У цьому відношенні важливо розуміти, що сьогодні може бути дуже складно продуктивно працювати з 2D-графікою під Windows 7. Наприклад, коли ми використовували Radeon HD 5870 та останні драйвери, то з великими труднощами змогли вивести просту векторну графіку, прості або складні дизайни CAD або навіть грати в 2D-ігри з високою якістю графіки. Це не так критика, як спроба визначити межі проблеми, яку ми спробували проаналізувати, і зрозуміти проблему максимально глибоко.

Теорія та практика

Оскільки більшість користувачів навряд чи знають про вбудовані функції та поведінку 2D-прискорення під Windows XP або Windows 7, ми вирішили розбити нашу дуже глибоку статтю на дві частини. У першій частині ми розглянемо технічні деталі щодо 2D-графіки, щоб наші читачі змогли підготуватися до сприйняття другої частини. Ви не тільки зможете розібратися в наших тестах, але і краще їх інтерпретувати. Щоб полегшити наше тестування, ми навіть розробили власну невелику тестову програму (і відкрили до неї доступ, щоб усі зацікавлені користувачі змогли завантажити та використовувати програму самостійно – у другій частині статті). Наша мета полягала в тому, щоб зробити обидві частини статті максимально інформативними, доступними та повноцінними.

У наступному розділі ми розглянемо основи 2D графіки. Тим часом ми також вважаємо, що деякі основи в даній галузі нікому не завадять, вони можуть виявитися корисними для розуміння інших тем, а не лише наших тестів.

Windows: як усе починалося

Повернімося в 1985 рік. Цього року Михайло Горбачов став секретарем ЦК КПРС, "Амадей/Amadeus" отримав "Оскара" за кращий фільм, а Рональд Рейган був обраний на другий термін 40 президентом США. Мало хто помітив, але саме 1985 року було випущено операційну систему Microsoft Windows 1.0.


Windows із невеликою кількістю вікон – навіть без взаємного накладання різних областей. Натисніть на зображення для збільшення.

Ідея накласти віртуальний графічний інтерфейс на операційну систему з текстовим режимом навряд чи була такою революційною, причому навіть у 1985 році. Фактично, саме такий підхід різні компанії, включаючи Microsoft та Digital Research, використовували в той час, щоб розширити свою присутність на ринку та зробити технологію ПК більш доступною для більшої частини потенційних покупцівта користувачів. Ідея полягала в тому, щоб програми були досить дружні до користувачів, тобто навіть непрофесіонали у сфері ІТ могли працювати з ними без попереднього глибокого вивчення комп'ютера. Що цікаво, на відміну від навіть Windows 1.0, розрахована на багато користувачів ОС Digital Research GEM підтримувала накладання вікон вже в той час.



Тільки з версії Version 2 система Windows почала відповідати своїй назві. Натисніть на зображення для збільшення.

Якби в 1987 році не була представлена ​​операційна система Windows 2.0, де вже була підтримка безлічі вікон, що накладаються один на одного, то цілком можливо, що про Microsoft Windows сьогодні ніхто б і не знав. Фактично, Windows зобов'язана своїм виживанням довше за перші два роки після початкового оголошення тому, хто має і сьогодні величезний вплив у Microsoft - а саме Стіву Балмеру (Steve Ballmer). Його рекламу Windows 1.0 складно забути і сьогодні, оскільки він нескромно виставив ціну за Windows 1.0 на вражаючому рівні 99 доларів (немала сума для 1985 року), незважаючи на відсутність підтримки реальних вікон. Стів Балмер справді міг захопити глядача – його можна назвати генієм маркетингу. Подивіться самі.

Стів Балмер продає Windows.

З випуску версії 2.0 ОС Windows змогла давати (принаймні) еволюційні, хай не революційні зміни у наступних релізах. Фактично, революційна зміна виявилася в проблемах, які ми хотіли б підняти в Windows 7, найсвіжішому випуску компанії.

Остання версія виявилася саме тією, що порушує глибокі питання, що змусили нас звернутися до самого початку Windows. Причини тому прості та наочні. Завдяки нашому порівнянню техніки роботи з вікнами ми дізналися про існування двох сторін графічного інтерфейсу Windows: графічний інтерфейс користувача або GUI(ми не враховували налаштування з боку користувача, а зосередили увагу на базовому робочому столі та роботі з ним), включаючи роботу з вікнами, а також прості графічні функціїякі використовуються для створення настільного оточення. Фактично, відображення вмісту вікон та робота з ними є двома роздільними, нехай і пов'язаними, сферами Windows. Вигляд і відчуття від роботи з інтерфейсом Windows продовжили змінюватися і еволюціонувати, але прості графічні 2D-функції, що лежать під ним, залишалися напрочуд незмінними з часом.

Підковані читачі напевно знають про те, що інтерфейс користувача з вікнами вже не спирається на чисту 2D-графіку. Саме тому ми пояснимо нижче, що існує невеликий набір графічних команд 2D, які слід розглядати у світлі їх відображення на фізичному дисплеї, у більш-менш тривимірному вигляді.

Обмеження 2D: один простір з багатьма вікнами


Все, що вам потрібно – висота та ширина.

Якщо ви подивитеся на відображення у будь-якому вікні, то вам знадобляться лише дві координати: X та Y, тобто ширина та висота. Чого бракує? Будь-яка інформація про глибину.

У Windows графіка 2D відображається через GDI (Graphics Device Interface). Цей інтерфейспідтримує всі мови програмування високого рівняі містить всі важливі графічні функції, які необхідні для рендерингу графічних об'єктів 2D. Пізніші покращення, такі як GDI+ та Direct2D, не відіграють особливої ​​ролі, оскільки GDI був (і залишається) найважливішим інструментом для графічного виведення 2D у додатку. Критично важливі функціївиведення пікселів, ліній, кривих, полігонів, прямокутників, еліпсів тощо – всі вони спочатку прораховувалися на CPU. Завдяки розвитку відеокарт, останнє покоління "заліза" забезпечує більш швидкі 2D-розрахунки та рендеринг. Ця рання форма прискорення 2D залишається важливою навіть сьогодні, але двомірне прискорення вже не є основною метою. Щоб отримати максимум графічної продуктивності, нам потрібна третя координата.

Початковий спосіб 2D-рендерінгу, який ховається під накладенням вікон на екрані дисплея, простий і прямолінійний. Нам потрібно знати два параметри: перший – це область на екрані всередині кожного вікна, яка змінюватиметься (тому її потрібно перемальовувати). Другий - це порядок, в якому вікна або об'єкти накладаються один на одного (чи буде об'єкт видно повністю або частково, або він буде закритий іншим вікном). Даний тип інформації вимагає так званого 2,5-мірного виміру або використання шарів графіки, коли третя координата набуває значення 0 (прихована) або 1 (видима), тобто постає як свого роду допоміжний вимір. Саме з цієї причини багато експертів у області Windowsбагато говорять про графік 2,5D.


Величина Z показує, як накладаються чи організовуються вікна.

Після того, як з порядком або видимістю вікон все буде визначено, вміст видимих ​​вікон може виводитись за допомогою чистих двовимірних графічних функцій. У будь-якому випадку необхідно не тільки прораховувати вміст вікон дисплея повністю, але також потрібно керувати різними типами інформації та контентом вікон. Що станеться, наприклад, якщо вікно буде переміщене? Коли інше вікно містить область, яка повністю або частково відкривається внаслідок цієї дії, то має бути викликана системна графічна функція WM_PAINT з точною інформацієюпро те, яку прямокутну область слід перемалювати. Оптимізовані реалізації функції реконструюватимуть або перемальовуватимуть цю область. На жаль, багато реалізації натомість перемальовують вікно повністю, незважаючи на можливість доступу до більш точним інструкціям, незалежно від того, потрібно повністю або частково відтворити вміст вікна. Це, своєю чергою, впливає графічну продуктивність. Інший недолік добре відомий – він полягає у розмиванні або дублюванні, коли вікно починаєш швидко перетягувати по всьому екрану на системі, де немає апаратного прискорення 2D.

Але дозвольте підбити підсумок тому, що ми розглянули зараз. На дисплеї є окремі вікна, чий двомірний контент повинен відображатись на екрані, щоб його можна було бачити. Ці вікна можна рухати як завгодно, вони можуть перекриватися і частково або повністю закриватися іншими вікнами. Необхідно керувати видимим змістом всіх цих вікон, його потрібно виводити на екран з мінімальною затримкою. Ми також знаємо, що сам по собі CPU, нехай навіть це буде дуже швидкий процесорможе надто сильно навантажитися при виконанні подібних складних завдань. Які є виходи, крім того щоб перекласти це навантаження на відеокарту? Що для цього потрібно? І чому все звучить простіше теоретично, ніж реалізується практично? Все це ми розглянемо трохи нижче.

2,5D: міфи апаратного прискорення 2D

Дискретні відеокарти спочатку були потрібні лише для двовимірної роботи. Не секрет, що сьогодні дискретні відеокарти дають чудову продуктивність, коли потрібно працювати зі складними графічними завданнями рендерингу. Втім, старі відеокарти вже надто повільні для повсякденної роботи, особливо коли їм доводиться виводити складні графічні ефекти рендерингу, присутні в останньої версії Windows. З іншого боку, це пов'язано з графічною складністю сучасних користувачів інтерфейсів Windows, а з іншого боку – з обмеженою графічною функціональністю. Але давайте розберемося з цими компонентами, з одним одним.

У даному розділіми розглянемо графічне прискорення 2D, пов'язане з "рідним" рендерингом графіки, від GDI до відеокарти. Сюди входять прості геометричні об'єкти, такі як пікселі, лінії, криві, полігони, прямокутники та еліпси з одного боку, а також їх масштабування, рендеринг чи операції згладжування шрифтів (таких як TrueType або OpenType) з іншого боку.

Давня підтримка апаратного прискорення так званих "2D-примітивів" у відеокартах зникла, вона вже деякий час відсутня у продуктах споживчого рівня. Сьогодні прискорення двовимірних графічних функцій реалізується як аналог тривимірного прискорення, але обробляється виключно програмним графічним драйвером, а не вбудованим на плату "залізом".

У другій частині нашого циклу ми представимо та роз'яснимо тест, який ми спеціально розробили для двовимірної графіки, який ретельно тестує ключові та фундаментальні функції 2D-графіки. Більше того, цей тест показує, що програмний драйверможе негативно та непередбачено позначатися на 2D-графіці. Ми також представимо дев'ять загальних тестових критеріїв.


Відображення тексту.


Прямокутники.


Криві.

Перетворення функцій малювання - це частина двомірного прискорення. Значне і позитивне прискорення здійснюється сучасними 3D-відеокартами, які можуть виконувати рендеринг, управління та відображення графічної інформації 2.5D апаратними засобами.


Все виводиться негайно.

Як це все працює? Як і у випадку 3D-графіки, прораховуються видимі та приховані області вікон, які зберігаються повністю у вигляді віртуальних прямокутних ділянок, у яких виводиться у реальному часі вміст усіх активних вікон. Тому нічого не потрібно перераховувати при переміщенні або зміні вікна; тільки ті області, які були приховані, а зараз стали видно, необхідно перемалювати разом із усім, що змінилося з часу останнього оновлення. Відеокарта завжди знає розмір та розташування віртуальних прямокутників, відомих як вікна. Використовуючи буфер глибини (z-буфер) відеокарта відстежує порядок та пріоритет виведення вікон чи об'єктів на екрані (він також відомий як Z-порядок). Тому відеокарта може сама визначити, які видимі об'єкти, тобто що потрібно вивести безпосередньо на сам екран.

Дозвольте підвести короткий підсумок того, що це означає.

Сучасне апаратне прискорення 2D включає як реалізацію ключових функціймалювання 2D, так і реалізацію технологій накладання шарів 2,5D для вікон і інтерфейсу користувача.

При цьому було б занадто важко дослідити кожну версію Windows, що вийшла, для пошуку додаткових деталей. Оскільки проблеми, виявлені нами, стосуються продуктивності тестів лише під Windows 7, ми обмежили наше тестування Windows XP, Vista і, природно, Windows 7.

Windows XP: " стара школа 2D та межі WM_PAINT

Ви можете говорити про Windows XP все, що думаєте, але апаратне прискорення GDI працює бездоганно і по сьогодні, при цьому його вистачає для більшості типів програм. Втім, чого XP зробити не може, то це перекласти техніку роботи з шарами 2,5D на сучасні 3D-відеокарти. Як ми вже описували вище, рендеринг вмісту вікон виконується самими програмами.



Типовий 2D-додаток, для якого навряд чи купуватимуть дорогу відеокарту. Натисніть на зображення для збільшення.

Це обмеження навряд чи стурбує тих користувачів, які концентрують свої зусилля на будь-якому одному вікні настільної програми. Найбільш типове застосування подібної технології можна побачити в оточеннях SDI (single device interface, інтерфейс одного пристрою). Але все стає незручнішим, коли на робочому столі відкрито і видно безліч вікон. Хто проти того, щоб скористатися покращеною технологією шарів, яка підтримує меню, краще працює на сучасному "залізі", а також полегшує роботу з кількома вікнами на кількох моніторах? Кому не хотілося б залишити розмивання вікон, що переміщуються, і сліди за ними в минулому, отримавши вищу графічну 2D-продуктивність?



Вікна як колода карт: ефект дублювання вікон під XP під час перетягування. Натисніть на зображення для збільшення.

Хоча чиста 2D-продуктивність у векторних графічних програмах, Таких як Corel Draw або додатків САПР, досить висока, оскільки функції GDI в них підтримуються належним чином, ми уперлися в обмеження можливостей WM_PAINT. Коли графічний інтерфейс XP перевантажений анімацією, м'якими тінями, прозорими вікнами та іншими графічними елементами, він впритул наближається до меж 2D-графіки.



Коли система перебуває під важким навантаженням, функція WM_Paint " повисає " чи оновлюється лише зрідка. Події перемальовки мають дочекатися своєї черги, щоби бути виконаними. Натисніть на зображення для збільшення.

Багато користувачів виявили, що найкраще відображати вікна тільки у вигляді рамок при їх перенесенні, а анімовані меню взагалі краще вимкнути. Загалом економія графічних ресурсів виявляється цілком нормальним підходом при роботі на робочому столі XP. На жаль, багато красивих графічні темивиявилися, зрештою, у кошику після початкової ейфорії, пов'язаної із запуском нової операційної системи, оскільки ОС втрачала здатність виводити всю графіку без помилок чи без затримок.

Microsoft швидко помітила, що її графічне рішення 2D, яке було у всіх версіях Windows до цього, включаючи XP, вимагає заміни. Та й зростаюча доступність все більш швидких 3D-прискорювачів разом із цінами, що знижуються, на дискретні GPU явно вказували на те, що часи (і операційні системи) змінюються.


Типовий приклад 3D-відеокарти у 2005 році: Radeon X1800.

На даний момент важливо відзначити, що апаратне прискорення в XP спочатку не працювало з інтегрованим графічним ядром ATI 780G в "рідних" роздільних здатності взагалі. Внаслідок цього вікна відмальовувалися повільно, що погіршувало навіть базову продуктивність web-браузера. Наступні оновлення драйвера допомогли вирішити ці проблеми. Але навіть сьогодні графічне ядро ​​780G не може працювати оптимально, що дуже контрастує з 740G. Але сьогодні, коли XP вже залишається в минулому, ця думка, можливо, теж має розділити подібну долю...

Потім на ринок вийшла Windows Vista, яка є, можливо, найсуперечливішою ОС Microsoft (разом із Windows ME). У будь-якому випадку, незалежно від вашого кохання чи ненависті до Vista, компанія вже не могла відкладати деякі технічні вдосконалення.

Короткий підсумок XP такий.

  • Апаратне прискорення 2D працювало бездоганно для GDI.
  • Апаратного прискорення для шарів 2,5D не було передбачено, що призводило до уповільнення інтерфейсу користувача.
  • Перемальовка або зміна вмісту вікна, що повторюється, забирала час, а також позначалася на продуктивності.

Windows Vista: прогрес та відмова від старого

Коли ми вперше встановили Windows Vista, ледь стримували себе. Інтригуюча, складна та покращена, Vista обіцяла дуже чимало.



Багато світла та тіней, але без апаратного прискорення 2D. Натисніть на зображення для збільшення.

Але те, що здавалося дуже революційним на перший погляд, змінювалося прикростями при запуску тієї чи іншої програми, а іноді і просто вселяло жах. Давайте розглянемо самі важливі особливостів деталях.

Апаратна реалізація шарів 2,5D

Ця технологія була вперше реалізована у Windows Vista. На її вихід знадобилося дуже довгий часАле в 2006 році технологія нарешті з'явилася. Втім, одне невелике обмеження залишалося: вона працювала лише в тому випадку, якщо активовано інтерфейс Aero. Крім того, для підтримки шарів 2,5D була потрібна відеокарта з підтримкою 3D, причому навіть якщо ви не планували запускати 3D-додатки або ігри. Якщо ви використовували тему Vista Basic, то доводилося змиритися з тими ж ефектами розмиття та роздвоєння при переміщенні вікон, які були знайомі користувачам XP, оскільки підтримка шарів 2,5D автоматично вимикалася навіть якщо в системі була встановлена ​​3D-відеокарта. Прикро.

Перехід підтримки шарів 2,5D також змусив Microsoft вирішувати кілька проблем. Vista вважалася повільною операційною системою, але здебільшого стабільною. Але що сталося? Ми вже згадували, що GDI був ключовим інтерфейсомдля програмування графіки Після введення (на жаль) дуже повільного розширення GDI+ на основі C++, яке так і не зумовило технологічного прориву через свою продуктивність, ми вже не могли заперечувати існування свого роду "хаосу інтерфейсів". Фактично, було дуже і дуже несхоже, що GDI, GDI+, DirectDraw і Direct3D можуть взагалі одночасно прискорені апаратно.

Окрім нової моделі драйверів пристроїв, Windows представила модель DWM для керування пристроями виведення на екран. Загальна концепція виявилася не такою простою, вона додала програмний рівень(і відповідне збільшення складності) між вікнами та командами малювання з одного боку, а також між драйверами та пристроями з іншого боку. Пряма взаємодія була припинена через появу DWM. Намагаючись отримати контроль над усім, модель DWM забезпечувала координацію всіх окремих графічних інтерфейсів. Цей перехід залишив осторонь досить серйозну графічну особливість, яку ми вже згадували – а саме апаратне прискорення функцій відображення GDI. Зрозуміти складно, але саме так і сталося.

Більшу частину додаткової пам'яті, яку споживає Vista, зазвичай відносять до технології SuperFetch. На жаль, це лише частково описує ситуацію насправді. Відсутність апаратного 2D-прискорення призвела до того, що весь тягар викликів GDI щодо виведення вмісту вікон лягає на CPU. Все це призводить до великого буфера всередині DWM. Повні відображення вікон повинні передаватися на відеокарту. Але це швидко призвело до появи серйозного "вузького місця", оскільки тільки одне вікно одночасно може відсилати команди GDI на DWM. Асинхронні завданняне дозволяються, що призводить до тривалої черги очікуваних запитів на обслуговування. Все це не тільки вимагає суттєвого процесорного часу на виконання, а й споживає чималий обсяг пам'яті, оскільки всі активні вікна знаходяться усередині буфера DWM. Окремі вікна можуть займати 100 Мбайт, тому цілком зрозуміло, що споживання пам'яті буде збільшуватися. У самих екстремальних випадках Vista може просто "зависнути" - наприклад, коли шкідлива програма відкриватиме одне вікно за іншим у нескінченному циклі. Звичайно, такий цикл не може продовжуватись нескінченно, тому вам доведеться виконати примусове вимкнення комп'ютера, щоб відновити контроль над системою.



Подвоєння споживання пам'яті не подвоює насолоду від роботи (джерело: Microsoft). Натисніть на зображення для збільшення.

Підіб'ємо короткий підсумок по Vista.

  • Vista вперше використовує апаратне прискорення для моделі 2,5D шарів.
  • З активною технологією Aero повільне перемалювання вікон Windows залишається в минулому.
  • Microsoft відмовляється від апаратного прискорення функцій 2D-малювання GDI.
  • DWM не може працювати з вікнами в асинхронному режимі, що негативно впливає на графічну продуктивність.
  • Черга очікування команд GDI всередині DWM може забрати великий обсягпам'яті.

Windows 7: повернення "блудного сина"


Логотип Windows 7, який зацікавив багатьох користувачів.

Багато користувачів вважали Vista невдалою ОС - вона сприймалася як монстр, що буквально "зжирає" пам'ять. У будь-якому випадку, на цю операційну систему потрібно було подивитись ще раз, у світлі випуску Windows 7. Разом з фундаментальними змінами самої системи, графіка Windows 7 дала те, що забрала Vista – необмежене прискорення 2D-графіки у всіх областях, включаючи функції відтворення GDI .

Завдяки переходу на WDDM 1.1, Windows 7 запобігла подвійному використанню пам'яті (перший раз для буферів окремих, вдруге для кожного активного вікнав DWM). Це дозволило зробити систему простішою, з більш скромними вимогами до ресурсів. У Windows Vista подвійне споживання пам'яті для вікон може пояснити, чому пам'ять системи "з'їдалася" настільки нещадно.


У випадку Vista ОС "з'їдає" всю пам'ять, яку може отримати... (Джерело: Microsoft).



…але в випадку Windows 7 вимоги скромніші (джерело: Microsoft).

Для доповнення GDI під Windows 7 було оголошено і Direct2D. Цей інтерфейс використовує перетворення команд, аналогічне Direct3D, щоб і реалізувати апаратне прискорення, і підтримати складніший набір графічних функцій. Direct2D дає перевагу за швидкістю GDI разом із розширеними можливостями GDI+, доля якого не склалася. Втім, ми ще маємо побачити, чи зможе Direct2D отримати підтримку з боку розробників.

Навіть сьогодні переважна більшість програм, як і раніше, використовують GDI API для рендерингу та роботи з графічними елементами 2D. Нам сподобалося, що Windows 7 повернула апаратне прискорення цих команд, від яких відмовилася Vista.



Асинхронний GDI під Windows 7 (джерело: Microsoft). Натисніть на зображення для збільшення.


Майже ідеальне масштабування при одночасної роботиз кількома вікнами (джерело: Microsoft)

Підіб'ємо короткий підсумок по Windows 7.

  • Пряме перенаправлення команд відображення GDI до графічного драйвера через DWM.
  • Асинхронна та одночасна обробка команд GDI для кількох вікон.
  • Стратегії, що уникають надмірного використання пам'яті для створення черги графічних запитів.
  • Нові та покращені драйвери WDDM 1.1.

Вимоги виробників графічних процесорів

Повернення апаратного прискорення 2D-графіки повернуло у гру виробників графічних процесорів. Драйвери під Windows 7 повинні бути спеціально зібрані, щоб вони могли дати апаратне прискорення для двовимірних команд прискорення GDI, а також підтримувати роботу в 2,5D шарах окремих вікон.

Для деяких відеокарт це виявилося дуже непростим. Наприклад, поточне покоління відеокарт ATI, мабуть, страждає через труднощі, пов'язані з драйвером, у всіх цих областях прискорення 2D-графіки. Нижче ви прочитаєте про те, як ми виявили ці проблеми, і які ми зробили висновки.

Windows 7: у лінійки відеокарт Radeon HD 5000 немає 2D-прискорення

AMD доклала багато зусиль до розробки відеокарт DirectX 11 останнього покоління; цілком природно, що для доопрацювання програмної сторони потрібен деякий час (навряд чи для кого є секретом, що подальші випуски драйверів покращують продуктивність і стабільність багатьма різними способами). Ми не можемо обійти в даному питанніта nVidia, оскільки ми виявили схожі проблеми у драйвера GeForce компанії під час використання 2D-графіки на мобільних процесорах компанії. Для нашої статті ми використали найсвіжішу версію драйвера Catalyst на момент тестів – 9.12.



Catalyst та Windows 7 плавають у неспокійних морях. Натисніть на зображення для збільшення.

Проблема 1: ATIKMDAG припиняв відповідати, потім відновлювався

Якщо ви стикалися з подібним повідомленнямпро помилку, то, напевно, це відбувалося після переходу назад в 2D-режим після виходу з 3D-додатка. Нам нічого не залишалося, крім припустити, що це результат якої-небудь помилки в драйвері.

Дозвольте нагадати: коли інтерфейс Aero вимкнений, то DWM відключається, тому 2D-прискорення більше не відбувається (тобто ми отримуємо те саме під Windows 7, що і під Vista). Оскільки ми стикалися з цією помилкою знову і знову на системах з встановленими відеокартами Radeon HD 5750 та Radeon HD 5870 (у двох різних тестових конфігураціях), то нам довелося навмисно вимкнути інтерфейс Aero в обох випадках. Після такого маневру помилки вже не з'являлися. Що цікаво, таку саму ситуацію (і її вирішення) ми виявили на ноутбуках з відеокартами GeForce. Звичайно, тільки час покаже, чи це просто збіг або вказує на конфлікт між DWM, драйверами і апаратним прискоренням 2D-графіки.

Нашим наступним головним підозрюваним виявились відносно низькі частотивідеокарт AMD за замовчуванням у 2D-режимі, а також деякі проблеми в ранніх BIOS відеокарт. Втім, щоб підтвердити чи спростувати їхній вплив, нам потрібні довгострокові спостереження – або після виходу нової версіїдрайвера має змінитися поведінка.

Ми уперлися в цю проблему, оскільки у нас відразу виникли труднощі з тим, щоб змусити Radeon HD 5870 підтримувати 2D-графіку. Багато хто може, звичайно, додати щодо цього, що 3D-карти створюються для ігор, а не для 2D-додатків. Але якщо ви читали попередні розділи статті, ви повинні визнати, що ця проблема стала серйозною тільки з виходом Windows 7 (а не Windows Vista). Якщо бути більш конкретним, більшість 3D-відеокарт без проблем здатні впоратися з 2D-графікою в наші дні. Але пряме порівнянняПідтримка 2D-прискорення між GeForce GTX 285 і Radeon HD 5870 призвела до того, що відеокарта AMD опинилася в аутсайдерах. Фактично при порівнянні з інтегрованим графічним рішенням nVidia GeForce 7050 (nForce 610i), яке не має власної пам'яті, нові Radeonвстають лише друге місце.

Все стає цікавішим, коли DWM вимкнено. Навіть якщо в даному випадку 2D-прискорення вже неможливо, відеокарти AMD дають приріст за продуктивністю. Порівняно з Nvidia GeForceЗапуск відеокарти AMD з відключеним DWM дає їй приріст продуктивності. Навіть CorelDraw та AutoCAD працюють на Radeon HD 5870 помітно швидше при вимкненому DWM. Це виставляє nVidia у вигідному світлі та суперечить як логіці, так і попередньому досвіду тестування даних GPU.


Апаратне прискорення 2D з інтерфейсом Aero та включеним DWM дає перевагу відеокарт GeForce.


Без Aero та апаратного прискорення 2D відеокарти AMD працюють аж до п'яти разів швидше. Шокує!

Саме тому ми кілька разів повторили тести PassMark на цих відеокартах.


Інтерфейс Aero та DWM вимкнені – відеокарти AMD помітно прискорюються. Натисніть на зображення для збільшення.

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

Tom2D Benchmark: Radeon HD 5870 проти GeForce GTX 285 під Windows 7

За допомогою нашого нового тесту ми сподіваємося глибше розібратися у справжні причиниподібного падіння продуктивності 2D, які ми нещодавно виявили з відеокартами Radeon HD 5870, 5850 та 5750 у нашому розпорядженні. Почнемо з того, що 2D-прискорення функцій GDI під Windows 7 явно не працювало на жодній з моделей лінійки Radeon HD 5000, тобто перед нами не просто серйозне уповільнення. У чому проблема: у драйвері чи "залізі"? У випадку з nVidia теж все виявилося благополучно: на відеокартах цієї компанії прискорювалися не всі можливі функції.

Тестова конфігурація
Процесор Intel Core 2 Quad Q6600, 2,4 ГГц @ 3,2 ГГц, степінг G0, кеш L2 8 Мбайт, LGA 775
Пам'ять 4 Гбайт DDR2-1066 CL5
Материнська плата A-Data Vitesta Extreme
Операційна система Windows 7 Ultimate x64
Відеокарти Radeon HD 5870, GeForce GTX 285
Графічний драйвер Catalyst 9.12, GeForce 195.62
Відеокарти Тактова частота при увімкнених Aero/DWM Тактова частота без прискорення
ATI Radeon HD 5870 850 МГц 157 МГц
Nvidia GeForce GTX 285 648 МГц 300 МГц

Щоб закласти міцнішу основу для порівняння включеного/вимкненого 2D-прискорення, ми також провели всі наші тести на старому чіпсеті nForce 610i з інтегрованим графічним ядром GeForce 7050 (без виділеної пам'яті). Ми встановили той же процесор і 4 Гбайт пам'яті, після чого використовували ту ж саму операційну систему Windows 7. Ми також перевірили продуктивність попередниці Radeon HD5870, відеокарти ATI Radeon HD 4870, у нашій тестовій платформі.


У цьому тесті всі тестові відеокарти знаходяться у вузькому діапазоні продуктивності.

Цікаво було б почути від nVidia коментарі щодо того, чому інтегрований графічний процесор відображає 2D-графіку швидше, ніж GeForce GTX 285, нехай навіть різниця дуже скромна.

Відеокарта Radeon HD 4870, взята нами для порівняння, розташувалася третьою знизу, хоча жодних особливих недоліків вона не демонструє.


Дивно, але відеокарта Radeon HD 5870 просто не здатна виводити лінії з апаратним прискоренням із прийнятною продуктивністю.

Якщо обидві тестові відеокарти nVidia і AMD дали видали прийнятні та близькі результати з вимкненим 2D-прискоренням, коли всю роботу виконував CPU, між двома відеокартами відкривається суттєвий розрив після включення Aero. GeForce GTX 285 працює в 11 разів швидше за ATI Radeon HD 5870. Що ще гірше, інтегрований графічний процесор з материнської платиза $50 дворічної давності на порядок оминає відеокарту за $400.

Отримані нами дані для Radeon HD 4870 показують невелику різницю між активним режимом Aero і простим режимом (без прискорення графіки) під Windows 7, що змушує припустити про відсутність прискорення з відтворення ліній під Windows 7. Дана відеокарта відмовилася помітно повільніше GeForce GTX 285 та інтегрованого графічного рішення, однак вона все ж таки обходить Radeon HD 5870 з включеним і вимкненим прискоренням.


Цей тест дає приблизно таку ж картину, що й тест малювання ліній. Відеокарта Radeon HD 5870 знаходиться в кінці, підтверджуючи наше припущення про те, що вона не здатна правильно працювати з 2D-додатками. Це навряд чи можна назвати толерантним навіть для споживчого ринку.

З включеним інтерфейсом Aero та активним DWM, відеокарта GeForce GTX 285 дає у дев'ять разів більше високу продуктивність. Так само навіть старе інтегроване ядро ​​чіпсету значно оминає нову відеокарту AMD. До речі, продуктивність Radeon HD 4870 виявилася дуже цікавою: відеокарта здатна апаратно прискорювати виведення кривих, нехай навіть продуктивність знижується в порівнянні з обома рішеннями nVidia.


Оскільки наша Radeon HD 5870 спостерігала явні проблеми з рендерингом ліній (особливо при насичених штрихах), ми бачимо, що половина результатів нашого тесту прямокутників відповідає попереднім знахідкам, і це не дивує.

У будь-якому випадку, дуже цікаво бачити, як продуктивність Radeon HD 5870 подвоюється після включення апаратного прискорення (порівняно з вимкненим прискоренням), нехай навіть продуктивність виявляється трохи гіршою за GPU GeForce 7050.

Тест прямокутників виявився єдиним, де ми виявили помітний ефект увімкнення апаратного прискорення на відеокартах ATI, і де апаратне прискорення гідне своєї назви. Відеокарта Radeon HD 4870 виграла від цього ефекту сильніше, ніж 5870, нехай навіть вона відстала від інших відеокарт у цьому тесті без прискорення.


У разі перемога присуджується старому інтегрованому графічному ядру. Nvidia nForce 610i обходить всі інші дискретні відеокарти з напрочуд великим відривом, причому неважливо, з активним 2D-прискоренням ми їх беремо або з неактивним. Цікаво відзначити, що для обох топових 3D-відеокарт прискорення виведення полігонів не працює взагалі.

Інтегроване графічне ядро ​​з увімкненим Aero працює в 10 разів швидше, ніж Radeon HD 5870. Без прискорення Radeon HD 4870 працює трохи повільніше, ніж 5870. Але після включення Aero продуктивність 4870 більш ніж удвічі перевищує 5870.


Результати схожі на ті, що ми бачили вище. Обидві high-end відеокарти не забезпечують 2D-прискорення, на відміну інтегрованого чіпсету. Відеокарта Radeon HD 5870 стає аутсайдером, а стара Radeon HD 4870 розташовується десь посередині.

Доповнення

Ми отримали схожі результати, коли ми використовували Radeon HD 5750, де згладжені деякі дефекти, що стосуються 5870. Ми також порівнювали драйвери Catalyst 9.11 і 9.12 і виявили помітний приріст продуктивності при переході зі старої версіїна нову, незалежно від цього, було включено апаратне прискорення чи ні. Нашим наступним порівняннямбуде вимір продуктивності Windows 7 і Vista, але ми залишимо його до другої частини статті. Досить сказати, що навіть тут ми виявили багато сюрпризів під час проведення тестів.

Висновок

Якщо судити з нашого аналізу поточної ситуації, то нові відеокарти лінійки ATI Radeon HD 5000 мають проблеми з 2D-графікою. Також нас дуже турбує і те, що старий інтегрований чіпсет виявився швидше у деяких областях (проти обох дискретних відеокарт AMD та nVidia). Крім того, ми не змогли знайти будь-якого прийнятного рішення для роботи з програмами, які використовують векторну графіку. До того ж це стосується не лише нашого тестування; це стосується всіх, хто регулярно працює з 2D-графікою. Чесно кажучи, досить складно уявити, як стара відеокарта Radeon HD 4870 змогла впритул підійти або навіть перемогти нові відеокарти у великій кількості тестів.

Хоча 2D-прискорення (включаючи шари 2,5D) працює добре, AMD поки що не реалізувала деякі базові функції GDI у лінійці відеокарт Radeon HD 5000. Після початкового появи Windows 7 пройшло вже кілька випусків драйверів, тому ситуацію буде складно зрозуміти тим, хто витратив кілька сотень доларів на нову відеокарту, але при цьому отримав "гальма" у 2D-додатках. Ми також змушені нагадати, що все це стосується не лише нашого синтетичного 2D-тесту, а й різних реальних додатків, які ми використовуємо у наших тестах, включаючи AutoCAD, Corel Draw, Adobe Illustrator, Photoshop CS3/CS4, Microsoft Publisher, PowerPoint і так далі. Це вимагає термінового та серйозного доопрацювання драйверів з боку AMD, особливо у зв'язку з тим, що наші результати під Vista демонструють набагато вищу продуктивність, ніж під Windows 7 (у другій частині статті ми якраз про це й поговоримо).

Під час підготовки статті та проведення тестів ми кілька разів телефонували Анталю Танглеру (Antal Tungler), технічному PR-менеджеру AMD, обговорюючи з ним 2D-продуктивність лінійки Radeon HD 5000 під Windows 7. Коли ми довели собі, що ці проблеми продуктивності пов'язані безпосередньо з проблемами GDI, які зазнає майже будь-яка програма, що працює з вікнами на робочому столі, подібна ситуація вже не видалася нам терпимою, особливо для домашніх і офісних користувачів. Тим більше, що інтегрований графічний GPUу конкурента справлявся з 2D-графікою ефективніше.

Ми можемо тільки припускати (і сподіватися), що причина і можливе рішеннякриються у драйверах Catalyst. Якщо так, що AMD зможе виправити проблеми досить легко. Враховуючи недавній вихід недорогих відеокартМожна припустити, що проблеми стосуються всієї лінійки. Але що нас турбує більше, враховуючи результати тестів – прямокутники одержують помітне прискорення, а всі інші графічні примітиви (особливо лінії та криві) – ні. Ми спостерігаємо серйозне падіння продуктивності при активації апаратного прискорення GPU – а це говорить про те, що нічого хорошого тут не відбувається. Дискретна відеокарта nVidia також відстає при рендерингу еліпсів та полігонів, і нам дуже цікаво дізнатися, чому це відбувається.

Поки що ми рекомендуємо користувачам відеокарт лінійки Radeon HD 5000 відключати інтерфейс Aero під час роботи з програмами, що інтенсивно використовують 2D-графіку. У такому разі приріст продуктивності може становити до 300%, що легко компенсує відсутність гарних та прозорих віконних рамок. Крім того, ви можете відключити Aero тільки для програм, що запускаються, щоб не відмовлятися від інтерфейсу Aero взагалі.

Натисніть правою клавішею на іконку програми, потім виберіть "Властивості/Properties" з меню. Виберіть закладку "Сумісність/Compatibility" у вікні властивостей, після чого позначте галочкою пункт "Вимкнути композицію робочого столу".


Під час вибору пункту "Вимкнути композицію робочого столу" підтримка DWM деактивується.

У другій частині ми знову протестуємо можливості відеокарт AMD і порівняємо їх із прямими і непрямими конкурентами від nVidia. Тим часом ми поспілкуємося з представниками AMD та nVidia та обговоримо результати нашого початкового тесту. Нам дуже цікаво дізнатися, що вони дадуть відповідь.

Після інтенсивного обговорення цієї теми з нашими колегами ми вирішили, що проведемо глибші тести на різному залізі під XP, Vista і Windows 7. Нашою метою буде знайти глибше розуміння графічних можливостей 2D всіх цих операційних систем. Ми плануємо подивитись на старі відеокарти S3, Voodoo, численні старі моделі GeForce та повну лінійку відеокарт AMD/ATI. Загалом ми хочемо нічого не залишити осторонь, включивши в тести навіть інтегровані графічні ядранашого великого набору материнських плат.

Ми вже знаємо, що під час цього процесу ми виявимо кілька цікавих моментів, а також ряд розчарувань. У другій частині статті ми наведемо більш точний опис тестів, рейтингів тестових результатів, а також дамо можливість завантажити Tom2D Benchmark самостійно. Ми впевнені, що ви знайдете цей матеріал дуже цікавим, особливо коли ми виявимо, які відеокарти споживчого рівня дадуть більш високу графічну продуктивність 2D під конкретні версії Windows. На вас чекають сюрпризи, так що залишайтеся з нами!

Оновлення. Поглянувши на попередні результати 2D-продуктивності, представники AMD висунули такі припущення.

  • Фахівці Tom's Hardware для вимірювання взяли область (2D-лінії тощо), яка ще не була оптимізована.
  • До цього нового тесту ми не спостерігали будь-яких інших додатків, які б упиралися у "вузьке місце" таким же чином, тому й не фокусували на цьому увагу раніше.
  • Наш початковий аналіз показує, що у цій сфері немає апаратних обмежень.
  • Ми попросимо нашу команду розробників драйверів оптимізувати їх і під цю область, і постараємось уявити новий драйвердля вирішення проблеми якнайшвидше.
  • Ми вже знайшли простий спосіб серйозно збільшити нашу продуктивність і ми спробуємо реалізувати його в майбутніх версіях драйвера Catalyst (нам потрібно написати код, валідувати його, переконатися, що він не зіпсує нічого іншого тощо).

Очевидно, дуже багато користувачів сучасних комп'ютерів чули про таке поняття, як «апаратне прискорення». Ось тільки далеко не всі знають, що це таке і для чого потрібно. Ще менше тих, хто розуміє, як увімкнути апаратне прискорення на Windows 7, наприклад. Пропоновані далі рішення дозволять використовувати налаштування не лише у сьомій версії Windows, але й у будь-яких інших.

Для чого потрібне апаратне прискорення (Windows 7)

Почнемо з того, що деякі користувачі помилково вважають, що застосування апаратного прискорення відноситься виключно до відеокарт з метою використання можливостей графічного процесора, що дозволяє знизити навантаження на центральний. Частково так воно і є.

Якщо подивитися на це питання дещо ширше, можна з упевненістю стверджувати, що все це стосується і відео-, і аудіосистеми комп'ютера (наприклад, платформа DirectX включає підтримку багатоканального звуку). У будь-якому випадку апаратне прискорення є зниженням навантаження на ЦП і ОЗУ за рахунок того, що її частково (або повністю) беруть на себе інші «залізні» компоненти.

Ось тільки багато хто не розуміє, наскільки доцільно його використовувати. Посудіть самі, адже при перерозподіленому навантаженні у бік підвищення для графічного чи звукового чіпів вони з часом можуть досить зноситися і навіть вийти з ладу. Тому в питанні того, як увімкнути апаратне прискорення на Windows 7, не варто вдаватися в крайнощі. Потрібно використовувати збалансовані параметри з розумним використанням всіх пристроїв і рівномірним розподілом навантаження між ними. У разі встановлення пікових значень гарантій довговічності якогось компонента ніхто не може дати.

Як увімкнути апаратне прискорення на Windows 7

Отже, почнемо з найпростішого. Насамперед розберемося з графікою. Включити апаратне прискорення (Windows 7 беремо як приклад, хоча дане рішенняможна застосовувати у всіх інших версіях) можна через налаштування графічного чіпа. Але спочатку потрібно перевірити, чи потрібне втручання користувача.

Через меню ПКМу вільній зоні «Робочого столу» переходимо до роздільної здатності екрану та використовуємо гіперпосилання додаткових параметрів. У вікні властивостей дивимося на вкладку діагностики. Угорі є кнопка зміни параметрів. Якщо вона неактивна, то апаратне прискорення вже включене.

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

Примітка: у Windows 10 розділ діагностики в налаштуваннях графічного адаптера відсутній, а апаратне прискорення (власне, як і сьомий модифікації) увімкнено за замовчуванням.

Питання, що стосуються DirectX

Тепер кілька слів про те, як увімкнути апаратне прискорення DirectX. Як і у випадку з загальними налаштуваннямисистеми, воно і для відео-, і для звукового адаптера включено спочатку, тому змінювати щось не потрібно. Але переконатися, що воно активно, не завадить.

Для перегляду та діагностики використовується діалог DirectX, який викликається командою dxdiag, що вводиться в консолі "Виконати". Тут на вкладці монітора необхідно перевірити параметри DirectDraw, Direct3D та налаштування текстур AGP (іноді до списку може бути включений параметр ffdshow). За промовчанням навпроти кожного рядка стоятиме значення «Увімк.», а в вікні нижче буде повідомлення, що не знайдено проблем. Якщо з якихось причин вони виявилися, переходимо до їхнього усунення.

Можливі причини несправностей

Найчастіше неможливість увімкнення апаратного прискорення на рівні системи або в налаштуваннях платформи DirectX пов'язана з некоректно встановленими, відсутніми або застарілими драйверамивищезазначених пристроїв.

Перевіряємо їх у «Диспетчері завдань» (devmgmt.msc). Якщо навпроти звукової або відеокарти стоїть жовтий трикутникзі знаком оклику (або пристрій не визначено), це явна ознака того, що з драйвером є проблеми. Його потрібно перевстановити, використовуючи при цьому власну базу даних системи, оригінальний дискабо завантажені дистрибутиви з Інтернету.

Але буває і так, що з пристроями все гаразд. Тим не менш, через меню ПКМ вибираємо рядок властивостей, а новому вікні на вкладці драйвера дивимося на дату випуску. Якщо драйвер на поточну дату сильно застарів, натискаємо кнопку оновлення та очікуємо завершення процесу (зауважте, що Windows оновлювати драйвера самостійно не вміє).

Однак набагато краще використовувати спеціальні утиліти пошуку та оновлення на кшталт Driver Booster. По-перше, звернення проводитиметься прямо на сайт виробника обладнання; по-друге, буде встановлено саме той драйвер, який максимально підходить для роботи пристрою; по-третє, він буде встановлений до системи максимально коректно. Участь користувача мінімальна.

Висновок

Ось, власне, і все, що стосується того, як увімкнути апаратне прискорення на Windows 7. Варто це робити чи ні – суто особиста справа. Але якщо підходити до питання розумно, краще не використовувати апаратне прискорення, як то кажуть, на повну. У цьому випадку термін служби встановленого обладнання може дуже скоротитися.

Доброго ранку, Хабре!

Виявив на xda-developers.com цікаву для себе новину, яка є переказом свіжого посту «Руйнуємо міфи про повне апаратне прискорення в ICS» з Google+ профілю розробника Google Діани Hackborn. Взяв він сміливість зробити короткий переклад-переказ за мотивами цих двох публікацій, який і наводжу нижче під хабракатом. Перший варіант цієї публікації вже був опублікований мною цієї ночі в блозі R2-D2: Android з користю , але тема здалася мені гідною освітлення і на Хабрахабрі (я сподіваюся тут не потрібно піднімати повторно обговорення того факту, що розділ «Посилання» після осіннього брабра оновлення практично та фактично помер).

Розробник із Google Діана Hackborn на своїй сторінці в Google+ поділилася інформацією щодо апаратного прискорення інтерфейсу в Android 4.0 Ice Cream Sandwich. Ажіотаж, який піднявся навколо цієї функції, виник не просто так - занадто багато докорів звучало на адресу плавності малювання 2D-елементів в Android у порівнянні з іншими мобільними ОС.

Безумовно, апаратне прискорення в Android це позитивна річ, але є багато неправильних уявлень про те, що насправді являє собою цю можливість. По-перше, Android вже багато років підтримує апаратне прискорення для завдань малювання безлічі вікон. мова йдепро композицію вікон - панель завдань, оповіщення, панель меню, поява та приховування елементів інтерфейсу). Це означає, що вся анімація елементів інтерфейсу в Android завжди використовувала апаратне прискорення.

На відміну від зображення композиції вікон, рендеринг зображення всередині вікна традиційно здійснювався за допомогою процесора в Android 2.X і нижче. Однак, в Android 3.0 Honeycomb, ці функції можуть бути перекладені на графічний прискорювач, але тільки в тому випадку, якщо в маніфесті програми це прямо вказано опцією android:hardwareAccelerated=”true”. Єдина відмінність Android 4.0 ICS у тому, що при розробці, використовуючи останнє доступне API level 14 (і у всіх майбутніх), ця опція для програм включена за замовчуванням.
Здавалося б, тепер у нас є можливість «змусити» працювати усі додатки в Android 4.0 ICS з увімкненим апаратним прискоренням незалежно від його маніфесту, хіба це не чудово? Насправді, це не зовсім так. У випадку, наприклад, з відеоприскорювачем PowerVR драйвера, що використовуються в Nexus S і навіть у Galaxy Nexus, «від'їдають» по 8Мб оперативної пам'яті за кожен процес, який використовує апаратне прискорення. Начебто не так багато? Не тут було, адже таке активне споживання оперативної пам'яті відразу безліччю процесів значно підвищує споживання пам'яті в цілому, що відразу позначається на швидкості мультизадачності - аж до значного її уповільнення. В результаті, команда розробників Google зараз витрачає значні зусилля на тонке налаштування того, які саме частини інтерфейсу користувача потребують апаратного прискорення на Nexus S.

Що ж у результаті? Порівняно з Android 2.X, Ice Cream Sandwichмає більше можливостей, у тому числі завдяки ширшому використанню апаратного прискорення. Проте, крім наявності опції включеного прискорення «за умовчанням», використання апаратного прискорення в ICS нітрохи не «повне», ніж раніше. І, крім усього іншого, не варто забувати, що апаратне прискорення це не магія і не диво, як вважають багато хто, але його присутність це звичайно плюс, а не мінус.