Subject: (I) Calculation for databases I.EXM_SEGMENT_SIZE =================== Example: -------- DB-Size: 127 MB process instances: 5000 22 process instance segments about 250 instances per segment average instance size: 20 kb Conclusions: ------------ The maximum file size on AIX is 2 GB. The maximum recommended database size to achieve good performance on AIX is about 1 Gigabyte. ObjectStore performance deteriorates nonlinear with a segment number above 3000-4000. Objectstore performance deteriorates with the number of objects per segment. You need to balance those facts and find a segment number below 3000 without getting to much objects per segment. This is easy for small databases (thus the default of 200kb for EXM_SEGMENT_SIZE). With a process instance size of 20 kb you can achieve about 50 000 process instances in 1 Gigabyte. Table for 50 000 process instances. EXM_SEGMENT_SIZE instances per segment # segments --------------------------------------------------------- 200000 (default) 10 5000 400000 20 2500 800000(recommended) 40 1250 Recommendation: --------------- go with a EXM_SEGMENT_SIZE=800000 because even if the database grows to 2 GB (100000 process instances) the # of segments (2500) then stays below the recommended limit of 3000. II.EXM_PREALLOCATE_SEGMENT, EXM_NUMBER_OF_SEGMENTS,EXM_SEGMENT_STRATEGY ======================================================================= Those only apply when multiple RTSRVs access the same database (improve concurrency) and when the database keeps a constant size and number of process instances. III. OS_AS_SIZE ================ This has no performance impact. If OS_AS_SIZE is set too low, you get an err_out_of_address_space exception. For FlowMark the default of 100000 was always high enough. oscompact on the other hand required to increase the value up to 1GB in some environments. Only increase this value if you get the exception. IV. OS_CACHE_SIZE ================= Increasing the value improves performance until the whole working set of a transaction fits into the cache IF the machine has enough real memory to avoid paging/swapping. We recommend to increase OS_CACHE_SIZE to a value of 1/4 to 1/3 of real memory installed. The working set of a transaction depends on the number of users assigned and the complexity of your processes (e.g nested blocks,...). The working set of FlowMark transactions should not exceed 100MB. To really exactly tune this parameter one would have to measure the working set of transactions in your environment using Objectstore Performance expert. V. OS_RELOPT_THRESH=0 ===================== This disables relocation optimization. Relocation optimization is an algorithm ObjectStore uses to optimize performance in some scenarios not relevant for FlowMark ON COST OF ADDRESS SPACE CONSUMPTION. Since Flowmark does not benefit from this optimization we want to conserve address space and disable this.