about -autodouble

about -autodouble

I compile a package, everthing works fine
But if I switch on the -autodouble
I got error message
"Program received signal SIGSEGV, Segmentation fault"
when module declare the double precision array
Is this caused by the limitation of memory or other reason?
Thanks for help

publicaciones de 2 / 0 nuevos
Último envío
Para obtener más información sobre las optimizaciones del compilador, consulte el aviso sobre la optimización.

Well, if you declare arrays as plain REAL, the memory requirement may double with -autodouble. If you compile with -auto so that arrays go on the stack by default, or if you build with -openmp, you might exceed the available stack space, which would give a SEGV. (You can increase the stack allocation with ulimit -s nnnn (units of KB))
Likewise, you could exceed the virtual memory of your machine. Check the simple things first....
Another trap that can arise with -autodouble: if you call functions that are not intrinsic, you might need to change the call to double precision yourself. (This would not normally be a SEGV issue).

Martyn

Deje un comentario

Por favor inicie sesión para agregar un comentario. ¿No es socio? Únase ya