Ciao a tutti, sto sviluppando un programma in grado di generare parser partendo da un file che descrive la sintassi.
Volevo monitorare l'efficenza sia del generatore che dei parser generati però, utilizzando questo codice per le macro:
#define START_TIMER start = clock()
#define STOP_TIMER end = clock()
#define COMPUTATION_TIME tempo = (((double)(end - start)) / CLOCKS_PER_SEC)
#define PRINT_C_T printf("Durata dell'operazione: %f s\n", COMPUTATION_TIME)
e questo per l'utilizzo:
START_TIMER;
operazione(); // per esempio...
STOP_TIMER;
PRINT_C_T;
mi viene restituito il tempo di esecuzione in secondi e la precisione arriva sino al milionesimo di secondo.
Il problema è che gli algoritmi che ho scritto impiegano (fortunatamente) meno di un milionesimo di secondo per essere eseguiti (in base a quello che viene scritto).
Di rado è capitato che impiegasse 1 o 2 milionesimi di secondo ed una sola volta ha impiegato 16 milionesimi...
Ora io mi chiedo, come posso verificare il tempo di esecuzione in miliardesimi di secondo?
Ma soprattutto, è possibile?
Grazie mille a tutti in anticipo! Ciao!
Ciamiz