Hi again
Things are progressing nicely with my software and I am very grateful for the quick answers I can get here saving a lot of time searching documentation. I managed to get parallel processing working but (maybe stupidly) I have the error code as part of a TYPE structure and I need to detect the error code separately in each thread. I tried to enter the error code as private in the do parallel but that gave an error message using GNU Fortran 4.8 (on Windows). Is that something which will be fixed in later versions of the compiler or something I have to change? The compilation error is
!$OMP parallel do private(gx%bmperr,neweq)
.........................................1
Error: Syntax error in OpenMP variable list at (1)
gx%bmperr is an integer variable in the gx structure. It works if I remove the gx%bmperr variable (and if I have no runtime errors). neweq is a pointer to another TYPE structure.
Incidentally, if I terminate the do parallel with an !$OMP end parallel I also get a compilation error but the compilation works without any particular OMP directive at the end of the loop. Reading the documentation I thought one should have en end parallel.
Bosse
Things are progressing nicely with my software and I am very grateful for the quick answers I can get here saving a lot of time searching documentation. I managed to get parallel processing working but (maybe stupidly) I have the error code as part of a TYPE structure and I need to detect the error code separately in each thread. I tried to enter the error code as private in the do parallel but that gave an error message using GNU Fortran 4.8 (on Windows). Is that something which will be fixed in later versions of the compiler or something I have to change? The compilation error is
!$OMP parallel do private(gx%bmperr,neweq)
.........................................1
Error: Syntax error in OpenMP variable list at (1)
gx%bmperr is an integer variable in the gx structure. It works if I remove the gx%bmperr variable (and if I have no runtime errors). neweq is a pointer to another TYPE structure.
Incidentally, if I terminate the do parallel with an !$OMP end parallel I also get a compilation error but the compilation works without any particular OMP directive at the end of the loop. Reading the documentation I thought one should have en end parallel.
Bosse