#include #define N 1536 float A[N][N]; float B[N][N]; float C[N][N]; void init_array() { int i, j; for (i = 0; i < N; i++) { for (j = 0; j < N; j++) { A[i][j] = (1+(i*j)%1024)/2.0; B[i][j] = (1+(i*j)%1024)/2.0; } } } void print_array() { int i, j; for (i = 0; i < N; i++) { for (j = 0; j < N; j++) { fprintf(stdout, "%lf ", C[i][j]); if (j%80 == 79) fprintf(stdout, "\n"); } fprintf(stdout, "\n"); } } int main() { int i, j, k; double t_start, t_end; init_array(); for (i = 0; i < N; i++) { for (j = 0; j < N; j++) { C[i][j] = 0; for (k = 0; k < N; k++) C[i][j] = C[i][j] + A[i][k] * B[k][j]; } } #ifdef TEST print_array(); #endif return 0; }