Können die Benchmarks eines Prozessors manipuliert werden?

Von Zeit zu Zeit erscheinen vergleichende Nachrichten darüber, welcher Prozessor durch Leistungstests besser ist als ein anderer. Aber wussten Sie, dass Benchmarks manipuliert werden können, damit ein Prozessor eine bessere Leistung erbringt, als er tatsächlich tut? Nun, wir werden in diesem Artikel darüber sprechen, und es ist so, dass alles, was oft scheint, nicht Gold ist und viele Hersteller es brauchen, um ihre Prozessoren zu Preisen verkaufen zu können, die für sie rentabel sind und es ihnen ermöglichen, weiterzumachen.

Können die Benchmarks eines Prozessors manipuliert werden?

Eines der Dinge, die man beim Studium von Computerarchitekturen lernt, ist, wie Prozessoren Leistungstests nutzen können, um Benchmarks zu manipulieren. Das ist etwas, das im Übrigen nicht neu ist, seit Beginn des PCs werden in der Regel Berichte an die Hersteller gesendet, sei es Intel, AMD oder jede andere Marke, begleitet die Informationen über ihre Architektur normalerweise mit Zahlen und Grafiken. Doch so wie es auch Dinge wie Finanzmanipulation gibt, passiert sie seltsamerweise auch in der Welt der Prozessoren.

Gängige Cheats, die gemacht werden, um Benchmarks zu manipulieren

Um zu wissen, ob ein Prozessor besser ist als ein anderer, benötigen wir eine kardinale Bewertung, dh eine Zahl, die die Leistung misst und angibt, ob Prozessor A besser als Prozessor B ist. Das Lesen der Spezifikationen reicht uns nicht aus, da diese Daten nicht vorhanden sind Helfen Sie uns, einen zu vergleichen CPU miteinander, wenn sie unterschiedliche Architekturen haben. Hier kommen Benchmarks ins Spiel, und in diesem Wissen verwenden Prozessordesigner und -hersteller eine Reihe von Tricks oder Fallen, um Benchmarks zu manipulieren.

Cheat-Anweisungen

Ein Benchmark ist nichts anderes als ein Programm, also eine Reihe geordneter Anweisungen, die nacheinander ausgeführt werden. Nun, eine der Fallen, die alle Hardware-Architekten seit Jahren, wenn nicht Jahrzehnten begehen, besteht darin, diejenigen zu optimieren, die in Benchmarks am häufigsten verwendet werden. Was meinen wir? Lassen Sie sie zum Beispiel weniger Zeit zum Laufen brauchen. Wenn sie die Entscheidung treffen müssen, welche Anweisung mehr Ressourcen im Design hat, wird den am häufigsten verwendeten Anweisungen immer mehr Bedeutung beigemessen, und wenn sie an der Spitze liegen, können sie bei Leistungstests ein besseres Ergebnis erzielen.

Diseño Processores testen

Taktrate und Cache zum Manipulieren von Benchmarks

Obwohl beide separate Elemente sind, sind sie anscheinend sehr verwandt, wenn wir über die Manipulation von Ergebnissen des Chips selbst sprechen. Heute kann die Taktrate eines Prozessors, die sogenannten GHz, je nach Auslastung schwanken. Tatsache ist, dass je nachdem, wo sich die Daten befinden, ob auf einer Ebene des Caches oder in der RAM der Verbrauch ist geringer. Typischerweise läuft ein Programm im RAM, aber es gibt Benchmarks, bei denen es sich um Mikroprogramme handelt, die in den Cache-Speicher passen.

Geschwindigkeitsdaten

Wenn sie also ausgeführt werden, müssen sie nicht auf den Speichercontroller zugreifen, sondern tun dies einfach rekursiv aus dem Cache. Was ihnen nicht nur eine sehr geringe Latenz, sondern auch einen geringeren Verbrauch verleiht, wodurch die Taktrate langfristig erhöht werden kann. In einer herkömmlichen Umgebung wäre eine solche nachhaltige Verbrauchssteigerung nicht zu empfehlen, aber der Leistungstest misst nicht diesen Aspekt, sondern die Geschwindigkeit, mit der das Programm läuft.

Die Kunst besteht darin, die Turbo- oder Boost-Geschwindigkeit so lange wie möglich aufrechtzuerhalten. Es gibt sogar Designs, die in diesem Aspekt eine Geschwindigkeit spezifizieren, die niedriger ist als die, die sie bei diesen Tests erreichen. Aber machte das Gesetz, machte die Falle.

Multithread-Tests und heterogene Konfigurationen

Aufgrund schlechter Vermarktung werden die E-Cores der letzten beiden Generationen von Intel angesichts der Energieeffizienz mit Kernen verwechselt. Vielmehr sind sie für den Bereich optimiert. Und welchen Sinn haben sie? Wenn ein Prozessor ein Programm ausführt, gibt es manchmal so genannte Blockierungen aus einem Grund, der es weiterlaufen lässt, was Perioden der Inaktivität erzeugt, die wir Blasen nennen. Nun, die Idee von Multithreading besteht darin, dem Prozessor Mechanismen zu geben, damit er den Kontext ändert und sich um andere Prozesse kümmern kann.

Intel Core 12 13 Prozessor

Das Problem ist, dass dies den Stromverbrauch stark erhöht und für Handheld-Geräte tödlich ist. Die Lösung? Anstatt Platz und Transistoren für Multithreading zu verschwenden, wurden einfachere Prozessorkerne zu Low-Power-Geräten hinzugefügt. Strategie, die Intel anscheinend übernommen hat, jedoch pflegen die P-Cores weiterhin Multithreading, so dass der Nutzen der E-Cores das nicht ist. Vielmehr dienen sie dazu, dass die leistungsstärksten Kernel keine Zeit mit der Verarbeitung von Dingen verschwenden, die das Hauptprogramm betreffen. Wenn also beispielsweise Anwendungen wie der Mailmanager plötzlich aktiviert werden, sollten diese nicht im Vordergrund laufen.

In Multithread-Benchmarks ist die Punktzahl eine Summe der Leistung aller Kerne, was nicht deaktiviert werden kann. Dies ist einer der Fallstricke bei Vergleichen zwischen homogenen und heterogenen Prozessoren. Daher wäre es ideal, zu markieren, wie viel jeder Kerntyp zur Gesamtzahl hinzufügt.

Falsche Ergebnisse

Das ist der dreiste Fall, bei dem je nach Marke oder Modell Extrapunkte vergeben werden. Dies ist dank der Tatsache möglich, dass jede CPU über eine Anweisung verfügt, die sie identifiziert, sodass das Benchmark-Programm wissen kann, wo es läuft, und je nach Fall eine positive oder negative Bedingung anwenden kann.