Running pgcc 13.10 with -mp i.e. OpenMP.
The _OPENMP indicates 200805 which presumably means OpenMP 3.0 compliance.
However, for pure double-loop I cannot get
#pragma omp parallel for collapse(2)
working – the message is :
PGC-S-0043-Redefinition of symbol, FUNCTION (PGI_double_mgs_v1.c: 208)
PGC-S-0043-Redefinition of symbol, PRETTY_FUNCTION (PGI_double_mgs_v1.c: 208)
The for-loop around line 208 was
for (int i = 0; i<nrows; ++i)
for (int k = 0; k<ncols; ++k)
wrk_[k] = A[k];
Is this a known limitation ?
With Intel compiler this works and gives huge advantage e.g. on MICs._