Compiler
Was ist das Hauptziel der Befehlsplanung (Instruction Scheduling) des Compilers?
- ADie Zahl der Befehle unabhängig von Änderungen des Programmergebnisses so weit wie möglich zu verringern
- BBefehle ohne Änderung des Ergebnisses umzuordnen und Wartezeiten aufzufüllen
- CDie auszuführenden Befehle in der vom Scheduler des Betriebssystems gewählten Reihenfolge anzuordnen
Antwort und Erläuterung anzeigen
Antwort: B. Befehle ohne Änderung des Ergebnisses umzuordnen und Wartezeiten aufzufüllen
Ist das Ergebnis eines Ladebefehls oder einer Multiplikation nicht sofort verfügbar, muss die CPU warten, wenn der verwendende Befehl direkt folgt. Die Befehlsplanung ordnet die Befehle so um, dass unabhängige andere Befehle dazwischen eingefügt werden, ohne die Datenabhängigkeiten zu verletzen und das Ergebnis zu ändern, und nutzt so die Wartezeit. Besonders groß ist die Wirkung bei CPUs, die in der Programmreihenfolge ausführen (In-Order). Transformationen, die das Ergebnis ändern, sind unzulässig, und der Scheduler des Betriebssystems, der den Prozesswechsel bestimmt, ist ein anderer Mechanismus.