In certain revisions of the Solaris 2.6 kernel patch (105181-10 for SPARC platforms and 105182-09 for Intel platforms) and in the Solaris 7 release, a new parameter is introduced: priority paging. A new starting point for pageout thread activity (cachefree) is also used. When available memory is between cachefree and lotsfree, priority paging modifies the page-checking algorithm to skip the page, if it came from an executable (text, stack, or data). After memory falls below lotsfree, every page is considered equally. The facility is not enabled by default, but can be enabled by either setting cachefree to a value greater than lotsfree or by setting the priority_paging variable to a non-zero value, which sets cachefree to 2 times lotsfree.
The Solaris 8 release changes the way file system pages are cached. These changes subsume the priority paging capability.
Remove both cachefree and priority_paging settings in the /etc/system file.
The caching changes remove most of the pressure on the virtual memory system resulting from file system activity. Several statistics exhibit new behavior:
Page reclaims are higher because pages are now explicitly added to the free list after I/O completes.
Free memory is now higher because the free memory count now includes a large component of the file cache.
Scan rates are drastically reduced.
Obsolete
See cachefree (Solaris 2.6 and Solaris 7 Releases) for more information.
Enables priority paging feature, provided cachefree is greater than lotsfree. This variable is available for systems running the Solaris 2.6 release, with at a minimum, revision 10 of patch 105181 installed, and for systems running the Solaris 7 release. By default, this feature (cachefree equals lotsfree) is disabled.
Unsigned long
Value of lotsfree unless priority_paging is set, which means cachefree is 2 times lotsfree
lotsfree to physical memory on system
Pages
Yes
If less than lotsfree, it is reset to the value of lotsfree.
Should always be enabled unless the system is tight on memory, and does excessive I/O where the contents of the files are needed in the future.
Obsolete
This variable sets cachefree to 2 times lotsfree.
The Solaris 8 release changes the way file system pages are cached. These changes subsume the priority paging capability.
Remove both cachefree and priority_paging settings in the /etc/system file.
Obsolete
See priority_paging (Solaris 2.6 and 7 Releases) for more information.
Enables priority paging feature. When set, this variable sets cachefree to 2 times lotsfree, thereby enabling priority paging.
Signed integer
0
0 (priority paging disabled unless cachefree set separately) or 1 (enabled)
Toggle (on/off)
No. Sets the value of cachefree at boot time only. Runtime enabling can be achieved by setting cachefree with mdb while the system is running.
None
Should always be enabled unless the system is tight on memory, and does excessive I/O where the contents of the files are needed in the future.
Obsolete
Minimum amount of swap space that TMPFS leaves for the rest of the system.
Signed long
256
0 to maximum swap space size
Bytes
Yes
None
To maintain a reasonable amount of swap space on systems with large amounts of TMPFS usage, you can increase this number. The limit has been reached when the console or system messages file displays the following message.
fs-name: File system full, swap space limit exceeded |
Unstable
Defines the number of pages that the system requires be unlocked. If a request to lock pages would force available memory below this value, that request is refused.
Unsigned long
Maximum of the triplet (200, tune_t_minarmem + 100, [10% of memory available at boot time])
Default value to no more than 20% of physical memory. The systems does no enforcement of this range other than that described in the Validation section.
Pages
Yes, unless dynamic reconfiguration operations that add or delete memory occur. At that point, the value is reset to whatever was provided in the /etc/system file or was calculated.
Maximum of the quadruplet (200, tune_t_minarmem + 100, [10% of memory available], and the value from /etc/system). No message is displayed if the value from /etc/system is increased. Done only at boot time.
When memory locking requests or attaching to a shared memory segment with the SHARE_MMU flag fails, yet the amount of memory available seems to be sufficient. Keeping 10% of memory free on a 32-Gbyte system might be excessive.
Excessively large values can cause memory locking requests to fail unnecessarily.
Unstable