Compilers

Hoe heet de optimalisatie waarbij een korte reeks gegenereerde machinecode door een klein venster wordt bekeken en onnodige combinaties van instructies door betere instructies worden vervangen?

  1. APeephole-optimalisatie
  2. BLink-time optimization
  3. CProfielgestuurde optimalisatie
Antwoord en toelichting tonen

Antwoord: A. Peephole-optimalisatie

Peephole-optimalisatie is een optimalisatie waarbij, als door een kijkgaatje (peephole), slechts enkele opeenvolgende instructies worden bekeken en verspilling wordt opgespoord en vervangen. Bijvoorbeeld een instructie die direct na het schrijven van een waarde naar het geheugen dezelfde plaats leest wordt weggelaten, een instructie die 0 optelt wordt verwijderd of twee instructies worden tot één samengevoegd. Dit gebeurt vaak na het genereren van code en is eenvoudig, maar effectief. Link-time optimization optimaliseert het hele programma en profielgestuurde optimalisatie gebruikt een opname van de uitvoering.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Compilers

  1. Welke combinatie van een optimalisatie die na het inlinen van sq in de bovenstaande code volgt en het resultaat daarvan is juist?
  2. Welke uitspraak over software pipelining is juist?
  3. Waarom herordent een compiler onder strikte instellingen de optelling (a + b) + c van floating-pointgetallen niet eigenmachtig tot a + (b + c)?
  4. Welk soort instructie wordt gebruikt bij automatische vectorisatie door een compiler?
  5. Welke basisvoorwaarde moet een optimalisatie van een compiler respecteren?

Vergelijkingen bij dit onderwerp