On Apr 26, 4:26 am, Reinhold Bader <Ba...@[EMAIL PROTECTED]
> wrote:
> Hello,
>
> the <other stuff> I can't comment about, but there is the possibility
> that the Netlib routine uses either saved variables or common blocks,
> for which no automatic privatization applies.
>
> It is generally advisable to run e.g. Intel's Thread Checker on such
> a code; the tool sometimes even finds bugs that cannot (easily) be
isolated
> if only output data are compared.
>
> Regards
>
> [snip]> do i2 = 1, N2
> > do i1 = 1, N1
> > wk(i1) = x(i1, i2)
> > end do
> > call <NetLibSubroutine>(wk, z, <other stuff>)
> > do i1 = 1, N1
> > x(i1, i2) = wk(i1)
> > end do
>
> [snip]
>
>
>
> > Can someone clue me on how to call external subroutines from within a
> > parallel construct? As I understand, the OpenMP standard states that
> > all variables local to subroutines and functions within a parallel
> > construct are private.
>
> > Thanks
>
> > Jomar
Sehr geherter Reinhold,
Thank you for your answer. I checked all the subroutines in the
library and none has any save or common statements. I found, however,
that many of them used the old dimension a(1) instead of "dimension
a(*)" (these were routines translated from Fortran 77). I changed all
the former to the latter form, but that didn't make a difference.
Danke,
Jomar


|