August 2000 The Solaris 8 Operating Environment incorporates an improved memory architecture that improves performance for desktop systems and servers. Better yet, it does not require any tuning, it is easier to monitor, and it provides better memory usage reporting to help you decide if you need more memory. Use this table to locate subjects in this article:
Where Has All My Memory Gone?A common question pre-Solaris 8 users ask is "Where has all my memory gone"?
The Most likely, memory is being used to cache file system data, since the virtual memory system is shared by applications, data, the kernel, and file system data. By default, any free memory is used to cache data read from or written to the file system (including NFS). The size of the file system cache is dynamic -- it grows or shrinks depending on free memory. The idea of this memory allocation scheme is to simultaneously enhance file system performance and optimize the use of an important system resource -- virtual memory. The two computing tasks of running applications and reading and writing data compete equally for system memory. Generally, sharing a pool of memory is not an issue on small memory systems with low compute power, but with today's powerful desktop systems and servers, the file system cache can overwhelm the memory pool and make application performance suffer. Another drawback is that file system performance is tied to how quickly the virtual memory system can free memory. Even worse, it is difficult to measure memory usage amongst
the consumers of memory on the system. The So, the question becomes: is it because the system is caching file system data, or is it because memory is a bottleneck and the system is struggling to keep up? The Least Recently Used Paging AlgorithmTo better understand how the virtual memory system works, let's examine the
For example, here are the watermarks used by the LRU paging algorithm for a system with 128 Mbytes of primary memory:
Priority PagingTo alleviate the pressure on virtual memory induced by heavy file system
activity, Priority paging introduces a new watermark in the LRU paging algorithm, cachefree:
Priority paging helps performance on desktop systems with more than 64 Mbytes of primary memory, especially when a windowing system such as the Common Desktop Environment (CDE) is used. It is also a boon for servers running online transaction processing (OLTP) applications. OLTP applications will see better response time, as will applications that use batch processing, such as high performance computing (HPC) environments. Also, servers running mixed applications (for example, NFS and database systems) will benefit from priority paging. By default, priority paging is not enabled
on systems running the Solaris 7 operating environment.
To enable priority paging, set the following system
variable in the set priority_paging=1 Priority paging has been back-ported for systems running the Solaris 2.6 operating environment (you must first install kernel patch 105181-09 or higher) and the Solaris 2.5.1 operating environment (you must install kernel patch 103640-25 or higher). Use the same system variable specified previously and reboot to enable priority paging on these systems. The Solaris 8 Cyclical Page CachePriority paging is not available in the Solaris 8 operating environment,
for good reason. Solaris 8 introduces a new file system caching architecture,
the
The new file system caching architecture in Solaris 8 introduces a
new free list, the The result is a much cleaner architecture where the file system cache no longer competes for virtual memory resources, since it effectively pages against itself. Heavy file system activity does not force applications out of primary memory -- it now throws only other file system pages out. Because of these changes, the tools used to report virtual memory statistics report significantly different values that you should take into account when monitoring memory usage on your system. The most obvious changes are:
The pre-Solaris 8 problem of not being able to differentiate between a true
memory shortage or simply heavy file system activity has been eliminated. The
scan rate ( Also, the % vmstat -p 3
memory page executable anonymous filesystem
swap free re mf fr de sr epi epo epf api apo apf fpi fpo fpf
473160 40080 1 2 1 0 0 0 0 0 0 0 0 11 0 0
416920 45168 0 1 0 0 0 0 0 0 0 0 0 0 0 0
416920 45168 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Tuning virtual memory on systems running Solaris 8 is unnecessary -- the virtual memory system has been optimized for the best performance straight out of the box, providing you with a compelling reason to upgrade your computing environment (especially servers) to Solaris 8. Related Links
August 2000 | ||||||||||||||||||||||||||||||||||||||||||||||||
Oracle is reviewing the Sun product roadmap and will provide guidance to customers in accordance with Oracle's standard product communication policies. Any resulting features and timing of release of such features as determined by Oracle's review of roadmaps, are at the sole discretion of Oracle. All product roadmap information, whether communicated by Sun Microsystems or by Oracle, does not represent a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. It is intended for information purposes only, and may not be incorporated into any contract.
|
| ||||||||||||