openMP 平行運算疑問 ? |
尚未結案
|
cilliner69
一般會員 發表:2 回覆:2 積分:0 註冊:2009-04-03 發送簡訊給我 |
Dear all
為何底下的平行運算程式比不使用平行運算程式多花了7倍的時間 不使用平行運算約 20 sec , 使用平行運算約140 sec 不是說平行運算效率會比較好嗎? 我到底是哪裡觀念錯了呢? #include #include #include #include void Test(); volatile ulong a[10] = {0,1,2,3,4,5,6,7,8,9}; volatile ulong *ptr ; volatile ulong *ptr1 ; int main(int argc, char* argv[]) { Test(); } void Test() { int i,j,k,l; clock_t start,end; double duration; //start = omp_get_wtime(); start = clock(); #pragma omp parallel sections { #pragma omp section { for (i=0;i<500000000;i ) { for (k=0;k<10;k ) { ptr = &a[0]; *ptr = 100 ; } } } #pragma omp section { for (j=0;j<500000000;j ) { for (l=0;l<10;l ) { ptr1 = &a[9]; *ptr1 = 200; } } } } //end = omp_get_wtime(); end = clock(); duration = (double)(end-start)/CLOCKS_PER_SEC; printf( "%d,%d\n", a[0],a[9]); printf( "%f seconds\n",duration); //printf( "%d,", n); } |
cilliner69
一般會員 發表:2 回覆:2 積分:0 註冊:2009-04-03 發送簡訊給我 |
sorry!
#include omp.h #include stdio.h #include stdlib.h #include time.h 漏了
編輯記錄
cilliner69 重新編輯於 2009-04-03 13:33:43, 註解 無‧
|
ikk
尊榮會員 發表:4 回覆:413 積分:768 註冊:2003-06-30 發送簡訊給我 |
|
boss.tw
高階會員 發表:15 回覆:109 積分:194 註冊:2005-05-17 發送簡訊給我 |
編輯記錄
boss.tw 重新編輯於 2009-04-04 20:26:41, 註解 無‧
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |