RT_Argument
: Runtime Environment
class
RT_Argument
{
public:
int proc
int memory
int heap
int blocks
int stack
int verbose
}
arg.init
()
arg.print
()
RT_Argument arg
Specification: init
fills arg
with information about the runtime environment of the currently executing
RT++ program. print
writes the contents of arg to the standard
output stream.
The runtime environment is defined by a structure of the same type passed to
rt_main
.
The individual components have the following interpretation:
- proc is the number of processes used by the program.
- memory is the maximum amount of shared memory used by the
program (in bytes).
- heap is (a lower bound for) the initial size of the
garbage-collected heap (in bytes).
- blocks is the number of blocks into which the heap is partitioned
per processor (i.e. the total block number is
blocksproc).
- stack is the size of the stack used for the execution of
each thread (in bytes).
- verbose is 1 if statistics output is generated during program
execution and 0 else.
Note:
The initial size of the heap is actually the smallest with
proc blocks heap for some block
size . This block size is an upper bound for the size of contiguous
blocks that can be allocated in shared memory.
Implementation: During program execution, the heap may be gradually
extended in multiples of the initial heap size. This takes place, if after
garbage collection
- less than proc bytes heap memory are free, or
- the largest contiguous memory block is not able to satisfy the
allocation request that triggered the garbage collection.
Author: Wolfgang Schreiner
Last Modification: April 12, 1997