两件事情:
最有可能的是,您只需要一个更昂贵的循环。尝试增加到
ARRAY_SIZE更大。
这是在我的机器上具有更大阵列大小的测试:
#define ARRAY_SIZE 100000000int main(){ clock_t start, end; double *non_parallel = (double*)malloc(ARRAY_SIZE * sizeof(double)); double *vec = (double*)malloc(ARRAY_SIZE * sizeof(double)); start = clock(); for(int i = 0; i < ARRAY_SIZE; i++) { non_parallel[i] = vec[i] * vec[i]; } end = clock(); printf( "Number of seconds: %fn", (end-start)/(double)CLOCKS_PER_SEC ); free(non_parallel); free(vec); return 0;}
输出:
Number of seconds: 0.446000
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)