Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
18BCE2182 ASSESS_3 Q4
//gcc 7.4.0 #include <stdio.h> #include <omp.h> #include <stdlib.h> #include <time.h> #include <math.h> int main(void) { int r=3000; int c=3000; int *arr[r]; for(int i=0;i<r;i++) { arr[i]=(int *)malloc(c*sizeof(int)); } for(int i=0;i<r;i++) { for(int j=0;j<c;j++) { arr[i][j]=rand(); } } printf("\nSequential Time: \n"); int *arr1[r]; for(int i=0;i<r;i++) { arr1[i]=(int *)malloc(c*sizeof(int)); } double start=omp_get_wtime(); for(int i=0;i<r;i++) { for(int j=0;j<c;j++) { arr1[i][j]=arr[j][i]; } } double end=omp_get_wtime(); printf("Execution Time : %f\n",end-start); printf("\nParallel Time: \n"); int *arr2[r]; for(int i=0;i<r;i++) { arr2[i]=(int *)malloc(c*sizeof(int)); } double start1=omp_get_wtime(); int i=0; int j=0; #pragma omp parallel for for(i=0;i<r;i++) { for(j=0;j<c;j++) { arr2[i][j]=arr[j][i]; } } double end1=omp_get_wtime(); printf("Execution Time : %f\n",end1-start1); printf("\nStatic Schedule Parallel Time: \n"); start1=omp_get_wtime(); #pragma omp parallel for schedule(static,16) for(i=0;i<r;i++) { for(j=0;j<c;j++) { arr2[i][j]=arr[j][i]; } } end1=omp_get_wtime(); printf("Execution Time : %f\n",end1-start1); printf("\nDynamic Schedule Parallel Time: \n"); start1=omp_get_wtime(); #pragma omp parallel for schedule(dynamic,16) for(i=0;i<r;i++) { for(j=0;j<c;j++) { arr2[i][j]=arr[j][i]; } } end1=omp_get_wtime(); printf("Execution Time : %f\n",end1-start1); printf("\nGuided Schedule Parallel Time: \n"); start1=omp_get_wtime(); #pragma omp parallel for schedule(guided,16) for(i=0;i<r;i++) { for(j=0;j<c;j++) { arr2[i][j]=arr[j][i]; } } end1=omp_get_wtime(); printf("Execution Time : %f\n",end1-start1); for(int i=0;i<r;i++) { free(arr[i]); } return 0; }
run
|
edit
|
history
|
help
0
Student. Txt
fgets and basic string manipulation
Padding Err
SOLUCIONES_TRABAJO_05
Assignment 4 v3
C pattern Rhombus
c
json formatter
18BCE2182 ASSESS_1 Q1-5
18BCE2182 MIDTERM QUES-2