Das war ein der letzten Bildchen vom Dienstag.
Das soll heißen wir haben entweder in ein Gehäuse rein mehrere CPUs oder wir haben mehrere
Gehäuse mit jeweils einer CPU oder wir haben den letzten Schritt gesehen mehrere Gehäuse
mit jeweils mehreren CPUs drin oder mehreren Cores drin einfach schlicht oben Performance.
Performance, Performance, Performance.
Ja wir haben vorher gesehen so ein CPU Core noch mehr Performance einzuhauchen.
Ja was ginge da noch?
Können wir nochmal kurz zusammenfassen was könnte man dann erster Schritt in eine Pipeline
noch einbauen um die Performance zu erhöhen?
Also das eine war, das haben wir immer schon gesagt, das wäre jetzt Performance vom Gesamtrechner
erhöht aber jetzt von der Pipeline an sich ja nicht die macht immer noch mit jedem Takt
ein Ergebnis.
Jetzt nur aufgeteilt auf mehreres Flets.
Einmal hatten wir Pipeline Länge, machen wir sie größer, warum machen wir sie größer?
Wie war das noch?
Weil die dann kleiner werden und dementsprechend schneller werden, genau.
Da haben wir immer schon gesehen, naja das ist letztendlich auch begrenzt, so eine Handvoll
Gatterlaufzeiten die braucht man schon irgendwie.
Also wie gesagt so Größenordnung mit vier Gatterlaufzeiten versucht man heutzutage auszukommen.
Ja Hut ab wer es schafft.
Weniger wird es einfach nicht und insofern macht das jetzt auch nicht viel Sinn die Pipelines
länger und länger zu machen.
Da ist einfach nichts mehr.
Jo, zweiter Punkt den wir hatten, gut vorwartigen, wir brauchen nichts dollen, wir hatten Sprungvorhersage
wir laufen immer richtig, sprich mit jedem Takt ein Ergebnis.
Ja und nun?
Wo kann man jetzt noch was drehen?
Vektorinstitution.
Das wäre noch ein Punkt, genau.
Das müsste jetzt nicht unbedingt ein Vektor sein, aber können Vektoroperationen sein,
vielleicht allgemeiner gesagt komplexere Operationen.
Zum Beispiel beim Vektor, ich rechne nicht eine Addition aus, sondern ich addiere einen
ganzen Vektor auf.
Aber auch da, das hilft einem natürlich jetzt wenn ich einen GCC laufen lasse, der jetzt
mit Vektoren nicht wirklich was am Hut hat, bringt mir das nichts.
Der Code den der GCC produziert, das schon, aber dass der GCC selber Vektoroperationen
braucht, wofür?
Gut, wenn ich Mathematikprogramme habe, die jetzt große Matrizen invertieren und so ein
Zeug, da kann ich Vektorisierung schön einbauen.
Ja, also auch an der Stelle sieht man, es wird so ein bisschen zäh, ich kann da noch
tot und teufel einbauen.
Nächster Punkt wäre zum Beispiel, ich baue meine Pipeline um von 32 Bit auf 64 Bit.
Dann kann ich mit einer Instruktion mehr aufwarten, mehr multiplizieren, mehr was weiß ich was.
Nächster Schritt könnte natürlich sein, ich bohre das Ganze von 64 auf 128 Bit auf.
Das ist die Frage, bei Kryptographie und so, da bringt es mir vielleicht noch ein bisschen
was.
Ansonsten, wie du schon sagst, im Wesentlichen rechne ich mit Zahlen, die liegen zwischen
0 und 10 oder so, bei irgendwelchen Schleifen.
Also das was wir hier als Pipeline gebaut haben, da ist irgendwie heutzutage sehr das
Ende der Fahnenstange in Sicht, da geht irgendwie nichts mehr.
Presenters
Zugänglich über
Offener Zugang
Dauer
01:34:56 Min
Aufnahmedatum
2013-07-04
Hochgeladen am
2019-04-06 09:19:28
Sprache
de-DE