Frage von Wurzelkaries:Hallo ihr Wissenden,
ich habe heute meine neue Nvidia GTX780 verbaut und stelle mit erschrecken fest, dass das Exportieren nun statt kürzer sehr viel länger dauert als mit meiner alten GTX580.
Mein Rechner:
I7 3930 3,2 GHz
24GB Ram
Win7 64bit
neuer Nvidia Treiber 331.82
Premiere Pro CS6
Nvidia GTX 780
Seagate Barracuda 7200.12 1TB (ST31000528AS)
Karte wurde nach Bearbeitung der cuda_supported-cards.txt auch erkannt.
Mercury engine GPU Beschleunigung kann ich auswählen.
Beispiel: Ein 9minuten Film mit mxf footage oder auch dnxhd footage braucht mit GPU Beschleunigung fast eine Stunde zum Export in ein h.264 für Youtube.
Mit der GTX580 waren das etwa 30 Minuten
Was mache ich hier falsch?
War das ein Fehler die GTX 780 zu kaufen?
Ich hatte mich hier informiert
http://www.studio1productions.com/Artic ... eCS5-2.htm
Danke für euren Rat.
Stefan
Antwort von Fader8:
Kurios...würde mich auch wunder nehmen!
Antwort von Teppi:
ich möge falsch liegen, aber wird beim rendern nicht ausschließlich die cpu genutzt?
Antwort von rudi:
Es gibt auch noch ein anderen GPU-Problemchen, das bisher kaum jemand zur Sprache bringt.
CUDA (und größtenteils auch OpenCL) müssen ihre Rechenaufgaben immer auf die einzelnen Kerne verteilen. Dabei gibt es immer verschieden viele Shader Cluster, die wiederum verschieden viele Stream-Prozessoren innehaben. Um die Sache noch komplizierter zu machen: Die sind nicht immer alle frei und arbeiten je nach Karte mit unterschiedlichen DMA-Blockgrößen optimal oder eben nur mit Stalls (d.h. sie müssen mal einen Takt aussetzen um auf den Speicherzugriff zu warten).
Eigentlich müsste/könnte/sollte man jede Applikation auf jede Grafikkarte hin optimieren. Und zwar in erste Linie auf wie viele Kerne man das Problem mit welchen Speichergrößen aufteilt. Passt diese Aufteilung einer Grafikkarte nicht, dann "hagelt es Stalls". Sprich: Strafzyklen in der GPU, die das ganze System ausbremsen. Auch hat jede Karte ein anderes Speicherzugriffsverhältnis. D.h. manche Karten haben wenige Kerne, die schnell auf viel Speicher zugreifen und auch große Blöcke benutzen können. Andere können schneller rechnen, haben evtl. sogar viel mehr Kerne, aber bekommen anteilig nur kleine Speicherhappen, die dauernd kollidieren. Je nach Programm-Problem kann die eine Architektur besser als die andere....
Da könnte ich noch viel schreiben, aber kurz gesagt:
1. Das tut sich kein Hersteller an. So war unter Premiere lange die GTX285 schneller als alle Nachfolger, weil Adobe immer noch lange auf diese Karte hin optimiert hat.
2. Mit der Zeit werden die gängige Karten im Markt besser unterstützt. Die GTX780 wird sicherlich in Zukunft noch besser optimiert werden.
3. Genau dafür ist eigentlich die Zertifizierung gedacht: Dass ein Hersteller sich auf eine Hardware-Komponente festlegt und genau daraufhin sein Programm optimiert.
Punkt 3 könnte übrigens tatsächlich noch ein Punkt für Apples Mac Pro werden, falls Blackmagic den Rechner als Resolve Workstation zertifiziert (was IMHO sicher kommt). Da können die dann die Blockzugriffe passgenau optimieren.
Auf AMD Consumer Karten scheinen sie dagegen keinen großen Bock zu haben, obwohl die vom Specs/Preisverhältnis noch besser aussehen.
Und Adobe wird sicherlich auch auf dem Mac Pro gutaussehen wollen.
Antwort von Angry_C:
Sehr merkwürdig. Ich bin vor einiger Zeit von der GTX580 auf die GTX770 umgestiegen und da wurde die Renderzeit etwas kürzer. Nicht weltbewegend, aber dennoch merkbar.
Merkwürdig auch deshalb, weil die Zeit an sich für ein 9 Minuten Video mit einer, bzw. einer halben Stunde schon ziemlich lang ist. Hast du denn so viele Effekte draufgelegt, und was für den vorher-nachher-Vergleich noch wichtiger ist, hast du die gleichen Effekte draufgelegt? Es müssen natürlich welche sein, die für die Mercury Engine bestimmt sind.
Antwort von Wurzelkaries:
Erst mal vielen Dank für eure Antworten.
Ich habe es ausprobiert und beim Rendern der Vorschau und beim Exportieren wird die GPU benutzt...soweit man da Afterburner trauen kann.
Das MSI Control Center Programm sagt mir, dass nur 3 Kerne meine 6 Kerne zu 100% genutzt werden und die anderen 3 bei 50% sind.
Der Ressourcenmonitor von Win7 sagt allerdings, dass alle 6 Kerne zu 100% ausgelastet seien.
Aber naja...ob dem zu trauen ist weiß ich nicht.
Ich habe mittlerweile auf Adobe Creative Cloud umgesattelt und benutze somit nun Premiere Pro CC.
Bei einem reinen avchd footage mit three way color corrector wurde beim exportieren nur die CPU benutzt.
In dem oben von mir beschriebenen Projekt handelt es sich um ein Greenscreen footage mit den Effekten Ultrakey, Garbage matte, unsharp mask, drop shadow und neat video . Source war ein mxf footage aus einer Canon XF100.
Den mxf container hatte ich in einem anderen Projekt mit gleichen Effekten vorher in dnxhd konvertiert und "gefühlt" wurde das etwas schneller exportiert.
Ich hatte es aber noch nicht mit den Resourcenmonitor und Afterburner ausporbiert
LG
Stefan
Antwort von freezer:
Dann check mal, welche Neatvideo Version Du hast. Deine GTX 780 hat ja 3 GB RAM - ältere Versionen von Neatvideo kamen mit der Erkennung ins Schleudern und starben dann an Speicherunterernährung.
Antwort von Wurzelkaries:
Hi,
danke für den Tipp
Ich habe Neatvideo 3.5
Antwort von freezer:
Ok, da ist der Fehler bereits behoben.
Antwort von Gore:
Es gibt auch noch ein anderen GPU-Problemchen, das bisher kaum jemand zur Sprache bringt.
CUDA (und größtenteils auch OpenCL) müssen ihre Rechenaufgaben immer auf die einzelnen Kerne verteilen. Dabei gibt es immer verschieden viele Shader Cluster, die wiederum verschieden viele Stream-Prozessoren innehaben. Um die Sache noch komplizierter zu machen: Die sind nicht immer alle frei und arbeiten je nach Karte mit unterschiedlichen DMA-Blockgrößen optimal oder eben nur mit Stalls (d.h. sie müssen mal einen Takt aussetzen um auf den Speicherzugriff zu warten).
Eigentlich müsste/könnte/sollte man jede Applikation auf jede Grafikkarte hin optimieren. Und zwar in erste Linie auf wie viele Kerne man das Problem mit welchen Speichergrößen aufteilt. Passt diese Aufteilung einer Grafikkarte nicht, dann "hagelt es Stalls". Sprich: Strafzyklen in der GPU, die das ganze System ausbremsen. Auch hat jede Karte ein anderes Speicherzugriffsverhältnis. D.h. manche Karten haben wenige Kerne, die schnell auf viel Speicher zugreifen und auch große Blöcke benutzen können. Andere können schneller rechnen, haben evtl. sogar viel mehr Kerne, aber bekommen anteilig nur kleine Speicherhappen, die dauernd kollidieren. Je nach Programm-Problem kann die eine Architektur besser als die andere....
Da könnte ich noch viel schreiben, aber kurz gesagt:
1. Das tut sich kein Hersteller an. So war unter Premiere lange die GTX285 schneller als alle Nachfolger, weil Adobe immer noch lange auf diese Karte hin optimiert hat.
2. Mit der Zeit werden die gängige Karten im Markt besser unterstützt. Die GTX780 wird sicherlich in Zukunft noch besser optimiert werden.
3. Genau dafür ist eigentlich die Zertifizierung gedacht: Dass ein Hersteller sich auf eine Hardware-Komponente festlegt und genau daraufhin sein Programm optimiert.
Ich bin Anfänger und kenne mich noch nicht so gut mit all diesen Sachen aus. Aber habe ich das jetzt richtig verstanden, dass weniger CUDA-Kerne vorteilhafter sind als richtig viele?