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

2 posts / 0 nouveau(x)
Dernière contribution
Reportez-vous à notre Notice d'optimisation pour plus d'informations sur les choix et l'optimisation des performances dans les produits logiciels Intel.

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

Laisser un commentaire

Veuillez ouvrir une session pour ajouter un commentaire. Pas encore membre ? Rejoignez-nous dès aujourd’hui