USER_STACK_SIZE

Specifies the GT.M stack size in bytes.

The stack has a fixed size for any given image. If the routines executed by a process consume nearly all the existing stack space, GT.M issues a STACKCRIT error. A process may attempt to recover from a STACKCRIT by removing levels from the stack. If the routines executed by a process consume ALL the existing stack space, GT.M issues a STACKOFLOW error and terminates the application image.

Invocations with DOs, XECUTEs and extrinsics all consume stack space. NEWs and parameter passing increase the amount of space consumed as a general function of the number of variables they affect.

The default USER_STACK_SIZE is adequate for most common M programming styles. Setting this parameter too small can produce an image that cannot run successfully. Large USER_STACK_SIZEs increase process memory requirements and image activation time.