Все для ПКЗалізоПроблема «CPU проти GPGPU»: тупикове майбутнє? На прикладі ASUS

Проблема «CPU проти GPGPU»: тупикове майбутнє? На прикладі ASUS

-

Ідея цього короткого матеріалу-роздуму народилася з одного дивного факту. В процесі оптимізації Premiere Pro і After Effects, і вже після того, як від мене поїхала ASUS TUF GeForce RTX 3090 24GB (огляд робив мій колега Денис Зайченко тут) я дізнався, що з останнього з крайнім оновленням зникла можливість оптимізувати програму під багатоядерні процесори – розподіляти рендер між потоками CPU.

GPGPU CPU

Це пояснювалося тим, що Adobe повільно, але вірно переходить з оптимізації під CPU на оптимізацію GPU. Це, якщо що, називається GPGPU, або General Purpose GPU. І з оптимізацією під цю справу можуть виникнути величезні проблеми, будь у вас хоч Intel Xe Graphics, хоч ASUS RTX 3090 24GB!

Основи GPGPU

Здавалося б, проблем бути не повинно – адже GPU в сучасній версії складається в тому числі і з т.зв. потокових процесорів. У NVIDIA вони, наприклад, називаються ядра CUDA. І ці процесори працюють за тим же принципом, що і ядра звичного CPU.

GPGPU CPU

Різниця в потужності. Ядра CPU мають значну обчислювальну потужність, але мізерну кількість, навіть з огляду на багатопотік. А ядра GPU, хоч і мізерні за потужністю, але здатні виконувати певну задачу. І при цьому їх в сотні разів більше. Якщо не тисячі.

Відеоматеріал про GPGPU

Не хочете читати? Дивіться відео:

Апаратне прискорення

І, скажімо, у Premiere Pro обробка ефектів Lumetri на процесорі – та що там, простий енкодинг-декодинг H264 – займає дикий шматок часу. І це нормально, різні задачі під різне залізо виконуються з різною ефективністю. Власне, навіть крихітний апаратний прискорювач відеообробки в iGPU робить справжні чудеса, змінюючи швидкість рендера часом багаторазово!

GPGPU CPU

А з огляду на зростаючу потужність GPU – скажімо, у ASUS TUF RTX 3090 цілих 24 гігабайти відеопам’яті і більше десяти тисяч ядер CUDA – цілком логічно, що застосунки оптимізуються під таке діло.

GPGPU CPU

Під десятки тисяч дрібних працівників, які розпаралелюють роботу, знімаючи навантаження з CPU. Але питання. Чи не занадто багато бере на себе відеокарта? Я помітив, що при рендері важких ефектів, переходів і просто зміні картинки додатковими засобами, комп’ютер почав гальмувати.

Пам’ять відеокарти забивалася під нуль, процесор в рендері майже не брав участі… як і оперативка. А нюанс в тому, що ОЗП у мене 128 ГБ.

HyperX 3600 MHz 2x32GB

І, для прикладу, в Premiere Pro половина оперативки простоює, процесор зайнятий наполовину, декодер-енкодер відюхи розслаблений, зате VRAM забита в зюзю і продуктивність майже на нулі.

GPGPU CPU

Спільна робота

Найгірше відбувається при рендері проекту зі змішаними шматками – пов’язаними композиціями After Effects, наприклад. Ось там відеопам’ять забивається в нуль майже відразу, без попередження. І для збільшення швидкості рендеру необхідно закривати всі застосунки, що поїдають VRAM. На зразок тих же Premiere Pro і After Effects! І залишати, скажімо, тільки Media Encoder.

І! Не береться до уваги важливий фокус. Скажімо, After Effects жере ще й ОЗП, причому за обидві щоки. АЛЕ! Він вміє кеш зливати! Звільняти пам’ять для інших застосунків. Але з відеопам’яттю жодна програма так не працює! Пам’ять або забивається, або звільняється після закриття проекту.

GPGPU CPU

І так, безумовно, VRAM швидше, ніж DRAM, і часом значно. Однак в оглядах Transcend і не тільки я повторював – для робочих задач краще багато повільної пам’яті, ніж крихітний шматочок супершвидкої.

GPGPU CPU

Якщо програма вміє тільки забивати пам’ять, але не звільняти її максимально ефективно – то швидкість пам’яті не допоможе. І виходить, що в моєму ПК для Adobe Creative Suite лежить ціла прірва ОЗП… яку було б непогано використовувати при рендері.

Читайте також: Огляд ноутбука ASUS ROG Zephyrus G14 2021: В захваті, але без вау-ефекту

Але ні – це покладається практично повністю на нещасну GTX 1080 Ti, де обсяг пам’яті більш ніж в ДЕСЯТЬ РАЗІВ менше! І можна сказати, мовляв, є ж начебто ті ж RTX, на зразок тієї ж моделі ASUS TUF RTX 3090, які тягнуть NVLink з об’єднанням пам’яті! Але тут знову нюанс.

GPGPU CPU

За вартість двох RTX 3090, тобто – за 2x $2000. (MSRP вже не рахуємо, це не відповідає сучасній дійсності) ми отримуємо… 24 ГБ пам’яті. Яку ще й не факт що можна буде використовувати при рендері! Так, одиниці програм цю функціональність реалізують. В основному – моделювання і наукові обчислення. Та й налаштування там просто жах.

GPGPU CPU

А за $4000 ми можемо забити плашками DDR4 з ECC всі канали пам’яті навіть AMD Threadripper! 256 ГБ буде в гіршому випадку! Та ще й з корекцією помилок, чого немає у RTX 3090.

GPGPU CPU

Єдина причина, яку я бачу, і яка може зупинити перед оптимізацією GPU як обчислювача, а RAM як буфера – затримка між ОЗП і відеокартою буде занадто великою, щоб перекрити бонуси від обсягу. З іншого боку, нестача VRAM все одно процес уповільнює. А RAM хоча б додати можна, якщо що!

Підсумки по GPGPU

В цьому і небезпека. Навіть якщо у вас ASUS TUF RTX 3090, яку ви спеціально купили під задачі GPGPU, ви все одно можете впертися у ботлнек, якого можна було б уникнути. Якби програми частіше використовували RAM замість VRAM. Я не уявляю собі, як це можна змінити – але якщо тенденція триватиме, то це буде й справді тупикове майбутнє.

Ціни на ASUS TUF RTX 3090 24GB

Denis Zaychenko
Пишу багато, іноді по ділу. Цікавлюсь комп'ютерними та іноді мобільними іграми, а також збірками ПК. Майже естет, більше люблю хвалити, ніж хаяти.
Підписатися
Сповістити про
guest
0 Comments
Вбудовані Відгуки
Переглянути всі коментарі