Für Daten, die beim Programmlauf auf dem Stack abgelegt werden (z.B. lokale
Variablen in Funktionen), steht auf der SGI pro Prozess nur 512MByte
Speicher zur Verfügung. Kompilieren mit -static schafft Abhilfe. Damit
werden solche Variablen statisch allokiert. Dieser Switch kann auch
selektiv nur auf bestimmte Quellmodule angewendet werden. Problematisch ist
diese Lösung bei der Verwendung von OpenMP: eine mit -static kompilierte
Funktion kann nicht aus einer parallelen Region heraus aufgerufen werden.

Eine weitere Alternative stellt die Verwendung des Switches
-LANG:heap_allocation_threshold=XXX dar, der bewirkt, dass automatische
Arrays ab einer Größe von XXX Bytes auf dem Heap statt auf dem Stack
angelegt werden.