Checking Memory Usage

This topic describes tools for checking memory usage on Windows and UNIX.

See Also
Checking for Other Running Processes
Reviewing Other Configuration Issues
Collecting Logs and Core Files

Windows
The Task Manager is very useful on Windows.
Linux
For some versions of Linux, the top utility is a very powerful tool. It usually comes installed on the machine and can give live CPU and memory stats on a configurable refresh time.

Note: When using top or vmstat, the figures for process memory usage can be inflated artificially because some Unix versions of the memory manager do not always show freed memory returned to the system "pool". If the system has enough free memory to satisfy its current needs, memory freed by a process will not automatically be shown as freed. Therefore, utilities such as top tend to show the peak amount (or "high water mark") of memory that a process has allocated rather than what the process is currently using.

It is a good idea to monitor the amount of swap space in use. The system should not swap, and all processes should be in physical memory. Use a utility such as top or vmstat to determine swap activity. You should also note the process path (the path where the process was loaded from) and its command line. Since there are usually multiple Java processes running at the same time, the command line should give a clue as to whether a particular process is an application server or an 3DSpace Service. Since top typically does not show the process path, you should note the process id (PID) of the larger processes from top's PID column. You can get the process path and command line using the ps -ef command and using the PID to find the process in the resulting list.