Adjusting the MVFS scaling factor
About this task
The default MVFS scaling factor is automatically set based on the available physical memory
installed on the host.
- For Windows, the scaling factor can be up to a maximum value of 5.
- For UNIX/Linux, the scaling factor can be up to a value of 24, which is the recommended maximum. You can manually adjust the value to be higher. However, when considering setting the scaling factor higher than 24, be aware that a larger cache might not improve performance on all hosts. The cost of managing that cache (particularly the locking cost on multiprocessor hosts) can exceed the benefits.
Memory size (MB) | Memory<24 | 24<= Memory <512 | 512<= Memory <3072 | Memory >= 3072 |
---|---|---|---|---|
MVFS Scaling Factor | 0 | 1 | 2 | size/1024 |
In Table 1, the value of size excludes memory required by the operating system kernel. For size values greater than 3072 MB (3 GB), the MVFS scaling factor is rounded down to the nearest multiple of 1024 MB. For example, if a host has 4096 MB (4 GB) of physical memory and the kernel consumes 100 MB, the MVFS scaling factor is set to 3.
You can use setcache –mvfs –persistent –scalefactor to override the default scaling factor setting. On Windows, where the scaling factor is up to a maximum value of 5, you can also use the VersionVault program in Control Panel. On the MVFS Performance page, set the scaling factor value in the Scaling factor to initialize MVFS with more memory for better performance field. Click OK.
Increasing
the scaling factor by one requires about 500 KB of additional kernel memory
(200 KB nonpageable, 300 KB pageable).
Note: If you use setcache to
request more kernel memory than is currently available, the request fails
with a
not enough space
error. If this happens, you must
request a smaller cache size or else terminate unnecessary processes that
are consuming kernel memory.Changing the value of the scaling factor scales all of the MVFS cache sizes proportionally as
shown in Table 2.
MVFS cache name | scaling factor = 0 | scaling factor = 1 | scaling factor = 2 | scaling factor = f (f > 2) |
---|---|---|---|---|
mnode Cache (mnmax) | 4096 | 8192 | 12,288 | 4096(f+1), f<4; 2048(f+7), f>4 |
mnode Freelist Max | 901 | 1802 | 2703 | 0.22 mnmax |
Cleartext Freelist Max (Linux® and the UNIX® system) | 900 | 1800 | 2700 | 900(f+1) |
Cleartext Freelist Max (Windows®) | 900 | 1800 | 1800 | 1800 |
DNC File Cache | 800 bytes | 1600 bytes | 2400 bytes | 800(f+1) bytes |
DNC Directory Cache | 200 bytes | 400 bytes | 600 bytes | 200(f+1) bytes |
DNC ENOENT Cache | 800 | 1600 | 2400 | 800(f+1) |
RPC Handle Cache | 5 | 10 | 15 | 5(f+1), f < 2 10(f+1), f > 2 |
readdir Block Cache | 2 | 4 | 6 | 2(f+1), f < 26, f > 2 |