Forscher wollen die Leistung von Multi-Core-CPUs um 40 Prozent steigern
Eine Forschergruppe der Universität North Carolina will die Leistung von Multi-Core-Prozessoren durch neue Techniken um bis zu 40 Prozent erhöhen.
Der Forscher Yan Solihin und seine Mitarbeiter setzen dabei an zwei Punkten an: dem Prefetching der Daten und der Zuteilung der Speicherbandbreite an einzelne CPU-Kerne. Prefetching versucht, die als nächstes benötigten Daten aus dem Arbeitsspeicher vorherzusagen und im Cache des jeweiligen Prozessorkerns zu speichern.
Stimmt die Vorhersage, beschleunigt das die Verarbeitung, doch wenn andere Daten als vermutet benötigt werden, hat Prefetching einen negativen Effekt auf die Geschwindigkeit. Die Forscher wollen es den Kernen nun ermöglichen, besser vorauszusagen, ob Prefetching Sinn macht und diese Funktion gegebenenfalls zu deaktivieren. Das soll zu effizienteren Prozessoren führen.
Die Verteilung der verfügbaren Speicherbandbreite wird bei steigender Anzahl der CPU-Kerne immer wichtiger, damit alle Kerne ihre Daten rechtzeitig erhalten. Doch nicht jeder Kern benötigt gleich viel Bandbreite. Laut dem Forscherteam können entsprechende Daten dazu genutzt werden, bei der Verteilung den tatsächlichen Bandbreitenbedarf pro Kern zu berücksichtigen und so die Leistung des Prozessors zu erhöhen. Zusammen mit dem verbesserten Prefetching kann die Leistung von Multi-Core-CPUs im Vergleich zu Prozessoren ohne Prefetching um 40 Prozent und zu CPUs mit Prefetching immerhin noch um 10 Prozent gesteigert werden.
Quelle: golem.de

In der Theorie. Vielleicht in Servern.
In der Dekstop-Praxis bleibt festzuhalten, dass Speicherbandbreite so ziemlich das letzte ist, woran es CPUs aktuell mangelt und kommende Quad-Channel-Modelle versprechen noch sinnlosere Reserven.
Das Prefetching findet doch heutzutage schon statt.
Im Cache Speicher. Die Strategie zum Nachladen läuft genau nach diesem Prinzip.
Im Pipelining-Verfahren wird auch mithilfe von "vorhersagen durch den blick in die vergagnenheit" bestimmt,
was in die Pipeline geladen werden muss.
Falls es falsch war, muss die Pipeline auch geflusht und geleert werden...
Das ist doch nichts neues.
Aus dem Artikel bekomme ich wirklich keine neuen Erkenntisse...
Aber so richtig kappiere ich das auch nicht. Ist eher Micromanagement.
Eure Beispiele sind alle viel zu groß. Die könnten bei Precaching HDD->RAM passen. Prefetiching vom RAM in die CPU spielt sich auf viel kleineren Ebenen ab. Wenn du z.B. ein Bild bearbeitest, das im geöffneten Zustand 10 MiB groß ist, dann kann die CPU gar nicht das Bild und das Programm in seine 4-8 MiB Cache prefetchen.
Aber wenn dein Browser zum 30 mal in dieser Minute html-Code rendern will, dann sollten sich die typischerweise benötigten Teile der Engine vorhersagen lassen. Oder wenn ein Spiel 100 durchnummerierte KI-agents nacheinander durch die gleiche Engine schleust.
Und ich will auch gar nicht im AKW arbeiten. Der LHC ist VIEL spannender, oder darf ich das auch nicht, weil ich sonst noch ein Schwarzes Loch entstehen lasse?