Ich versuche, mein Programm mit openMP zu parallelisieren. Das Programm verwendet stark STL-Wiederholungen. Es ist sagte dass openMP 3.0 dies bewältigen kann:
std::vector<int> N(2*N_max+1);
std::vector<int>::const_iterator n,m;
#pragma omp parallel for
for (n=N.begin(); n!=N.end(); ++n){
//Task to be in parallel
};
Ich erhalte jedoch die folgende Fehlermeldung:
error: invalid controlling predicate
Ich verwende gcc 4.5.0, (openMP3 implementiert in 4.4.0) und meine Build-String ist:
g++ -O0 -g3 -Wall -c -fmessage-length=0 -fopenmp -MMD -MP