POSE can be configured in two different ways. Fundamental
behaviors are controlled by altering values in the pose_config.h file in the POSE installation, and rebuilding
POSE. Many of these configuration options can (and should) be
controlled by command line options. These will be designated here by
an asterisk (). See section 4.1 for the command line
options.
POSE_STATS_ON Turn on timing and statistics gathering for internal POSE
operations. Produces a small slowdown in program.
POSE_DOP_ON Turn on timing and statistics gathering for degree of parallelism calculations. Generates log files that can be loaded by ploticus scripts to produce graphs plotting active entities over time. Slows down program dramatically.
POSE_COMM_ON Turn on streaming communication optimization for small message packing.
COMM_TIMEOUT Used by streaming communication library. Time to wait (in ?) before sending buffered messages.
COMM_MAXMSG Used by streaming communication library. Number of messages to buffer before packing and sending as one.
LB_ON Turn on POSE load balancing.
STORE_RATE Default checkpointing rate: 1 for every STORE_RATE events.
SPEC_WINDOW Speculative window size: this is how far (in virtual time units) ahead of GVT posers are allowed to go.
MIN_LEASH and MAX_LEASH Bounds on the speculative window, these are adjusted by adaptive synchronization strategies.
LEASH_FLEX Granularity of flexibility when speculative window is shrunk or expanded.
MAX_POOL_SIZE Memory used by event messages is recycled. This controls how many messages of a particular size will be kept on hand.
MAX_RECYCLABLE This is the largest size of message that will be recycled.
LB_SKIP This controls the frequency of load balance invocation. 1 in every LB_SKIP executions of the GVT algorithm will invoke load balancing.
LB_THRESHOLD What the heck does this number mean? I can't remember. I'll have to look through the code... later. Meanwhile, I think this indicates some sort of threshold a single processor has to cross before we even bother with analyzing the load.
LB_DIFF Once the load has been analyzed, we compute the difference between the max and min PE loads. Only if this difference exceeds LB_DIFF do we bother migrating posers.
Several of the above flags and constants will be eliminated as the adaptive strategy is expanded. What remains will eventually become run-time options.