4.3.1 Computersysteme II, Grundtechniken der Mehrfädigkeit

Beschreibung

Informatik (Computersysteme II) Karteikarten am 4.3.1 Computersysteme II, Grundtechniken der Mehrfädigkeit, erstellt von David Bratschke am 13/03/2018.
David Bratschke
Karteikarten von David Bratschke, aktualisiert more than 1 year ago
David Bratschke
Erstellt von David Bratschke vor mehr als 6 Jahre
14
1

Zusammenfassung der Ressource

Frage Antworten
Welche beiden grundsätzlichen Multithreading-Techniken werden unterschieden? die Cycle-by-Cycle-Interleaving und die Block-Interleaving-Technik
Was kennzeichnet die "Cycle-by-Cycle-Interleaving"-Technik ? Diese wechselt den Kontext in jedem Takt.
Wann gilt ein Kontrollfaden bei der Cycle-by-Cycle-Interleaving-Technik wieder als "ausführbereit"? wenn keiner seiner Befehle sich noch in der Pipeline oder im RoB befindet
Ergänze: Bei "Cycle-By-Cycle-Interleaving" wird in aufeinander folgenden Takten jeweils ein Befehl ... aus einem anderen Kontrollfaden ausgewählt.
Was kennzeichnet die "Block-Interleaving"-Technik zur Implementation eines mehrfädigen Prozessors? Bei dieser werden die Befehle eines Kontrollfadens so lange wie möglich hintereinander ausgeführt bis ein Ereignis eintritt was zum Warten des Kontrollfadens führt
Kann die Multithreading-Technik auch bei superskalaren und VLIW-Architekturen angewendet werden? Ja
Wann spricht man bei einem superskalaren (oder VLIW) Prozessor mit multithreading von einem vertikalen Verlust? Wenn in einem Befehlstakt keinem der der n Befehlsfächer ein Befehl zugeordnet werden kann.
Wann spricht man bei einem superskalaren (oder VLIW) Prozessor mit multithreading von einem horizontalen Verlust? Wenn nicht allen Befehlsfächern in einem Takt ein Befehl zugeordnet werden kann
Welche ILP-Verlust (horizontal oder vertikal) kann durch Cycle-By-Cycle oder Block-Interleaving Multithreading-Techniken ausgeglichen werden? Nur die vertikalen Verluste können durch Cycle-by-Cycle oder Block-Interleaving ausgeglichen werden
Was müsste ein Prozessor können, um auch horizontale Verluste durch multithreading ausgleichen zu können? Dazu müsste der Prozessor pro Takt auch Befehle aus mehreren Kontrollfäden zuweisen können.
Welche Form des Multithreading-Technik kann auch horizontale Verluste ausgleichen? die simultan mehrfädigen Prozessoren, weil diese pro Takt auch Befehle aus mehreren Kontrollfäden zuweisen können
Wie wird die "Cycle-by-Cycle-Interleaving"-Technik noch genannt? Fine-Grain Multithreading
Wie wird die "Block-Interleaving"-Technik noch genannt? "Coarse-Grain Multithreading"
Was ist der Vorteil von Block-Interleaving gegenüber Cycle-By-Cycle-Interleaving? die höhere Leistung bei der Ausführung eines einzelnen Kontrollfadens
Wieviele Kontrollfäden sollten grundsätzlich bei einem Multithreading-Prozessor mit Cycle-by-Cycle-Interleaving zur Verfügung stehen? so viele Kontrollfäden wie die für den Speicherzugriff benötigte Taktzahl
Was versteht man unter der "Explicit-Dependence Lookahead"-Technik? Bzw. wozu wird diese genutzt? diese erlaubt es bestimmten Cycle-by-cycle-Interleaving-Prozessoren, eine begrenzte Anzahl von Befehlen desselben Kontrollfadens überlappend auszuführen.
Wie funktioniert die "Explicit-Dependence Lookahead"-Technik? im Opcode jedes Befehls wird die Anzahl der von diesem Befehl unabhängigen Folgebefehle angeben. und vom Scheduler für die Befehlsbereitstellung genutzt
Wie nutzt der Befehlsscheduler bei Dependence Lookahead-Technik die im Op-Code enthaltene Information der Anzahl von diesem Befehl unabhängigen Folgebefehle? dieser nutzt die Information um bei geringer Last des Cycle-by-Cycle-Interleaving Prozessors unabhängige Befehle desselben Kontrollfadens in die Pipeline einzufüttern
Bei welcher Art der Multithreading-Prozessoren kommt die "Dependence Lookahead"-Technik zum Einsatz? Bei Multithreading-Prozessoren mit Cycle-by-Cycle-Interleaving
Was ist der Vorteil der Cycle-by-Cycle-Interleaving-Technik gegenüber der Block-Interleaving-Technik? Durch den Threadwechsel nach jedem Takt entfällt das Leeren der Pipeline beim Threadwechsel und somit können auch Pipelines mit vielen Stufen besser genutzt werden
Welche der beiden Grundtechniken des Multithreadings stellte sich als zumeist überlegen heraus, Cycle-by-Cycle- oder Block-Interleaving? Die Block-Interleaving-Technik
Wieviele Kontrollfäden pro Prozessor wurden als optimal für die Block-Interleaving-Technik in Untersuchungen ermittelt? circa 2-4 Kontrollfäden pro Prozessor
Was passiert bei mehr als 2-4 Kontrollfäden pro Prozessor bei der Block-Interleaving-Technik? Diese bringen nur noch wenig Gewinn in Sachen Prozessorauslastung, wenn nicht sogar eine Verschlechterung
Welche zwei unterschiedlichen Arten des Kontextwechsels werden bei mehrfädigen Prozessoren mit Block-Interleaving unterschieden? statisches Block-Interleaving und dynamisches Block Interleaving
Was kennzeichnet das statische Block-Interleaving? Dabei steht der Kontextwechsel bereits beim Übersetzen in Maschinencode fest und ist im Befehl codiert
Welche zwei Formen des statischen Block-Interleaving gibt es? "explicit switch" und "implicit switch"
Was kennzeichnet die statische Block-Interleaving-Technik "explizit switch"? Dabei existiert ein expliziter Kontextwechselbefehl, der den Kontextwechsel auslöst
Was kennzeichnet die statische Block-Interleaving-Technik "implicit switch"? dabei löst die Zugehörigkeit zu einer Befehlsklasse den Kontextwechsel aus. Abhängig von der Befehlsart kann noch weiter in Switch-on-Load, Switch-on-Branch etc. unterschieden werden.
Welche unterschiedlichen Techniken gibt es dynamisches Block-Interleaving zu implementieren? Switch-on-Cache-Miss Switch-on-Signal Switch-on-Use Conditional-Switch
Was kennzeichnet die dynamische Block-Interleaving-Technik "Switch-on-Cache-Miss" Wie der Name sagt: Ein Kontextwechsel wird von einem Cache-Fehlzugriff ausgelöst.
Wodurch wird ein Kontextwechsel bei der dynamischen Block-Interleaving-Technik: "Switch on Signal" ausgelöst? Durch ein externes Signal; Also eine Trap bzw. Exception
Wann bzw. wodurch wird der Kontextwechsel bei der dynamischen Block-Interleaving-Technik "Switch-on-Use" ausgelöst? Der Kontextwechsel wird erst ausgelöst, wenn der Operand vom Befehl benötigt wird
Was kennzeichnet die dynamischen Block-Interleaving-Technik "Conditional-Switch"? Diese stellt eine Verknüpfung der Explicit-Switch-Strategie mit einer Bedingung dar.
Was ist der Vorteil der statischen Block-Interleaving-Technik? dass der Kontextwechsel bereits in der Befehlsbereitstellungsstufe der Pipeline erkannt und durchgeführt werden kann.
Wodurch wird es möglich, dass beim statischen Block-Interleaving ein Kontextwechsel schon in der Bereitstellungsphase erkannt werden kann? Durch eine geschickte Codierung der Befehle
Wieviele Takte beträgt der Kontextwechselaufwand bei statischem Block-Interleaving bei der explizit-switch-Technik? Einen Takt, weil der Befehl selbst nur dazu dient den Kontextwechsel zu signalisieren
Wieviele Takte beträgt der Kontextwechselaufwand bei statischem Block-Interleaving mit "implicit switch"-Technik? null Takte, weil der auslösende Befehl weiterverwendet wird
Wie kann der Kontextwechselaufwand auch bei Verwendung der "explicit-switch"-Methode bei statischem Block-Interleaving auf nahezu 0 reduziert werden? Durch die Anwendung eines Kontextwechselpuffers, der die Adressen von kontextwechselauslösenden Befehlen zur Laufzeit speichert
Wie hoch ist der Kontextwechselaufwand bei dynamischen Block-Interleaving (im Vergleich zum statischen Block-Interleaving)? mehrere Takte, also grundsätzlich höher
Warum ist der Kontextwechselaufwand bei dynamischen Block-Interleaving höher als bei statischem? weil bei dynamischen Block-Interleaving alle bereits in der Pipeline befindlichen Befehle nach dem kontextwechselauslösenden Befehl gelöscht werden müssen
Warum kann sich Multithreading mit dynamischen Block-Interleaving dennoch eher lohnen als statisches Block-Interleaving, obwohl dieses mehrere Takte für den Kontextwechsel braucht? weil bei den dynamischen Techniken ein Kontextwechsel immer nur dann ausgelöst, wenn dieser notwendig ist
Für welche Prozessorarchitekturen wurden die Multithreadingtechniken ursprünglich entwickelt? Für skalare Prozessoren
Sind Multithreadingtechniken auch mit superskalaren und VLIW-Prozessoren kombinierbar? Wenn ja, wie? Ja sind sie. Es könnten z.B. durch den Hardware-Scheduler beim Cycle-by-Cycle-Interleaving pro Takt auch mehrere Befehle eines Kontrollfadens oder sogar mehrere Befehle aus mehreren Kontrollfäden ausgewählt und in die Befehls-Pipeline eingefüttert werden
Zusammenfassung anzeigen Zusammenfassung ausblenden

ähnlicher Inhalt

ein kleines Informatik Quiz
AntonS
Informatik
Tom Kühling
PHP Grundlagen
chrisi.0605
Wirtschaftsinformatik Teil 2
Sabrina Heckler
Informatik 1 - Einführung
Svenja
Codierung
Tom Kühling
Wirtschaftsinformatik Teil 1
Sabrina Heckler
Einführung in das Studium Informatik
Daniel Doe
Lernplan
Sandra K
Infromatik Basiswissen
Simon Hefti