I have ifc 7.0 and I compiled some code using the -openmp and -parallel options in order to make use of my dual processor Xeon machine. I set OMP_NUM_THREADS to 4 because on "top" I see four cpu's. The results were: during execution, the user cpu is around 65% (I am assuming this is in the parallel regions) and distributed more or less equally among all four cpus. Occasionally, the usage goes to 100% , which is the usual case without any parallelization directives. The problem is this: Rather than having each cpu reading 15% I want them to read 100% (or even 50%) in order to get an improvement in my program's performance.
Does anyone know what to do? Should I switch to version 8 of the compiler?