Question: #include #include #include const int dimension = 2 5 6 ; struct timeval tv; double timestamp ( ) { double t; gettimeofday ( &tv ,

#include
#include
#include
const int dimension =256;
struct timeval tv;
double timestamp()
{
double t;
gettimeofday(&tv, NULL);
t = tv.tv_sec +(tv.tv_usec/1000000.0);
return t;
}
int main(int argc, char *argv[])
{
int i, j, k;
double *A,*B,*C, start, end;
A =(double*)malloc(dimension*dimension*sizeof(double));
B =(double*)malloc(dimension*dimension*sizeof(double));
C =(double*)malloc(dimension*dimension*sizeof(double));
srand(292);
for(i =0; i < dimension; i++)
for(j =0; j < dimension; j++)
{
A[dimension*i+j]=(rand()/(RAND_MAX +1.0));
B[dimension*i+j]=(rand()/(RAND_MAX +1.0));
C[dimension*i+j]=0.0;
}
start = timestamp();
//ijk form
for(i =0; i < dimension; i++)
for(j =0; j < dimension; j++)
for(k =0; k < dimension; k++)
C[dimension*i+j]+= A[dimension*i+k]* B[dimension*k+j];
end = timestamp();
printf("
secs:%f
", end-start);
free(A);
free(B);
free(C);
return 0;
} L1: 320 kb, theoretically calculate the cache hit and miss rates at the L1 level.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!