Memory requirements assessment with the rmss command

The rmss command, Reduced-Memory System Simulator, provides you with a means to simulate different sizes of real memories that are smaller than your actual machine, without having to extract and replace memory boards. Moreover, the rmss command provides a facility to run an application over a range of memory sizes, displaying, for each memory size, performance statistics such as the response time of the application and the amount of paging.

The rmss command is designed to help you answer the question: How many megabytes of real memory does a system need to run the operating system and a given application with an acceptable level of performance?. In the multiuser context, it is designed to help you answer the question: How many users can run this application simultaneously in a machine with X megabytes of real memory?

The main use for the rmss command is as a capacity planning tool, to determine how much memory a workload needs. It can also be used as a problem determination tool, particularly for those cases where having more memory degrades performance.

To determine whether the rmss command is installed and available, run the following command:
# lslpp -lI bos.perf.tools

Whenever the rmss command changes memory size, the minperm and maxperm are not adjusted to the new parameters and the number of lruable pages is not changed to fit the simulated memory size. This can lead to an unexpected behavior where the buffer cache will grow out of proportion. As a consequence, the system can run out of memory.

It is important to keep in mind that the memory size simulated by the rmss command is the total size of the machine's real memory, including the memory used by the operating system and any other programs that may be running. It is not the amount of memory used specifically by the application itself. Because of the performance degradation it can cause, the rmss command can be used only by a root user or a member of the system group.