OpenMP® Forum

Discussion on the OpenMP specification run by the OpenMP ARB. OpenMP and the OpenMP logo are registered trademarks of the OpenMP Architecture Review Board in the United States and other countries. All rights reserved.

The title is what my problem seems to boil down to. I have posted a more detailed question to stackoverflow [1] yesterday and would like to point you there. If full replication of the question is appreciated I'll do that.Anyway, any help is higly appreciated as I worked several hours on this problem yet.

Data members of private objects are indeed private, whereas static data members of classes are shared. Local variables declared inside routines called from within a parallel region are private unless they are declared static.

To check for race conditions: are there any static data members, local variables declared as static, or other global variables modified inside the parallel region? Are there any concurrent accesses to the same file by different threads?

There are no static variables in the code. Also there are no files accessed by more than one thread. But I just discovered that in the files from which functions are called in run() global variables are present. I guess this might be a problem?!

run() calls functions which are defined in the file, say, "help.cpp". These functions are actually working on global variables defined inside "help.cpp". And yes, I was dumb not to see that. Hope I can get the thing running now So far, thank you very much!