The inventive mechanism operates to optimize program efficiency in a two
phase process. In the first phase, the mechanism conducts a dependency
analysis on the instructions to determine dependency relationships between
the various instructions in an instruction window. The mechanism thereby
identifies candidates for register renaming and instruction speculation,
and provisionally performs the renaming and speculation operations, while
preserving information which is preferably used to reverse these
operations in the second phase if it is determined that the operations may
be effectively rescheduled. In the second phase, the mechanism determines
whether the optimizing operations, renaming and speculation, were
beneficial in each case. Each instruction for which the mechanism finds
the optimizing operation to be beneficial will generally remain in
optimized form. Optimizing operations found not be beneficial are
generally reversed by the mechanism. The mechanism thus selectively uses
renaming and speculation operations so as to ensure that the benefits
preferably outweigh the costs of the operation in each case.
Die erfinderische Einheit funktioniert, um Programm-Leistungsfähigkeit in einem Zweiphasenprozeß zu optimieren. In der ersten Phase leitet die Einheit eine Abhängigkeit Analyse auf den Anweisungen, Abhängigkeit Verhältnisse zwischen den verschiedenen Anweisungen in einem Anweisung Fenster festzustellen. Die Einheit kennzeichnet dadurch Anwärter für Registerumbennenung und -anweisung Betrachtung und führt provisorisch die Umbennenung und Betrachtungbetriebe, beim Konservieren der Informationen durch, die vorzugsweise verwendet wird, um diese Betriebe in der zweiten Phase aufzuheben, wenn es festgestellt wird, daß die Betriebe effektiv neu festgelegt werden können. In der zweiten Phase stellt die Einheit fest, ob die optimierenbetriebe, Umbennenung und Betrachtung, in jedem Fall vorteilhaft waren. Jede Anweisung, für die die Einheit den optimierenbetrieb findet, um vorteilhafter Wille zu sein, bleiben im Allgemeinen in optimierter Form. Die optimierenbetriebe, die vorteilhaft, gefunden werden nicht zu sein, werden im Allgemeinen durch die Einheit aufgehoben. Die Einheit folglich verwendet selektiv die Umbennenung und Betrachtung,betriebe, zum sicherzustellen, daß der Nutzen vorzugsweise die Kosten des Betriebes in jedem Fall überwiegt.