Jak przyśpieszyć rendering wideo?
Moc dzisiejszych komputerów domowych pozwala praktycznie każdemu zająć się amatorskim, bądź półprofesjonalnym montażem wideo. Entuzjastów nie brakuje, jednak gdy tylko zaczniemy rozgryzać tematykę w sposób bardziej zaawansowany i wyjdziemy poza poziom wrzucania na You Tube filmów z wakacji, coraz mocniej zaczną nam doskwierać ograniczenia sprzętowe. Do nagrywania w wysokiej jakości nie potrzebujemy już profesjonalnych kamer. Nowoczesne smartfony umożliwiają nagrywanie filmów w rozdzielczości Full HD (1920 x 1080), a nawet Ultra HD / 4K (3840 x 2160). Montaż, obróbka i renderowanie takiego materiału może sprawić kłopot nawet wydajnym maszynom.
Przykładowy film 4K składający się z czterech obrazów Full HD - komfortowy montaż takiego materiału wymaga odpowiedniego sprzętu
Pierwsze skrzypce w procesie obróbki materiału wideo zajmuje oczywiście procesor. To od jego wydajności zależy jak sprawnie komputer będzie radził sobie z montażem oraz ile czasu będzie trwało przygotowanie finalnego materiału. W takich zastosowaniach liczy się brutalna moc procesora, im więcej rdzeni tym lepiej. Najszybsze procesory na rynku konsumenckim to Intel Ivy Bridge-E. Wyposażone w sześć rdzeni i dwanaście wątków stanowią obiekt marzeń amatorów wideo. Wiele osób zajmuje się jednak zastosowaniami wideo amatorsko i półprofesjonalnie, a zakup najszybszych procesorów, których cena dochodzi do 4 tysięcy złotych to dla nich abstrakcja. Poszukajmy więc alternatywnych - i co najważniejsze tańszych - sposobów na przyśpieszenie renderowania wideo. Oczywiście nie należy zapominać o pozostałych czynnikach które wpłyną pozytywnie na sam proces montażu i finalnego renderingu - takich jak ilość pamięci RAM (im więcej tym lepiej - nie ma limitów), czy też dyski o szybkim odczycie i zapisie sekwencyjnym (odpowiednie modele SSD, czy też klasyczne dyski połączone w matrycę RAID0).
Dziś zajęliśmy się procesem finalnego renderowania - czyli przygotowywania ostatecznej wersji pliku wideo gotowego filmu. Proces ten jest czasochłonny i nawet przy użyciu nowoczesnych procesorów potrafi ciągnąć się godzinami. Sprawdziliśmy jak można przyśpieszyć ten proces stosując (lub podkręcając) szybszy procesor, wyżej taktowną pamięć RAM, czy zaprzęgając do pracy kartę graficzną (akceleracja GPU).
CPU - procesory
Przy renderowaniu wideo wydajność procesora jest imperatywem. Jakiej wydajności możemy spodziewać się po procesorach z różnych półek cenowych?
Sony Vegas Pro 12: rendering wideo - [minuty, sekundy] Porównanie procesorów
| Core i7 4960X (ok. 3900 zł) | 4,48 |
| OC Core i7 4770K 4,5 GHz | 5,58 |
| Core i7 4770K (ok. 1250 zł) | 6,51 |
| AMD FX 8350 (ok. 750 zł) | 8,05 |
| Core i5 4670K (ok. 850 zł) | 8,28 |
| AMD FX-6350 (ok. 500 zł) | 10,56 |
| Core i3 4340 (ok. 550 zł) | 11,02 |
| AMD FX-4130 (ok. 400 zł) | 15,57 |
Najtańszy procesor w naszym zestawieniu (cena około 400 zł) potrzebuje prawie 16 minut na finalne wyrenderowanie testowego materiału. Żeby skrócić czas do niecałych 5 minut, trzeba zainwestować prawie 10 razy więcej. Mało kogo będzie stać na procesor klasy Core i7 4960X.
Wśród naszych czytelników nie brakuje amatorów podkręcania. Modele Intela oznaczone literą K lub X posiadają odblokowany mnożnik, który umożliwia proste i efektywne podkręcanie. Modele Core i3 niestety są pozbawione tej możliwości i w ich przypadku możemy zyskać tylko kilka procent wydajności więcej. Wszystkie procesory AMD FX posiadają odblokowany mnożnik, jednak w ich przypadku należy liczyć się ze znacznie zwiększonym zapotrzebowaniem na energię, oraz wydzielaniem ciepła.
Podkręcenie (OC) bardzo wydajnego Core i7 4770K pozwala na zbliżenie się do wyniku oferowanego przez znacznie droższy sześciordzeniowy procesor.
RAM - wpływ taktowania pamięci RAM
Wyżej taktowana pamięć RAM oznacza większą przepustowość pamięci, jednak często zdaje się ona dodatkiem w rodzaju kwiatka na kożuchu. Potrafi ona przyśpieszyć działanie komputera, jednak w dość niewielkim stopniu.
Sony Vegas Pro 12: rendering wideo - [minuty, sekundy] Porównanie pamięci RAM
| Core i7 4960X + RAM 1866 MHz* | 4,26 |
| Core i7 4960X + RAM 1333 MHz | 4,48 |
| Core i7 4770K, RAM 1866 MHz | 6,47 |
| Core i7 4770K, RAM 1333 MHz | 6,51 |
| AMD FX 8350 + RAM 1866 MHz | 8,02 |
| AMD FX 8350 + RAM 1333 MHz | 8,08 |
* Enhanced Turbo - mnożniki wszystkich rdzeni automatycznie przestawiają się na najwyższą wartość (4GHz)
Szybsza pamięć RAM może nieco przyśpieszyć czas renderowania, ale wyniki nie są oszałamiające. Warto zwrócić uwagę, że niektóre płyty główne dla procesorów Intel, po zastosowaniu szybszych pamięci RAM automatycznie uruchamiają tak zwany tryb Enhanced Turbo, który jest niczym innym jak delikatnym podkręceniem CPU (najwyższa wartość Turbo dla 1/2 rdzeni, zaczyna obowiązywać dla wszystkich rdzeni).
Pamięci 1866 MHz są jednak tylko 500 MHz szybsze od stosowanych powszechnie modułów 1333 MHz. Stosując pamięci 2133 MHz zyskalibyśmy kolejne cenne sekundy, na rynku można znaleźć pamięci taktowane 2600, czy nawet 3000 MHz.
GPU - akceleracja renderingu za pomocą karty graficznej
Dochodzimy do momentu, gdy pozostaje nam włączenie do akcji drugiego procesora w naszym komputerze - mowa oczywiście o procesorze graficznym. Z powodzeniem można tu wykorzystać możliwości nawet zintegrowanej grafiki - i to z niezłym skutkiem - jednak w naszych testach skupiliśmy się na zewnętrznych kartach graficznych. Zasada jest prosta - im nowsza i wydajniejsza karta graficzna tym przyśpieszenie będzie większe. Praktycznie wszystkie liczące się na rynku programu do montażu wideo posiadają opcję akceleracji GPU - czy to przez NVIDIA CUDA, OpenCL, a nawet QuickSync (wykorzystanie wbudowanego w procesor konwertera do szybszego stworzenia materiału H.264).
Jak włączyć akcelerację GPU w Sony Vegas Pro?
Sony Vegas Pro 12: rendering wideo - [minuty, sekundy] Porównanie z akceleracją GPU
| Core i7 4770K + Radeon R9 270X | 2,11 |
| AMD FX 8350 + Radeon R9 270X | 2,18 |
| AMD FX 8350 + Radeon HD 7790 OC | 2,36 |
| AMD FX 8350 + Radeon HD 7770 | 2,5 |
| Core i7 4960X | 4,48 |
Nawet niedroga karta klasy Radeon HD 7770 pozwoli na niesamowite przyśpieszenie procesu renderowania. Wyniki są rewelacyjne, ale należy pamiętać o jednym - tylko część efektów w programach do montażu wideo jest akcelerowanych przez GPU. Pozostałe będą wciąż wykorzystywać tylko rdzenie procesora. Jak duże przyśpieszenie uzyskamy zależy też od konkretnego efektu.
Jak widać na powyższym zrzucie ekranowym, w takim przypadku ani karta graficzna, ani procesor nie są obciążane maksymalnie. Daje to dodatkowy atut w postaci tego, że podczas renderowania możemy zająć się innymi czynnościami. Przy wyłączonej akceleracji procesor może być obciążony w sposób maksymalny, co w praktyce oznacza blokadę komputera aż do wykonania zadania.
Naturalnie zamiast zewnętrznej karty graficznej możemy wykorzystać zintegrowany układ graficzny. Testowaliśmy to przy okazji zintegrowanych grafik APU AMD Richland oraz Intel Ivy Bridge - wkrótce na naszych łamach pojawią się testy z wykorzystaniem zintegrowanych grafik Intel Haswell oraz AMD Kaveri. Zintegrowane układy Radeon w APU AMD świetnie poradziły sobie przy akceleracji wideo, więc możemy cieszyć się szybszym renderingiem wideo, nawet jeśli nie posiadamy zewnętrznej karty graficznej.
Sony Vegas Pro 12: rendering wideo - [minuty, sekundy] Porównanie z akceleracją GPU i różnymi taktowaniami RAM
| Core i7 4770K + R9 270X, RAM 1866 MHz | 2,02 |
| Core i7 4770K + R9 270X, RAM 1333 MHz | 2,11 |
Taktowanie pamięci RAM ma również wpływ na szybkość działania podczas włączonej akceleracji GPU. Niewielki - ale jednak.
Podsumowanie
Okazuje się, że możemy znacznie skrócić czas renderowania wideo, po prostu lepiej znając możliwości posiadanego sprzetu i odpowiednio je wykorzystując. Możemy skrócić czas renderowania wideo po prostu włączając do obliczeń zewnętrzną, lub zintegrowaną kartę graficzną - a tę posiada każdy. Zwracamy jednak uwagę, że nie każdy układ graficzny nadaje się do akceleracji obliczeń, dotyczy to zwłaszcza starszych grafik. W zależności od układu graficznego wyniki mogą mocno się różnić. Przyśpieszenie może być naprawdę olbrzymie, przebijając możliwości takich procesorów jak Core i7 4960X, albo też... zerowe, jeśli dany efekt nie oferuje wsparcia GPU. Warto jednak zwrócić uwagę, że twórcy oprogramowania zwracają coraz baczniejszą uwagę na akcelerację oprogramowania za pomocą układów graficznych i te możliwości będą wciąż się zwiększać.
Szybsza pamięć RAM pomoże nieco przyśpieszyć obliczenia, jednak nie należy się spodziewać, że różnica będzie duża. Podstawą obliczeń wciąż pozostaje procesor, a możliwości jego zakupu wyznaczać będą możliwości finansowe.
Platforma robocza do montażu materiałów wideo wcale nie musi kosztować krocie. Odpowiednie wykorzystanie możliwości procesora, karty graficznej, pamięci RAM - oraz oprogramowania - pozwoli na szybsze przeprowadzanie skomplikowanych obliczeń.