C como medir o tempo corretamente?

Este é o "algoritmo", mas quando eu quero medir o tempo de execução, ele me dá zero. Por quê?

#define ARRAY_SIZE 10000
...

clock_t start, end;

start = clock();

for( i = 0; i < ARRAY_SIZE; i++) 
{
non_parallel[i] = vec[i] * vec[i];
}
end = clock();
printf( "Number of seconds: %f\n", (end-start)/(double)CLOCKS_PER_SEC );

Então, o que devo fazer para medir o tempo?

questionAnswers(2)

yourAnswerToTheQuestion