reviews: Windows 8 op ARM-hardware: werk aan de winkel
Zoals jullie vast ook weten heeft een CPU een pipeline. Op die manier duurt de totale verwerking van een instructie bv 10 kloktikken. Je kan de hele pipeline wel vullen om de doorstroom te bevorderen, maar wat als 2 instructies afhankelijk zijn van elkaar? Doorgaans wordt een instructie opgepikt, gedecodeerd, worden registers klaargezet, de instrucite uitgevoerd en het resultaat weer teruggeschreven.
Stel nu dat je eerst een instructie hebt die een waarde in het geheugen schrijft. De daaropvolgende instructie leest die waarde weer voor een bewerking. In dat geval, omdat de waarde pas aan het eind van de pipeline wordt weggeschreven, moet de tweede instructie een hele tijd wachten. Op zo'n moment kan de CPU zonder oooe helemaal niks. Met oooe gaat de processor kijken of er instructies zijn die onafhankelijk zijn en wel direct kunnen worden uitgevoerd. Op die manier probeert de processor de pipeline gevuld te houden met taken om de efficiëntie te verhogen.
Beter is:
Hier worden HT en out-of-order-execution door elkaar gehaald. Out-of-order-exectution (oooe) gaat namelijk over het veranderen van de volgorde van de instructieverwerking, zoals de naam ook zegt. Op deze manier poogt de processor om ongebruikte clockcycles toch te vullen met een instructie om niet te hoeven wachten.De A9 doet aan out-of-order-execution: in sommige situaties kunnen twee instructies deels gelijktijdig verwerkt worden, zodat de chip in theorie efficiënter is.
Zoals jullie vast ook weten heeft een CPU een pipeline. Op die manier duurt de totale verwerking van een instructie bv 10 kloktikken. Je kan de hele pipeline wel vullen om de doorstroom te bevorderen, maar wat als 2 instructies afhankelijk zijn van elkaar? Doorgaans wordt een instructie opgepikt, gedecodeerd, worden registers klaargezet, de instrucite uitgevoerd en het resultaat weer teruggeschreven.
Stel nu dat je eerst een instructie hebt die een waarde in het geheugen schrijft. De daaropvolgende instructie leest die waarde weer voor een bewerking. In dat geval, omdat de waarde pas aan het eind van de pipeline wordt weggeschreven, moet de tweede instructie een hele tijd wachten. Op zo'n moment kan de CPU zonder oooe helemaal niks. Met oooe gaat de processor kijken of er instructies zijn die onafhankelijk zijn en wel direct kunnen worden uitgevoerd. Op die manier probeert de processor de pipeline gevuld te houden met taken om de efficiëntie te verhogen.
Beter is:
Wikipedia: Out-of-order executionDe A9 doet aan out-of-order-execution: in gevallen dat twee opvolgende instructies op elkaar moeten wachten kan de processor onafhankelijke instructies voorrang geven. Op deze manier probeert de processor het aantal verloren klokslagen te verminderen om een hogere efficiëntie te behalen.
[ Voor 8% gewijzigd door GENETX op 17-09-2011 10:20 ]