Det tillsammans med att veta hur exakt man behöver svaret kan göra stor skillnad! Ett par exempel:sodjan skrev: Om den ena parametern i multiplikationen skulle råka vara en konstant
så går det ofta att optimera rutinen för just det värdet.
I geometrihanterande kod (grafik, fysik, spel osv) är det ganska vanligt att du jämför längden mellan två punkter (dvs en vektor) med en konstant, i princip rotenUr(blah) <= C där C är en konstant. Roten-ur är _väldigt_ dyr, så det är alltid bättre att göra blah <= C^2.
Annat exempel: En mjukvara vi har som kör på Cortex-M4 processorer har sin huvudsakliga tidhantering i form av 64-bitars heltal som anger microsekunder sen start. Vanligaste operationen är subtraktion, och det är rätt snabbt även om hårdvaran inte hanterar 64-bitars tal. Däremot finns det ett fåtal ställen där vi behöver millisekund eller sekund, men istället för att behöva dividera med 1000 (i mjukvara) så definierar vi att faktorn är 1024 (dvs bitshift med 10) som totalt ger ett par bitshift och ett par bitoperationer. Avsevärt snabbare och felet på 2.4% per steg är acceptabelt i denna tillämpning.