Hi - I am using OpenMP to parallelize a Do loop
If the Do loop extends from s=1 to s=50 iterations, and there are two threads, Fortran automatically divides the iterations into two blocks s=1 to s=25 for one thread and s=26 to s=50 for another thread.
Due to race condition, one thread finishes faster than the other thread. So lets say 1st thread finishes s=25 , when the other thread is at s = 43, both the threads just stop. The second thread should have continued on till it reaches s=50. But it doesnt, it stops completely.
On closer look, I noticed that the other thread reaches the part of the code where PARDISO is called upon and just stops without giving any error. Is there any reason why Pardiso can't be called upon by the other thread when the first thread has finished its set of iterations ?