Memory tuning on NetWare 65

From MicroFocusInternationalWiki
Revision as of 22:07, 2 March 2006 by Gracal (Talk | contribs) (Inital entry, a placeholder for the full thing)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

This is a frequent post in the forums. And this is an attempt to decrypt what it all means. Reportedly there will be a new article that explains all the magic behind it, so consider this a mere place-holder until the full article can be posted.

The Hamish Speirs example, explained

Please note that the values given here are tuned to a specific poster in the forums. Don't use them unless you know what you are doing. This article is just to explain what each of the settings do, not tell you how to find your own values. That will come in a later article.

set auto tune server memory=off

Auto Tune Server Memory:  ON
   Can be set in the startup ncf file.
   Description: Server will self tune internal memory set parameters.

TID10091980 describes this parameter as:

New to NetWare 6.5 Support Pack 3 is the set parameter "set auto tune server
memory".  This parameter is ON by default and will automatically set the file cache
maximum size appropriately for the server during operation.  When this feature is
enabled, messages will be printed on the system console screen notifying the 
administrator of this activity.  Novell recommends that this parameter stay at its 
default setting of ON.

By setting this parameter off we tell the server to NOT auto-tune the memory. The "set fs cache..." entries below are us doing the tuning for the server.

set file cache maximum size=1688207360

File Cache Maximum Size:  1688207360
   Limits: 1073741824 to 3229614080
   Can be set in the startup ncf file.
   Description: This parameter controls the maximum size of the file system
                cache. A smaller file system cache results in less memory
                fragmentation but is less optimized for file services. This
                parameter takes effect immediately but works best if the server
                is restarted. This parameter will supersede the File Service
                Memory Optimization parameter if both are set.

This parameter set the maximum amount of memory that is used for file-caching. Decreasing this value gives more space for NLMs to load (and more space for leaky NLMs to leak into, and thus increase uptime a bit).

set fs cache pool minimum pages=144979

FS Cache Pool Minimum Pages:  1000
   Limits: 0 to 4294967295
   Can be set in the startup ncf file.
   Description: This is the minimum number of pages the file system cache needs
                for proper operation.

Upping this value tells the file cache mechanism to grab memory pages on-boot. This has the effect of cutting down on file-cache related memory fragmentation. Since we turned off auto-tuning, we need to specify this.

set fs cache pool desired pages=524288

FS Cache Pool Desired Pages:  1250
   Limits: 0 to 4294967295
   Can be set in the startup ncf file.
   Description: This is the desired number of pages the file system cache needs
                for proper operation.

Upping this from the default tells the system to grab more memory for file-cache, and keep it there. Another way to cut down on memory fragmentation.

set fs cache pool lots of pages=524288

FS Cache Pool Lots of Pages:  749229
   Limits: 0 to 4294967295
   Can be set in the startup ncf file.
   Description: This is the number of pages the file system cache considers to
                be excessive.  Memory may be transferred to another cache
                subsystem if necessary.

This describes the point above which the file-cache should start giving memory back to other things. Or at least marking the memory as available. By setting this level to the same as the 'desired', we minimize fluxuations in cache-level that can cause memory fragmentation.

set vm cache pool percentage=5

VM Cache Pool Percentage:  80
   Limits: 0 to 90
   Can be set in the startup ncf file.
   Description: This specifies the percentage of available pages that can be
                allocated to the VM subsystem if needed. Setting this parameter
                will change other VM cache pool settings.

The value derived here gently encourages memory to end up as file cache and not NLM memory. The exact reasons for this are unclear to this author.

set vm cache pool maximum pages percentage=5

VM Cache Pool Maximum Pages Percentage:  0
   Limits: 0 to 100
   Can be set in the startup ncf file.
   Description: This specifies the maximum amount of physical pages the VM
                subsystem, based on a percentage of total system memory.  A
                value of 80 would allow the VM subsystem to take up to 80% of
                the physical memory on the system.  A value of zero disables
                this feature.

The value derived here gently encourages memory to end up as file cache and not NLM memory. The exact reasons for this are unclear to this author.