Hardware -Scout

Hardware -Scout ist eine Technik, die ansonsten im Leerlauf verwendet wird Prozessor Ausführungsressourcen zur Durchführung Vorabstetung während Zwischenspeicher Fehler. Wenn ein Thread durch einen Cache -Fehlschlag zum Stillstand gebracht wird, punktet der Prozessor -Pipeline die Datei registrieren, wechselt zu Runahead Modus und gibt weiterhin Anweisungen aus dem Thread aus, der auf Speicher wartet. Der Ausführungsthread im Laufmodus ist als bekannt Scout -Thread. Wenn die Daten aus dem Speicher zurückgegeben werden, stellt der Prozessor den Inhalt der Registerdatei aus dem Checkpoint wieder her und wechselt wieder in den normalen Ausführungsmodus.

Die Berechnung während des Durchgangsmodus wird vom Prozessor verworfen. Dennoch liefert Scouting beschleunigt, weil Gedächtnisstufe Parallelität (MLP) wird erhöht. Die in die Cache -Hierarchie eingebrachten Cache -Zeilen werden häufig vom Prozessor wieder verwendet, wenn er wieder in den normalen Modus umschaltet.

Scout von Rock Processor

Sonne Rockprozessor (später abgebrochen) verwendeten eine Form von Hardware -Scout. Alle Berechnungen im Lauf-Ahead-Modus, die jedoch der Fall sind nicht Abhängig vom Cache -Miss kann sofort in den Ruhestand gezogen werden. Dies ermöglicht sowohl Vorab- als auch traditionelles Parallelität auf Befehlsebene.

Scouting gegen SMT

Scouting und Simultanes Multithreading (SMT) Beide verwenden Hardware -Threads, um gegen das zu kämpfen Speicherwand. Mit dem Scouting führt der Scout -Thread die Anweisungen aus demselben Befehlsstrom aus wie die Anweisung, die den Pipeline -Stand verursacht. Im Fall von SMT führt der SMT -Thread den Anweisungen in einem anderen Kontext aus.

Somit erhöht SMT den Durchsatz des Prozessors, während die Scouting die Leistung erhöht, indem die Anzahl der Cache -Missen gesenkt wird.

Siehe auch

Verweise