1. Foren
  2. Kommentare
  3. PC-Hardware
  4. Alle Kommentare zum Artikel
  5. › Huma: Gemeinsamer Speicher für CPU…

Warum ist die GPU so schnell ?

Helft uns, die neuen Foren besser zu machen! Unsere kleine Umfrage dauert nur wenige Sekunden!
  1. Thema

Neues Thema Ansicht wechseln


  1. Warum ist die GPU so schnell ?

    Autor: savejeff 30.04.13 - 08:08

    Man sieht ja auf der ersten Grafik GFlop Vergleiche von GPU und CPU.

    Die GPU übertrifft hier ja stark die CPU
    Wie kann das sein, wenn doch die CPU auf schnelle Berechnung konzipiert ist und die GPU eher für Grafik Berechnung (shader usw.) gemacht ist?

  2. Re: Warum ist die GPU so schnell ?

    Autor: JarJarThomas 30.04.13 - 08:11

    eine gpu hat mehrere parallel abarbeitende rechenwerke (shadereinheiten).
    jede einzelne shadereinheit ist viel langsamer als eine cpu.

    Aber eine cpu kann aktuell pro kern maximal 4 befehle parallel rechnen.

    eine gpu mit 1000 shadern kann aber 1000 befehle parallel rechnen.

    die shader sind also langsamere, stark eingeschränkte miniprozessoren von denen aber verdammt viele existieren.

    Wenn du nun ein problem hast dass du stark parallelisieren kannst, dann ist die gpu viel schneller (abgesehen von speichertransfer der wirklich richtig zeit kostet).

    hast du aber ein sequentielles problem also etwas was nicht parallel abgearbeitet werden kann ist es auf der cpu viel schneller, da auch auf der gpu nur 1 shader von den 1000 arbeiten könnte

  3. Re: Warum ist die GPU so schnell ?

    Autor: savejeff 30.04.13 - 08:17

    Aaaah das macht sinn :]
    Vielen Dank.

  4. Re: Warum ist die GPU so schnell ?

    Autor: spambox 30.04.13 - 08:24

    Was glaubst du denn, wie Grafik berechnet wird? Durch Abzählen von Fingern?
    Nein, die GPU ist im Grunde ein Prozessor, der wie die CPU arbeitet.

    Der Unterschied ist nur...bei der CPU hast du z.B. 4 'große' Kerne und bei der GPU z.B. 400 kleine Kerne. Durch massive Parallelisierung kommt die GPU dabei auf höhere Leistungen.

    Ein Beispiel zum Vergleich:
    CPU: Intel E4600 3GHz liefert ca. 11 GFlops
    GPU: NVidia Geforce GTX Titan liefert ca. 4500 GFlops

  5. Re: Warum ist die GPU so schnell ?

    Autor: Bujin 30.04.13 - 10:05

    Nur so als "Additional Smartshit":

    FLOP heiß Floating Point Operation, also Fließkommaberechnung.

    1.23555578 * 5.64445432 = x

    Man unterscheidet dabei in der Genauigkeit (Precision). Solche von einander unabhängigen Berechnungen können beliebig parallelisiert werden. Solche Berechnungen finden beim Spielen ständig statt. Wenn man eine Oberfläche hat, die aus Dreiecken besteht, muss man für jedes Dreieck separat berechnen wie sich zB. das Licht einer Lichtquelle relativ zum Spieler darauf spiegelt.

    Hat man in einer Szene zB. 1.000.000 Dreiecke könnte man mit 4.5 TFLOPS theoretisch 4500 fps erziehlen. Allerdings gibt es da noch mehr als nur Spiegelungen.

    edit: Das Gitter aus Dreiecken "Mesh", kann mit so genannten "Meshern" von einem 3D Objekt automatisiert erzeugt werden.



    1 mal bearbeitet, zuletzt am 30.04.13 10:08 durch Bujin.

  6. Re: Warum ist die GPU so schnell ?

    Autor: Nephtys 30.04.13 - 10:24

    JarJarThomas schrieb:
    --------------------------------------------------------------------------------
    > eine gpu hat mehrere parallel abarbeitende rechenwerke (shadereinheiten).
    > jede einzelne shadereinheit ist viel langsamer als eine cpu.
    >
    > Aber eine cpu kann aktuell pro kern maximal 4 befehle parallel rechnen.
    >
    > eine gpu mit 1000 shadern kann aber 1000 befehle parallel rechnen.
    >
    > die shader sind also langsamere, stark eingeschränkte miniprozessoren von
    > denen aber verdammt viele existieren.
    >
    > Wenn du nun ein problem hast dass du stark parallelisieren kannst, dann ist
    > die gpu viel schneller (abgesehen von speichertransfer der wirklich richtig
    > zeit kostet).
    >
    > hast du aber ein sequentielles problem also etwas was nicht parallel
    > abgearbeitet werden kann ist es auf der cpu viel schneller, da auch auf der
    > gpu nur 1 shader von den 1000 arbeiten könnte


    Man muss hier zur Vollständigkeit noch anhängen, dass in der Grafikkarte Registersätze gewöhnlich nicht standardisiert sind, und schon garnicht 48 bit groß sind wie bei CPUs. Stattdessen gibt es kleinere Register, zB mit 11 bit oder 8bit oder 24bit.
    Um die maximale Parallelität zu erreichen musst du also auch die 8bit Register nutzen, hast da aber nur 8bit für die Genauigkeit.
    Das bedeutet du kannst Berechnungen enorm schnell parallel durcharbeiten, solange Genauigkeit eine kleinere Rolle spielt.
    In der Grafikberechnung ist das der Fall, denn das menschliche Auge kann die kleineren Rundungsfehler und Co. kaum ausmachen, vorallem bei schneller Echtzeitgrafik.

  7. Re: Warum ist die GPU so schnell ?

    Autor: Endwickler 30.04.13 - 10:44

    Nephtys schrieb:
    --------------------------------------------------------------------------------
    > ...
    > In der Grafikberechnung ist das der Fall, denn das menschliche Auge kann
    > die kleineren Rundungsfehler und Co. kaum ausmachen, vorallem bei schneller
    > Echtzeitgrafik.

    Bestimmt gibt es Menschen, die behaupten, dass sie diese Ungenauigkeiten wahrnehmen und dass sie sich daran schon lange stören.

  8. Re: Warum ist die GPU so schnell ?

    Autor: non_sense 30.04.13 - 11:35

    Endwickler schrieb:
    --------------------------------------------------------------------------------
    > Bestimmt gibt es Menschen, die behaupten, dass sie diese Ungenauigkeiten
    > wahrnehmen und dass sie sich daran schon lange stören.

    Falls es solche Menschen gibt, sind es Spinner, da eh eine Rasterung stattfindet und es dann egal ist, ob ein Pixel die Koordinaten
    x=65.345234353243242 y=432.324353233453 z=765.7653435664534
    oder
    x=65 y=432 z=766
    hat.

    Darum ist die Genauigkeit bei Grafikberechnungen nicht ganz so wichtig.

  9. Re: Warum ist die GPU so schnell ?

    Autor: tritratrulala 30.04.13 - 13:16

    savejeff schrieb:
    --------------------------------------------------------------------------------
    > Man sieht ja auf der ersten Grafik GFlop Vergleiche von GPU und CPU.
    >
    > Die GPU übertrifft hier ja stark die CPU

    Eine GPU ist "dumm". Sie bietet viel Roh-Rechenleistung (viele ALUs/FPUs), aber ist nicht besonders schlau darin, Programmfluss zu steuern oder den Speicherzugriff effizient zu gestalten. Deshalb eignen sich GPUs für trivial parallelisierbare Batch-Aufgaben recht gut.

    Bei CPUs ist es genau anders herum: es gibt wenig ausführende Einheiten, aber diese werden durch verschiedene Maßnahmen (caches, branch prediction, OOOP, etc.) ständig effizient ausgelastet. Davon profitieren andere Workloads, z.B. solche, bei denen Branching häufig zwingend erforderlich ist.

    Übrigens: bitte nicht von den astronomischen Kernanzahlen bei den GPUs beeindrucken lassen. Diese Zahlen sind pures Marketing und haben nichts mit der tatsächlichen Anzahl an Kernen (nach üblicher Definition) zu tun. Moderne GPUs haben 16-32 Kerne.

  10. Re: Warum ist die GPU so schnell ?

    Autor: Max-M 30.04.13 - 15:06

    Was man auch noch nicht vergessen darf:
    GPUs sind spezialisierte Chips, die auf starke Parallelisierung bauen, CPUs sind universell ausgelegt und arbeiten eher sequentiell.

  11. Re: Warum ist die GPU so schnell ?

    Autor: irata 01.05.13 - 14:09

    savejeff schrieb:
    --------------------------------------------------------------------------------
    > Man sieht ja auf der ersten Grafik GFlop Vergleiche von GPU und CPU.
    >
    > Die GPU übertrifft hier ja stark die CPU
    > Wie kann das sein, wenn doch die CPU auf schnelle Berechnung konzipiert ist
    > und die GPU eher für Grafik Berechnung (shader usw.) gemacht ist?

    Zwei Faustregeln:
    1. Hardware ist schneller als Software.
    Wenn eine Berechnung in der Hardware "fest verdrahtet" ist, wird diese üblicherweise wesentlich schneller ausgeführt als eine reine Softwarelösung.
    Dafür ist Software flexibel, und kann beliebige Berechnungen durchführen.

    2. Spezialisten sind schneller als Generalisten.
    Hardware für spezielle Lösungen (Grafikberechnungen) ist schneller als Hardware für generelle Lösungen (CPU). Dafür sind die Spezialisten eingeschränkt auf vorgegebene Aufgaben. Gleiches Prinzip wie oben.

    Es gäbe da noch eine dritte Regel, "Analog ist schneller als digital", aber das ist ein anderes Thema ;-)

  12. Re: Warum ist die GPU so schnell ?

    Autor: Lala Satalin Deviluke 01.05.13 - 15:31

    Bei 8K Monitoren könnte man das dann schon merken. ;)

    Grüße vom Planeten Deviluke!

  13. Re: Warum ist die GPU so schnell ?

    Autor: non_sense 02.05.13 - 08:17

    Lala Satalin Deviluke schrieb:
    --------------------------------------------------------------------------------
    > Bei 8K Monitoren könnte man das dann schon merken. ;)

    Nein, da schon gar nicht ...
    Eine Fließkomma-Berechnung macht man in der Computergrafik nur, weil man nicht mit absoluten Pixelzahlen rechnen kann, sondern man muss die Auflösung relativ betrachten. In der finalen Rasterung sind dann die Fließkomma-Werte hinfällig und werden auf ganze Zahlen gerundet und ggf. skaliert. Ob ein Pixel um ein Pixel nach links oder rechts verschoben ist, sieht man bei 8K sowieso nicht mehr. Dafür hat das Auge die einzelnen Punkte schon zu sehr in ein Brei vermatscht.



    1 mal bearbeitet, zuletzt am 02.05.13 08:24 durch non_sense.

  14. Re: Warum ist die GPU so schnell ?

    Autor: tingelchen 07.05.13 - 14:09

    Ja, die gibt es ;) Ich bin einer davon und ich wette das jeder, der schon einmal ein Spiel gespielt hat, ebenfalls diese Ungenauigkeit wahr genommen hat.

    Betrachtet man ein einzelnes Bild, so ist keine Ungenauigkeit aus zu machen, da wie schon angemerkt die Rasterisierung aus relativen Werten mit einfacher Genauigkeit auf ganze Pixel gemacht werden müssen. Da ein Monitor nun mal kein halbes Pixel darstellen kann :)

    Aber in der Bewegung kann man diese sehen. Meistens sieht man dies beim sogenannten Z Fighting. Welche eben aus dieser Ungenauigkeit resultiert. Stark kommt dies zum tragen wenn der Z-Buffer aus Realen Zahlen besteht und 2 Flache Elemente nah übereinander liegen (vom Betrachter gesehen). Z.B. bei einem Strand ;)

  15. Re: Warum ist die GPU so schnell ?

    Autor: tingelchen 07.05.13 - 14:40

    Das ist so nicht ganz korrekt :) An sich hast du recht. Die hohe Parallelisierung macht den Unterschied.

    Allerdings gibt es in GPU's keine echten Shader Einheiten mehr, wie man sie noch von damals kennst, als man die Fixed Function Pipeline eingemottet hat, bzw. diese durch integrierte Shader Programme ersetzt hat.

    GPU's bestehen nur noch aus kleinen Rechenwerken, die für eine bestimmte Aufgabe spezialisiert werden (durch Software). Seit der Einführung von Sprungbefehlen sind wir über den Stand von Shader Programmen hinaus.
    Eine CPU kann nicht für eine Aufgabe spezialisiert werden.

    Ein einzelner GPU Kern ist nicht langsamer als ein Kern einer CPU. Nicht wenn es um die Berechnung von Fließkommazahlen geht ;) Da hilft auch der höhere Takt der CPU nichts.

    Darüber hinaus arbeitet eine GPU mit parallelem Speicherzugriff. Das ist einerseits unglaublich praktisch und schnell. Andererseits muss man bei der Gestaltung seines Programms darauf achten das sich die Kerne nicht gegenseitig behindern. Ansonsten gibt es einen massiven Performance Einbruch. Es ist daher sehr wichtig wo und wie die Daten im Speicher abgelegt werden.
    Eine CPU arbeitet mit seriellem Speicherzugriff. Bzw. mit Multi Channel Support. Je nach Speicher Controller und Positionierung der Riegel in den verfügbaren Slots.

    Und zu guter letzt. Grafikkarten verwenden GDDR5 Speicher. Welcher deutlich schneller ist als DDR3 Speicher.


    Wenn die neuen APU's daher GDDR5 Speicher verwenden können, wäre das eine gute Beschleunigung. Wenn die CPU nicht ständig auf die Peripherie warten müsste :( Denn ein weiterer Grund warum GPU's so schnell arbeiten können, sie müssen auf nichts warten. Denn alle Daten sowie das dazugehörige Programm werden vorgeladen.
    Daher hat man als Anwender meist mehr davon, wenn langsame Komponenten wie Bus Systeme oder Festplatten schneller werden.

  1. Thema

Neues Thema Ansicht wechseln


Um zu kommentieren, loggen Sie sich bitte ein oder registrieren Sie sich. Sie müssen ausserdem in Ihrem Account-Profil unter Forum einen Nutzernamen vergeben haben. Zum Login

Stellenmarkt
  1. über Hays AG, Berlin
  2. Deutsche Bundesbank, Frankfurt am Main
  3. Prodatic-EDV-Konzepte GmbH, Wermelskirchen
  4. Porsche AG, Weilimdorf

Golem pur
  • Golem.de ohne Werbung nutzen

Anzeige
Spiele-Angebote
  1. 25,99€
  2. 21€
  3. 4,99€


Haben wir etwas übersehen?

E-Mail an news@golem.de


Programm für IT-Jobeinstieg: Hoffen auf den Klebeeffekt
Programm für IT-Jobeinstieg
Hoffen auf den Klebeeffekt

Aktuell ist der Jobeinstieg für junge Ingenieure und Informatiker schwer. Um ihnen zu helfen, hat das Land Baden-Württemberg eine interessante Idee: Es macht sich selbst zur Zeitarbeitsfirma.
Ein Bericht von Peter Ilg

  1. Arbeitszeit Das Sechs-Stunden-Experiment bei Sipgate
  2. Neuorientierung im IT-Job Endlich mal machen!
  3. IT-Unternehmen Die richtige Software für ein Projekt finden

Weclapp-CTO Ertan Özdil: Wir dürfen nicht in Schönheit und Perfektion untergehen!
Weclapp-CTO Ertan Özdil
"Wir dürfen nicht in Schönheit und Perfektion untergehen!"

Der CTO von Weclapp träumt von smarter Software, die menschliches Eingreifen in der nächsten ERP-Generation reduziert. Deutschen Perfektionismus hält Ertan Özdil aber für gefährlich.
Ein Interview von Maja Hoock


    Fiat 500 als E-Auto im Test: Kleinstwagen mit großem Potenzial
    Fiat 500 als E-Auto im Test
    Kleinstwagen mit großem Potenzial

    Fiat hat einen neuen 500er entwickelt. Der Kleine fährt elektrisch - und zwar richtig gut.
    Ein Test von Peter Ilg

    1. Vierradlenkung Elektrischer GMC Hummer SUV fährt im Krabbengang seitwärts
    2. MG Cyberster MG B Roadster mit Lasergürtel und Union Jack
    3. Elektroauto E-Auto-Prämie übersteigt in 2021 schon Vorjahressumme