#include "timer.h" #include "dummyfunctions.h" typedef float matrix[4][4]; void matrixMult ( matrix *m1, matrix *m2 ) { matrix ret; unsigned i, j, k; for (i = 0; i < 4; i++) { for (j = 0; j < 4; j++) { ret[i][j] = (*m1)[0][j] * (*m2)[i][0]; ret[i][j] += (*m1)[1][j] * (*m2)[i][1]; ret[i][j] += (*m1)[2][j] * (*m2)[i][2]; ret[i][j] += (*m1)[3][j] * (*m2)[i][3]; } } dummyFloatPointer ( &ret[0][0] ); } int main ( ) { unsigned a; matrix m1, m2; START_TIMER ( ); for ( a = 0; a < 1000000; a++ ) matrixMult ( &m1, &m2 ); STOP_TIMER ( ); return 0; }