Loop perforation (traducibile letteralmente come perforazione del ciclo) è una tecnica di calcolo approssimato che consente di saltare regolarmente iterazioni di un ciclo.[1]
Questa tecnica necessita di un parametro: il fattore di salto, detto comunemente detto skip factor. Lo skip factor può essere interpretato come il numero di iterazioni saltate ogni volta o come il numero di iterazioni da eseguire prima di saltarne una.
Esempi pratici
Gli esempi seguenti mostrano il risultato di una loop perforation applicata su questo codice sorgente in stile C.
for ( int i = 0; i < N; i++ ) {
// corpo del ciclo
}
Salta n iterazioni ogni volta
for ( int i = 0; i < N; i++ ) {
// corpo del ciclo
i = i + skip_factor;
}
Salta una iterazione ogni n
int count = 0;
for ( int i = 0; i < N; i++ ) {
if (count == skip_factor) {
count = 0;
} else {
// corpo del ciclo
count++;
}
}
Note
Bibliografia
Voci correlate