Are complex*16 variables static by default?
N.M. Maclaren
nmm1@cam.ac.uk
Fri Feb 17 13:03:00 GMT 2017
On Jan 28 2017, Steffen Boerm wrote:
>
>>>> how are complex*16 variables handled by gfortran if "-frecursive" is
>>>> not specified?
>>
>> AFAIK they are handled just like other primitive types.
>
>That's what I would have expected.
>
>Still, if I replace zlarfg/zlarf by my own code or disable OpenMP, the
>program seems to work. Wouldn't this indicate that zlarfg/zlarf may
>introduce strange side effects?
No. What it would indicate is that the code has falled foul of OpenMP's
shared/private rules, which are 'interestingly complicated'. Note that
'thread safe' isn't a well-defined term but, given that OpenMP is currently
the dominant shared-memory threading paradigm, should include being safe
for OpenMP.
>I am using the LAPACK version of Ubuntu 16.04.1 (version
>3.6.0-2ubuntu2). Does it make a difference whether the library is
>compiled with "-fopenmp" or just with "-frecursive"?
Almost certainly. The requirements are different, though they overlap.
>Ill try downloading LAPACK 3.7 and compiling it myself with "-fopenmp".
>May that will fix the problem.
That's the best start. If that fails, there will be solutions, but the
best one would be to improve LAPACK.
Regards,
Nick Maclaren.
More information about the Fortran
mailing list