Visualizzazione post con etichetta Benchmarking. Mostra tutti i post
Visualizzazione post con etichetta Benchmarking. Mostra tutti i post

sabato 17 novembre 2012

Come si misura ill tempo di esecuzione di un blocco di codice C?

Misurare le performance di un frammento codice o di una funzione può essere utile per valutare le prestazioni (benchmarcking) del proprio codice o per decidere tra diversi approcci per la soluzione di un certo problema qual'è il più veloce. In un precedente post, abbiamo visto come misurare il tempo di esecuzione di un eseguibile utilizzando il comando Unix Time, disponibile anche su Windows in CigWin. Invece, per misurare la velocità di esecuzione di un frammento di codice all'interno di un programma scritto in C si può usare la funzione clock(), il cui prototipo si trova in <time.h>.
La funzione clock() restituisce il numero di cicli di clock dall'ultima chiamata della funzione. In <time.h> c'è anche una costante chiamata CLOCK_PER_SEC che fornisce il numero di clock per secondo per la piattaforma hardware e software che si sta usando.