int main() { double start = time_please(); int large_number1 = 2000000; int large_number2 = 2324500; #pragma omp parallel num_threads(2) if (omp_get_thread_num() == 0) { prime1(large_number1); } if (omp_get_thread_num() == 1) { prime1(large_number2); } #pragma omp barrier double end = time_please(); std::cout << "threads completed in: " << end - start << std::endl; start = time_please(); prime1(large_number1); prime1(large_number2); end = time_please(); std::cout << "non-threads completed in: " << end - start << std::endl; return 0; }
int main() { FILE *fin=fopen("pprime.in","r"); FILE *fout=fopen("pprime.out","w"); int a,b,i,num; clock_t begin, end; double cost; begin = clock(); fscanf(fin,"%d %d",&a,&b); if((b-a)>500000) num=prime1(pnum,a,b); else{ num=prime2(pnum,a,b); start=0; } for (i = start; i < num ; i++){ if(pnum[i]>=a) if(ispal(pnum[i])) fprintf(fout,"%d\n",pnum[i]); } end = clock(); cost = (double)(end - begin) / CLOCKS_PER_SEC; printf("%lf seconds\n", cost); return 0; }