Ati Stream Avivo Video-Converter im Test mit Problemen
Nach AMDs vielversprechender Ankündigung von Ati Stream und besonders des Avivo-Encoders vor einigen Wochen waren wir neugierig, wie sich das im Gegensatz zu Nvidias und ETIs Badaboom-Lösung kostenlose Tool in der Praxis nutzen lässt.
Mit dem Catalyst 8.12 integriert AMD die neue Ati-Stream-Technologie in den Grafikkartentreiber für die Radeon-Reihe. Ati Stream lässt laut AMD zunächst auf HD-4000- und HD-3000-Modellen nutzen, welche auch vom Stream-SDK unterstützt werden. Die normalen Treiberfunktionen sind selbstverständlich für alle Radeon-Karten seit der 9500 integriert.
Da wir bereits mit der vorab zur Verfügung gestellten Treiberversion Probleme hatten, wollten wir auf die finale Catalyst-8.12-Version warten, um unsere Ergebnisse zu verifizieren - daher ist unser Praxistest auch mit ein wenig Verspätung fertiggeworden. Wir stehen derzeit mit AMDs technischem Support in Kontakt, um die Ursache dieser Probleme zu klären.
Ati Stream - was ist das?
Ati Stream ist eine Treibergrundlage für allgemeine Berechnungen mithilfe der programmierbaren Shader-Einheiten der Radeon-GPUs. Neben Anwendungen wie zum Beispiel Folding@Home können die bis zu 800 Recheneinheiten pro GPU theoretisch auch für die Beschleunigung von Video-Encoding oder -Bearbeitung eingesetzt werden. Ebenso sind Physikberechnungen mithilfe der GPU denkbar - die Möglichkeiten sind vielfältig.
Quelle: http://www.pcgameshardware.de
Ati Stream: Avivo Video-Converter im Praxistest: Im Basic-Modus wird Ihnen direkt der Avivo-Konverter angeboten
Wo finde ich den Avivo Video-Converter?
Wenn Sie den Catalyst-Treiber samt XCode, der als separater Download erhältlich ist, installiert haben, müssen Sie im CCC unter View die Option Basic View aktivieren - der dann aktivierbare Wizard führt Sie durch die nötigen Schritte des Avivo-Converters.
Innerhalb des Advanced View haben Sie keine Möglichkeit, den Avivo-Converter aufzurufen.
Avivo Video-Converter: Methode
Unsere Tests haben wir auf einem frisch installierten Windows Vista mit SP1 sowie aller Updates von Microsoft durchgeführt, aktuelle Treiber für den Realtek-Onboard-Sound sowie einen aktuellen DivX-Codec installierten wir ebenfalls. Die Basis des Systems bildete dabei ein X48-Mainboard mit einer Core 2 E8500-CPU, die wir für diesen Test mit Standard-Takt betreiben. 4.096 MiByte DDR2-800-RAM hielten die nötigen Daten vor. Als Grafikkarten kamen neben den laut Catalyst-Release-Notes unterstützten HD-4850- und HD-4670-Modellen testweise auch solche aus der HD-3800-Reihe und eine X800 XL zum Einsatz. Die technischen Grundlagen letzterer verhindern wirkungsvoll, dass das Ati Stream SDK hier beschleunigend wirkt, da sie lediglich Shader-Model 2.x unterstützt.
Als primäres Testobjekt wählten wir einen HDTV-Mitschnitt in Full-HD-Auflösung von ca. 5 Minuten Länge, welcher im MPEG2-Format rund 651 MByte Speicherplatz belegte. Zur Verifizierung der Ergebnisse wiederholten wir Teile der Messungen mit einem WMV-Schnipsel in 720p-Auflösung und probierten auch andere Zielformate wie DVD oder Ipod-Video aus.
Die Datei sollte vom Avivo-Encoder in einen MPEG-4-Container mit der maximal einstellbaren Qualität von 3,53 MBit pro Sekunde übertragen werden - eine Auswahl der Zielauflösung oder sonstige Qualitätsoptionen bietet der Avivo-Encoder derzeit nicht. Als Zielformate stehen noch einige weitere Optionen zur Verfügung wie zum Beispiel DVD, MPEG-2, Video CD, Ipod-Video und andere.
Bildergalerie
Quelle: http://www.pcgameshardware.de
Ati Stream: Avivo Video-Converter im Praxistest: CPU- und GPU-Belastung im PC Games Hardware Praxistest. Offenbar nutzt in unserem Testverfahren der Avivo Video-Converter die eingesetzte HD 4670 nicht.
Quelle: http://www.pcgameshardware.de
Ati Stream: Avivo Video-Converter im Praxistest: CPU- und GPU-Belastung im PC Games Hardware Praxistest. Mit einer X800 XL ohne Ati Stream-Unterstützung dauert das Encoding beinahe auf die Sekunde genauso lange, wie mit Stream-GPU.
Avivo Video-Converter: Ergebnis
Benchmark-Diagramme wollen wir uns an dieser Stelle sparen. Der Avivo-Encoder ist nach wie vor zwar eine der schnellsten Lösungen auf dem Markt, nutzte aber in unserem Test nicht erkennbar die GPU. Die Encodierung war innerhalb der Messtoleranz, die auch zwischen zwei aufeinander folgenden Durchläufen mit derselben Hard- und Software-Ausstattung auftrat, gleich schnell. Zwischen 80 und 90 Sekunden pendelten sich die Ergebnisse ein.
Parallele Anzeigen von GPU-z und dem Windows-Taskmanager ergaben eine durchgehende 100-Prozent-Auslastung beider CPU-Kerne und eine GPU-Last von zumeist 0 Prozent - die meiste Zeit erwachten die GPUs nicht einmal aus ihren 2D-Taktraten. Auch Lüfterdrehzahl und GPU-Temperatur stiegen während des Encodierens nicht an. Sprünge von bis zu 20% in der GPU-Auslastung hielten jeweils nur für Sekundenbruchteile an und auch der Quervergleich mit der X800-Karte bringt uns zum Ergebnis, dass auf unserem Testsystem die CPU die Arbeit verrichtete und das mit durchwachsener Qualität: Im WMV-Zielformat traten großflächig Bildfehler auf und auch die MPEG-4-Datei wies im Vergleich zu anderen Programmen keine gleichgute Bildqualität auf - auch andere Reviews wie das von PCPerspective.com haben dies bemängelt.
Einzig auffälliger Unterschied zwischen den Dateien, die mit offiziell unterstützten GPUs erzeugt wurden, zu denen, die von der X800 stammen, ist die Dateigröße.
Ati Stream Avivo Video-Converter: Zwischenfazit
Wie vor einigen Jahren, als Ati den Avivo-Converter zum ersten Mal vorstellte, ist auch heute keine wesentliche Nutzung der GPU zu erkennen. Die mäßíge Bildqualität und hohe CPU-Last machen das immerhin kostenlose Tool zurzeit nicht empfehenswert. Ein Nutzen der Stream-Technologie ist in unserem Test nicht erkennbar. Wir halten Sie auf dem Laufenden, was unsere Rücksprachen mit AMD ergeben.



die frage musst du den programmierern stellen "sollte" ist nicht gleich "muss".
schlieslich muss der gpu ein programmcode fuer ihre neue aufgabe übergeben werden bzw sie muss für diese aufgabe initialisiert werden und dann die daten
die sie bearbeiten soll uebergeben werden - wo da der hund begraben liegt
muss amd-ati rausfinden. denn nur die wissen was sie programmiert haben.
jedenfalls arbeitet es nicht so wie es von denen beschrieben bzw gebriesen wurde.
alles was wir hier machen sind spekulationen und helfen auch nicht weiter.
Wenn AMD-ati es nicht für nötig hält ihre programme zu testen weil sie es nicht für wichtig erachten (beachten es evtl als dreingabe) und es erst recht nicht für nötig erachten auf emails zu antworten (ich hab das schon vor 6 monaten es ihnen mal geschrieben das das ding abstürzt und sich nicht ins
vista64 mce richtig einbindet und es nicht wie beschrieben, das gegenteil von einer cpuentlastung ist, bei mp4 bildfehler verursacht und stat pal ausgabe ntsc rauskommt - weder der sache nachgehen noch eine antwort schreiben
dann ist das ..,-
Und ATI Stream soll ja gerade dafür sorgen, dass man nicht zu sehr an die konkrete H/W gebunden ist. GPGPU gibt es schon seit Jahren und früher wurde das über normale Shader gemacht. Die aktuelle Entwicklung soll es nur erheblich vereinfachen.
ich kahm nur drauf (hab es aber lange nicht mehr probiert) weil ich am anfang des jahres von ein windows das netframeworks deinstallieren musste und es neuinstallieren musste und es nach der deinstallierung auf biegen und brechen nur fehlermeldung ausgab und den atitreiber nicht geladen hat.
zudehm es mir von ein anderen programmierer aus der uni gesagt wurde das der treiber auf net basiert. (hab leider auch kein kontakt zu ihn)
.NET dient auch nur dazu einem bestimmte Aufgabe abzunehmen, so ne Art Baukasten der fertige Teile enthält, die man dann in sein Programm einbinden kann. Solche Lowlevel Geschichten wie beim Treiber sind darin natürlich nicht enthalten. Aber ne GUI usw. ist damit schnell zusammengeklickt.
die frage musst du den programmierern stellen "sollte" ist nicht gleich "muss".
schlieslich muss der gpu ein programmcode fuer ihre neue aufgabe übergeben werden bzw sie muss für diese aufgabe initialisiert werden und dann die daten
die sie bearbeiten soll uebergeben werden - wo da der hund begraben liegt
muss amd-ati rausfinden. denn nur die wissen was sie programmiert haben.
jedenfalls arbeitet es nicht so wie es von denen beschrieben bzw gebriesen wurde.
alles was wir hier machen sind spekulationen und helfen auch nicht weiter.
Wenn AMD-ati es nicht für nötig hält ihre programme zu testen weil sie es nicht für wichtig erachten (beachten es evtl als dreingabe) und es erst recht nicht für nötig erachten auf emails zu antworten (ich hab das schon vor 6 monaten es ihnen mal geschrieben das das ding abstürzt und sich nicht ins
vista64 mce richtig einbindet und es nicht wie beschrieben, das gegenteil von einer cpuentlastung ist, bei mp4 bildfehler verursacht und stat pal ausgabe ntsc rauskommt - weder der sache nachgehen noch eine antwort schreiben
dann ist das ..,-
zu 2. vieleicht haben die schon was geändert an den treibern.
ich kahm nur drauf (hab es aber lange nicht mehr probiert) weil ich am anfang des jahres von ein windows das netframeworks deinstallieren musste und es neuinstallieren musste und es nach der deinstallierung auf biegen und brechen nur fehlermeldung ausgab und den atitreiber nicht geladen hat.
zudehm es mir von ein anderen programmierer aus der uni gesagt wurde das der treiber auf net basiert. (hab leider auch kein kontakt zu ihn)
1. es gibt mehrere gpus erstmal die zur untersiedlichen hauptserie
x1x00 - x2x00 - hd3x00 und hd4x00 serie die eine untersiedliche struktur
haben müssten dan muss der code es auch noch beachten das einheiten abgeschaltet sind.
( ich kenn ein diplom programmierer der sich mit dsp beschäftigt hat
und ich selbst hab mich nur mit anpassung beschäftigt bei einer amiga soundkarte
mit motorola dsp)
um herrauszufinden was da nicht funktioniert brauch ich den kompletten
sourcecode und das sdk - aber ati gibt selbst mit verschwiegenheitsklauseln nichts raus
( gab schon versuche ati karten auf ppc- amigas bzw 68k-PPC nutzbar zu machen)
CUDA Programme müssen ja auch nicht für ne GT8800 und ne GTX280 neu kompiliert werden, weil die H/W ne andere ist. Genauso läuft x86-Code auf Athlons und Pentiums.
oder denkst du warum es installiert sein muss, garantiert nich
nur wegen controllcenter - wenn du xp hast kannst du ja mal anschließend
das netframeworks komplett deinstallieren und schauen was passiert.
Es gab ja auch lange Zeit nach dem CCC immer noch Treiber, die das alte Panel hatten und dann auch kein .NET brauchten. Würde das vom Treiber verlangt, so hätten die wohl kaum funktioniert.
1. es gibt mehrere gpus erstmal die zur untersiedlichen hauptserie
x1x00 - x2x00 - hd3x00 und hd4x00 serie die eine untersiedliche struktur
haben müssten dan muss der code es auch noch beachten das einheiten abgeschaltet sind.
( ich kenn ein diplom programmierer der sich mit dsp beschäftigt hat
und ich selbst hab mich nur mit anpassung beschäftigt bei einer amiga soundkarte
mit motorola dsp)
um herrauszufinden was da nicht funktioniert brauch ich den kompletten
sourcecode und das sdk - aber ati gibt selbst mit verschwiegenheitsklauseln nichts raus
( gab schon versuche ati karten auf ppc- amigas bzw 68k-PPC nutzbar zu machen)
2. sie benutzen net.frameworks zur programmierung auch der treiber.
oder denkst du warum es installiert sein muss, garantiert nich
nur wegen controllcenter - wenn du xp hast kannst du ja mal anschließend
das netframeworks komplett deinstallieren und schauen was passiert.
Ich glaube das es nicht funktioniert weil es zu viele GPU´s sind.
I nehme an das sie genau so gehändelt werden wie DSP´s und ihr treiber einfach nicht den passenden code in die karte läd um die encoder arbeiten zu machen und die daten dann über die karte kopiert (den die Gpu weis erst was sie machen mus wenn man es ihr sagt).
Endweder der im Treiber hat nich die pasenden Gpu codes zu den verschiedenen GPU´s, oder ein fehler in der initialiesierung der Gpu´s liegt vor (was bei den meisten DSP´s der fall ist) und er läuft ueber ein einprogrammierten hilfscode um probleme zu vertuschen.