News
Artikel und Präsentationen
Aktuelles
AMD-Roadmaps
Gerüchte
Intern
Pressemitteilungen
Webwatches
Alte Inhalte
News einsenden
Foren
Neue Beiträge
Foren durchsuchen
Aktuelles
Neue Beiträge
Neue Downloads
Letzte Aktivität
Downloads
Aktuellste Rezensionen
Downloads suchen
Mitglieder
Registrierte Mitglieder
Zurzeit aktive Besucher
Hardware-Datenbank
Mainboards
DC-Wiki
Letzte Änderungen
Alle Artikel
Zufällige Seite
Anmelden
Registrieren
Aktuelles
Suche
Suche
Sortieren nach
Relevanz
Datum
Nur Titel durchsuchen
Von:
Neue Beiträge
Foren durchsuchen
Menü
Anmelden
Registrieren
App installieren
Installieren
Foren
News und Artikel
Kommentare
Neuer Artikel: Bericht: x264 mit OpenCL-Beschleunigung
JavaScript ist deaktiviert. Für eine bessere Darstellung aktiviere bitte JavaScript in deinem Browser, bevor du fortfährst.
Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder ein
alternativer Browser
verwenden.
Auf Thema antworten
Nachricht
<blockquote data-quote="Dr@" data-source="post: 4632903" data-attributes="member: 54308"><p>Wie die Aussagen von Steve Borho im Interview zeigen, liegt es nicht primär an OpenCL, dass ausschließlich die Berechnung der <em>lookahead</em>-Funktion auf die GPU ausgelagert wurde. Alle anderen Teilaufgaben lassen sich eben nicht effizient genug auf die GPU übertragen, ohne dabei die Qualität und Effizienz von x264 zu reduzieren. Was schlicht darin begründet ist, dass CPUs und GPUs auf grundlegend anderen Architekturen aufbauen. Eigentlich müsste diese Herangehensweise honoriert werden, schließlich wurde die schlechte Bildqualität bisheriger GPU-beschleunigter Enkoder hier mehr als ein Mal - zurecht - angeprangert.</p><p></p><p>Wer auf den heiligen Gral gehofft hat, muss natürlich extrem enttäuscht sein. Gerade wenn man die Ergebnisse im Two-Pass Encoding für die Tandems aus CPU und Grafikkarte betrachtet, wird auch klar warum die OpenCL-beschleunigte lookahead-Funktion nicht als Nachbrenner wirkt und somit auch nicht für gewaltige Leistungssteigerungen sorgen kann: Es wird eben nur die Analyse des Ausgangsmaterials beschleunigt. Die eigentliche Kodierung des Videos findet ausschließlich auf den CPU-Kernen statt. Die viel höheren Werte verpuffen dann aber, weil letztlich nur der sowieso schon viel schnellere Analysedurchgang beschleunigt wird. Hinzu kommt noch, dass bei aktivierter OCL-Beschleunigung die Analyse leicht andere Ergebnisse liefert, die zu einer rechenintensiveren Kodierung führen (z.B. mehr B-Frames und/oder längere Bewegungsvektoren). Dadurch wird der eh schon viel langsamere zweite Durchgang sogar noch weiter ausgebremst.</p><p></p><p>Nehmen wir mal als konkretes Beispiel aus unseren Benchmarkergebnissen die Kombination aus Intel Core i7 2600K und GeForce GTX 580 zur Hand:</p><p></p><p>Anzahl der Frames: 5906</p><p></p><p>1st Pass ohne OCL: 36,29 fps (7.782,56 kb/s) ---> 00:02:43 (2 Minuten und 43 Sekunden)</p><p>1st Pass mit OCL: 80,76 fps (7.772,53 kb/s) ---> 00:01:13</p><p></p><p>2nd Pass ohne OCL: 11,77 fps (8.001,89 kb/s) ---> 00:08:22</p><p>2nd Pass mit OCL: 11,24 fps (8.010,10 kb/s) ---> 00:08:45</p><p></p><p>T-P E ohne OCL: 00:11:05</p><p>T-P E mit OCL: 00:09:58</p><p></p><p>Es wurde also die Berechnungszeit für den bereits dreimal so schnellen ersten Durchgang nochmals halbiert. Das kann keinen Großen Effekt auf die Gesamtlaufzeit haben.</p><p></p><p></p><p>Ich habe also 1 Minute und 7 Sekunden durch Aktivierung der OCL-Beschleunigung gewonnen. Oder relativ ausgedrückt: Die Berechnungen erfolgen 10 % schneller.</p><p></p><p><strong>Gedankenexperiment:</strong></p><p></p><p>Ohne die Verlangsamung im zweiten Durchlauf, würde die Berechnung 9 Minuten und 35 Sekunden dauern - also 1 Minute und 30 Sekunden schneller durchlaufen. Damit könnte das T-P E theoretisch bis zu 13,5 % beschleunigt werden.</p><p></p><p>Das kann man natürlich noch auf die Spitze treiben und einfach die Zeit für die Revision 2200 ansetzen (wir ignorieren die Verbesserungen im 1. Durchlauf; 50,47 fps (7.779,52 kb/s)), die ja im zweiten Durchlauf allgemein etwas schneller ist.</p><p></p><p>r2200: 12,74 fps (8.002,16 kb/s) ---> 00:07:44</p><p></p><p>T-P E mit OCL: 00:08:57 ---> 00:02:08 schneller --> 19 % schneller</p><p>(ist aber natürlich eine Milchmädchen-Rechnung)</p><p></p><p></p><p>Für künftige 4k-Auflösungen könnte die OpenCL-Beschleunigung dann sicherlich noch etwas mehr bringen.</p></blockquote><p></p>
[QUOTE="Dr@, post: 4632903, member: 54308"] Wie die Aussagen von Steve Borho im Interview zeigen, liegt es nicht primär an OpenCL, dass ausschließlich die Berechnung der [I]lookahead[/I]-Funktion auf die GPU ausgelagert wurde. Alle anderen Teilaufgaben lassen sich eben nicht effizient genug auf die GPU übertragen, ohne dabei die Qualität und Effizienz von x264 zu reduzieren. Was schlicht darin begründet ist, dass CPUs und GPUs auf grundlegend anderen Architekturen aufbauen. Eigentlich müsste diese Herangehensweise honoriert werden, schließlich wurde die schlechte Bildqualität bisheriger GPU-beschleunigter Enkoder hier mehr als ein Mal - zurecht - angeprangert. Wer auf den heiligen Gral gehofft hat, muss natürlich extrem enttäuscht sein. Gerade wenn man die Ergebnisse im Two-Pass Encoding für die Tandems aus CPU und Grafikkarte betrachtet, wird auch klar warum die OpenCL-beschleunigte lookahead-Funktion nicht als Nachbrenner wirkt und somit auch nicht für gewaltige Leistungssteigerungen sorgen kann: Es wird eben nur die Analyse des Ausgangsmaterials beschleunigt. Die eigentliche Kodierung des Videos findet ausschließlich auf den CPU-Kernen statt. Die viel höheren Werte verpuffen dann aber, weil letztlich nur der sowieso schon viel schnellere Analysedurchgang beschleunigt wird. Hinzu kommt noch, dass bei aktivierter OCL-Beschleunigung die Analyse leicht andere Ergebnisse liefert, die zu einer rechenintensiveren Kodierung führen (z.B. mehr B-Frames und/oder längere Bewegungsvektoren). Dadurch wird der eh schon viel langsamere zweite Durchgang sogar noch weiter ausgebremst. Nehmen wir mal als konkretes Beispiel aus unseren Benchmarkergebnissen die Kombination aus Intel Core i7 2600K und GeForce GTX 580 zur Hand: Anzahl der Frames: 5906 1st Pass ohne OCL: 36,29 fps (7.782,56 kb/s) ---> 00:02:43 (2 Minuten und 43 Sekunden) 1st Pass mit OCL: 80,76 fps (7.772,53 kb/s) ---> 00:01:13 2nd Pass ohne OCL: 11,77 fps (8.001,89 kb/s) ---> 00:08:22 2nd Pass mit OCL: 11,24 fps (8.010,10 kb/s) ---> 00:08:45 T-P E ohne OCL: 00:11:05 T-P E mit OCL: 00:09:58 Es wurde also die Berechnungszeit für den bereits dreimal so schnellen ersten Durchgang nochmals halbiert. Das kann keinen Großen Effekt auf die Gesamtlaufzeit haben. Ich habe also 1 Minute und 7 Sekunden durch Aktivierung der OCL-Beschleunigung gewonnen. Oder relativ ausgedrückt: Die Berechnungen erfolgen 10 % schneller. [B]Gedankenexperiment:[/B] Ohne die Verlangsamung im zweiten Durchlauf, würde die Berechnung 9 Minuten und 35 Sekunden dauern - also 1 Minute und 30 Sekunden schneller durchlaufen. Damit könnte das T-P E theoretisch bis zu 13,5 % beschleunigt werden. Das kann man natürlich noch auf die Spitze treiben und einfach die Zeit für die Revision 2200 ansetzen (wir ignorieren die Verbesserungen im 1. Durchlauf; 50,47 fps (7.779,52 kb/s)), die ja im zweiten Durchlauf allgemein etwas schneller ist. r2200: 12,74 fps (8.002,16 kb/s) ---> 00:07:44 T-P E mit OCL: 00:08:57 ---> 00:02:08 schneller --> 19 % schneller (ist aber natürlich eine Milchmädchen-Rechnung) Für künftige 4k-Auflösungen könnte die OpenCL-Beschleunigung dann sicherlich noch etwas mehr bringen. [/QUOTE]
Zitate einfügen…
Verifizierung
Eine Münze hat wie viele Seiten?
Antworten
Foren
News und Artikel
Kommentare
Neuer Artikel: Bericht: x264 mit OpenCL-Beschleunigung
Oben
Unten