Try OpenEdge Now
skip to main content
Startup Command and Parameter Reference
Startup Parameter Descriptions : Maximum Memory (-mmax)
 

Maximum Memory (-mmax)

Use Maximum Memory (-mmax) to change the initial amount of memory allocated for r-code segments, in kilobytes.
Operating system and syntax
UNIX / Windows
-mmax n
Use with
Maximum value
Minimum value
Single-user default
Multi-user default
Client Session
65,534
1
3,096
3,096
n
The amount of memory allocated for r-code segments.
The AVM dynamically allocates space for r-code segments in the execution buffer as needed. When memory allocation reaches the value specified by the Maximum Memory (-mmax) value, the AVM writes nonactive segments to the sort file to make room for new active procedures. (the AVM writes library-stored r-code to the sort file only if you specified the PROLIB Swap (-pls) startup parameter.) If you have large procedures or deeply nested procedure calls, you can use -mmax to increase the initial size of the execution buffer to reduce disk I/O activity required to swap segments to the sort file.
The -mmax value does not limit the amount of memory available for r-code segments. If the AVM requires more space in the execution buffer and cannot regain enough space by swapping inactive segments to the sort file, the AVM allocates more memory.
The -mmax limit is a soft limit; so if your application needs to exceed the limit, the AVM automatically increases it and issues a WARNING message. The WARNING is written to the current output (if there is current output) and to the log file (LG).
You can force OpenEdge to adhere to the specified -mmax limit by starting the session with the Hardlimit(-hardlimit) startup parameter. When you use the -hardlimit startup parameter, OpenEdge issues the WARNING message when you exceed the Maximum Memory limit. It also issues a message that a resource limit was reached and raises an untrappable STOP condition. Note also that -hardlimit also enforces the limits set by the DirectorySize (-D), the Local BufferSize (-l), and the Nested Blocks(-nb) startup parameters. The STOP condition is raised when any of the specified limits is reached.
Use Statistics (-y) and SegmentStatistics (-yd) to see segment allocation information.