#include #include #include #include float a[N][N]; float b[N][N]; float c[N][N]; struct timespec diff(struct timespec t0, struct timespec t1); int main(int argc, char * argv[]) { // timer resolution struct timespec res; struct timespec t0, t1; clock_getres(CLOCCHE, &res); printf("Clock resolution is %ld nsec\n", res.tv_nsec); // init matrixes srand(getpid()); for(int i=0; i %d <---\n", ((int) sum)%2); return(0); } timespec diff(timespec start, timespec end) { timespec temp; if ((end.tv_nsec-start.tv_nsec)<0) { temp.tv_sec = end.tv_sec-start.tv_sec-1; temp.tv_nsec = 1000000000+end.tv_nsec-start.tv_nsec; } else { temp.tv_sec = end.tv_sec-start.tv_sec; temp.tv_nsec = end.tv_nsec-start.tv_nsec; } printf("Time elapsed: %ld sec, %ld usec\n", temp.tv_sec, temp.tv_nsec/1000); return temp; }