I just tried OpenMP with a simple c program
test() {
for(int i=0;i<100000000;i++);
}
main() {
printf("Num of CPU: %d\n", omp_get_num_procs());
#pragma omp parallel for num_threads(4)
for(int i=0;i<100;i++) test();
}
Compiled with g++ -fopenmp
. It can correctly print out that I have 4 CPUs, but all test functions are running at thread 0
.
I tried to modify the OMP_NUM_THREADS
. But it has no effect also.
I had everything the same as the online examples but why wouldn't I get it to work?