Was sind 2D-Videobeschleunigung und 3D-Beschleunigung?

13

In VirtualBox können Sie Ihre VM so einstellen, dass sie 2D-Videobeschleunigung und 3D-Beschleunigung verwendet ... Aber was ist das? Die Frage bezieht sich nicht auf ihre Verwendung in dieser Software, sondern allgemein.

Was sind 2D-Videobeschleunigung und 3D-Beschleunigung, wie funktioniert es und warum wird es verwendet?

DRz
quelle

Antworten:

14

Es gibt keine universelle Hardware. Zum Beispiel sind CPUs Turing-vollständig, was bedeutet, dass sie jede Berechnung durchführen können. Das heißt aber nicht, dass es schnell geht. Das Erstellen von Hardware für bestimmte Aufgaben kann zu einer enormen Leistungssteigerung führen.

So viele Bitcoin-Hashes können beispielsweise von verschiedenen Geräten pro Sekunde berechnet werden:

  • Intel Core i7 950 (CPU): 18,9 Mhash / s
  • AMD Radeon 7870 XT (GPU): 485 Mhash / s
  • BFL SC (dedizierter ASIC-Miner): 25000 Mhash / s

Alle Geräte im Vergleich verbrauchen ca. 150 W Leistung. Benchmark-Ergebnisse von bitcoin.it ).

CPU ist die Basisverarbeitungseinheit. Es ist gut bei Operationen, die sequentieller Natur sind und viel Verzweigung erfordern. (Ein Zweig ist, wenn der Prozessor abhängig von den Ergebnissen früherer Berechnungen auswählen muss, was als nächstes zu tun ist.)

Dann gibt es GPU. GPUs sind darauf spezialisiert, verschiedene Dinge, insbesondere 3D-Grafiken, effizient zu zeichnen. Sie können mit Texturen, Beleuchtung und anderen Dingen umgehen, die selbst für moderne CPUs viel zu anspruchsvoll wären. Das ist im Grunde, was 3D-Beschleunigung bedeutet und GPU ist ein 3D-Beschleuniger . In den frühen Tagen des Rechnens waren 3D-Beschleuniger zusätzliche Erweiterungskarten, die von Grafikkarten getrennt waren (z. B. 3dfx Voodoo ).

Als uns ausgefallene 3D-Grafiken langweilig waren, haben wir beschlossen, dass wir mehr Pixel in unseren Videos benötigen, und HD war geboren. Bald stellte sich heraus, dass CPUs wieder zu langsam sind, um hochauflösende Videos, die wir benötigen, in Echtzeit zu dekodieren. Die Hersteller haben begonnen, spezielle Videobeschleuniger in ihre Grafikkarten einzubetten. Diese waren in der Lage, HD-Videos effizient zu dekomprimieren. Das ist 2D-Videobeschleunigung .

Es gibt auch eine Reihe anderer Beschleuniger in modernen PCs. Zum Beispiel war PhysX ursprünglich eine separate Zusatzkarte für physikalische Berechnungen. Sie wurden später von NVIDIA erworben und jetzt können unsere Grafikkarten auch mit Physik umgehen. Sie können auch massiv parallele Berechnungen durchführen (viele Daten, dieselbe Operation wird auf alle angewendet, vorzugsweise keine Verzweigung).

Erwähnenswert ist möglicherweise die Intel Quick Sync-Technologie, die nicht nur die Videodecodierung, sondern auch die Codierung beschleunigt. Technisch gesehen ist es auch ein 2D-Videobeschleuniger, aber es ist ungewöhnlich.

Durch Aktivieren der 3D-Beschleunigung und der 2D-Videobeschleunigung in den VirtualBox-Maschineneinstellungen kann VirtualBox die Beschleunigungsfunktionen des Hosts virtualisieren und sie über einen virtuellen Grafikadapter dem Gast zugänglich machen. Es sind jedoch zusätzliche Treiber erforderlich, sodass Sie Guest Additions in Ihrer VM installieren müssen und die 2D-Videobeschleunigung nur bei Windows-Gästen funktioniert.

gronostaj
quelle