Es gibt zwei Ausdrücke:Was ist der Unterschied zwischen temporalem Multithreading und Super-Threading?
Temporal multithreading: In feinkörnigen temporal multithreading, die Hauptprozessorpipeline mehr Threads enthalten kann, Switches mit Zusammenhang zwischen den Rohrstufen effektiv auftritt (beispielsweise in den barrel processor). Ein Barrel-Prozessor ist eine CPU, die bei jedem Zyklus zwischen Ausführungs-Threads wechselt.
Super-threading: ist eine Art von Multithreading, die es ermöglicht, dass verschiedene Threads von einem einzigen Prozessor ausgeführt werden, ohne sie gleichzeitig auszuführen. 1 Dies qualifiziert es als Time-Sliced oder temporales Multithreading anstatt simultanes Multithreading (SMT). Dies wird durch die Beobachtung motiviert, dass die Funktionseinheiten des Prozessors während der Ausführung von Befehlen aus einem Thread aufgrund von Ereignissen mit langer Latenzzeit gelegentlich inaktiv bleiben. Super-Threading versucht, die ansonsten ungenutzten Prozessorzyklen zu nutzen, indem Befehle aus einem anderen Thread ausgeführt werden, bis der vorherige Thread wieder zur Ausführung bereit ist.
ist der Hauptunterschied zwischen TM und ST, dass Temporal Multithreading (feinkörnig) verwendet C-slowing und schaltet zwischen Ausführungs-Threads bei jedem Zyklus, aber super-Threading-Schalter zwischen Threads nicht in jedem Zyklus, und nur wenn Prozessor Funktionelle Einheiten werden während der Ausführung von Befehlen aus einem Thread aufgrund von Ereignissen mit langer Latenz inaktiv gelassen?
Was ist der Unterschied zwischen dem temporalen Multithreading (feinkörnig) und Super-Threading?
Aus einer * sehr kurzen * Suche (und * einiger * Vertrautheit mit der Computerarchitektur) scheint Super-threading zuerst in Shuichi Sakai et al. "Super-threading: Architektur- und Softwaremechanismen zur Optimierung der Parallelberechnung "mit einem viel breiteren Sinn für Hardware-Unterstützung für Threading. Der Begriff wird (so weit ich weiß) in der Computerarchitektur-Community nicht allgemein verwendet. Temporales Multithreading umfasst grobkörnige (typischerweise einschaltbares Ereignis-MT) und feinkörnige (einschließlich Trommelverarbeitung und flexiblere Zyklus-für-Zyklus-Planung) MT. –
@ Paul A. Clayton Der Begriff ST wird selten verwendet. Ist es möglich, weil Super-Threading (ST) Anweisungen nur für eine Pipeline (ALU) bereitstellt, aber gleichzeitiges Multithreading (SMT) für mehrere Pipelines (ALUs)? I.e. ST nutzt nur Vorteile für Blockierungen (Cache-Miss, Verzweigungsfehlvorhersage oder Datenabhängigkeit), aber moderne CPUs sind auch Superskalararchitektur, und anstelle von ST verwendete SMT, um Vorteile der Superskalar-Architektur zu nutzen. Zum Beispiel Hyper-Threading - ist Intels proprietäres simultanes Multithreading (SMT). – Alex