HP-UX Reference (11i v3 07/02) - 5 Miscellaneous Topics (vol 9)

a
Aries(5)
Itanium(R)-based Systems Only
Aries(5)
pa_maxssiz_32bit = max_pa_stack_size +
PA-RISC Application stack size (ssz) +
Aries heap size (heap_ssz) +
Aries translation code buffer size (ccsz) +
5 MB (Aries Dynamic Translator heap) +
5 MB (Aries data etc)
Examples
1. If a 32-bit PA-RISC application requires a 128 MB stack size, set kernel tunable parameter
pa_maxssiz_32bit
to
128 MB (ssz) + 22 MB (heap_ssz) + 16 MB (ccsz) + 10 MB = 176 MB
2. If a 32-bit PA-RISC application requires a maximum possible stack size, set the kernel tunable param-
eter
pa_maxssiz_32bit
to
383 MB (ssz) + 22 MB (heap_ssz) + 16 MB (ccsz) + 10 MB = 431 MB
3. If a 32-bit PA-RISC application requires a 128 MB of Aries heap, assuming 32 MB of application stack,
set the kernel tunable parameter
pa_maxssiz_32bit
to
32 MB (ssz) + 128 MB (heap_ssz) + 16 MB (ccsz) + 10 MB = 186 MB
64-bit Aries
At process startup time Aries reserves space for the PA-RISC application stack in AMA. Maximum size of
PA-RISC application stack is computed as follows:
max_pa_stack_size = least of following two factors:
1. ti_current value in structure of type
tuneinfo2_t defined in
/usr/include/sys/dyntune.h
by making system call tuneinfo2 with parameter
maxssiz_64bit .
2. max_pa_stack_size = pa_maxssiz_64bit - 224 MB
AMA is divided into different memory regions as follows:
pa_maxssiz_64bit = max_pa_stack_size +
PA-RISC Application stack size (ssz) +
Aries heap size (heap_ssz) +
Aries translation code buffer size (ccsz) +
8 MB (Aries Dynamic Translator heap) +
25 MB (Aries data etc).
Examples:
1. If a 64-bit PA-RISC application requires a 512 MB stack size, set kernel tunable parameter
pa_maxssiz_64bit
to
512 MB (ssz) + 128 MB (heap_ssz) + 64 MB (ccsz) + 33 MB = 737 MB
2. If a 64-bit PA-RISC application requires the maximum possible stack size, set kernel tunable parameter
pa_maxssiz_64bit to
1024 MB (ssz) + 128 MB (heap_ssz) + 64 MB (ccsz) + 33 MB=1249 MB
3. If a 64-bit PA-RISC application requires a 512 MB of Aries heap, assuming 256 MB of application stack,
set kernel tunable parameter pa_maxssiz_64bit to
256 MB (ssz) + 512 MB (heap_ssz) + 64 MB (ccsz) + 33 MB = 865 MB
PA-RISC APPLICATION THREADS EMULATION UNDER ARIES
Calculating the Required Size of the Aries Heap
To emulate PA-RISC application’s threads, Aries needs to create its own native threads whenever a PA-
RISC application creates new threads. To create new threads, Aries needs to allocate memory to accommo-
date thread specific data, thread stack, and thread backing store area for the new thread. Memory require-
ment for thread creation in Aries is as follows:
72 Hewlett-Packard Company 9 HP-UX 11i Version 3: February 2007