function kentaromiuraFastestDevice(iterations) {
var testVal=iterations;
if(parseInt(iterations/8)){
var n=iterations%8;
do{
--testVal; //do stuff
--testVal; //do stuff
--testVal; //do stuff
--testVal; //do stuff
--testVal; //do stuff
--testVal; //do stuff
--testVal; //do stuff
--testVal; //do stuff
}while(testVal!=n);
}
while(testVal--){
//do stuff
}
}
4 commenti:
Sono sicuro che puoi essere ancora Piu' Veloce! Piu' Forte! Migliore!
per ora non c'e' nulla di piu' veloce di questo metodo ;)
non appena riesco a inventare un codice macchina piu' veloce del codice macchina ti faccio un fischio ;)
è un mese che ci penso... perchè dici che un metodo più veloce non esiste?
se ad esempio il numero delle iterazioni fosse basso non sarebbe meglio usare 4 anzichè 8? e se fosse particolarmente alto usare 16 o 32 o 2^n?
@anonimo: halt! tu stai considerando l'implementazione e non l'algoritmo.
ovviamente aggiungendo istruzioni il gap dovuto ai jmp si assotiglierebbe
(considera comunque che arrivato a 12 istruzioni non arriveresti ad ottimizare ulteriormente)
l'implementazione prevede la classica forma del duff device che e' storicamente rappresentato con 8 istruzioni.
comunque nonostante io abbia avuto migliorie nelle tempistiche
Andrea Giammarchi puo' dimostrare che tutto e' relativo ;)
Posta un commento