2010年1月10日

OpenMP

OpenMP
//-- openMP.c --
#include <omp.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

int main(void) {
printf("Max Threads: %d, Process: %d\n", omp_get_max_threads(),
omp_get_num_procs());
#pragma omp parallel for
for (int i = 0; i < 10; i++) {
sleep(1);
printf("Thread: %d, Times: %d\n", omp_get_thread_num(), i);
}
return EXIT_SUCCESS;
}
/*
$ gcc -std=c99 -fopenmp openMP.c -oopenMP
$ ./openMP
Max Threads: 2, Process: 2
Thread: 1, Times: 5
Thread: 0, Times: 0
Thread: 1, Times: 6
Thread: 0, Times: 1
Thread: 1, Times: 7
Thread: 0, Times: 2
Thread: 1, Times: 8
Thread: 0, Times: 3
Thread: 1, Times: 9
Thread: 0, Times: 4
*/

沒有留言:

網誌存檔