Examining and adjusting MVFS cache size

HCL VersionVault hosts that use dynamic views might benefit from MVFS cache tuning. Default MVFS cache sizes scale automatically based on host memory and are appropriate for a wide range of client needs, but you might want to change default MVFS cache sizes to improve performance in specific cases after performing a performance evaluation in your environment.

All cache tuning requires an intelligent trade-off between specific performance benefits that might result from larger caches and the potential for degraded application performance due to the dedication of more physical memory to caches. Cache tuning can help reallocate the MVFS's use of available memory in ways that reflect a particular host's patterns of use, but it cannot compensate for inadequate physical memory. Furthermore, there are trade-offs that need to be made in multi-processor (multi-core) systems, where increasing the cache sizes can increase locking overhead and could introduce lock contention. All performance tuning should be done in conjunction with a controlled performance evaluation in your environment.

To examine MVFS cache sizes and utilization, use the cleartool getcache -mvfs command. You can change MVFS cache size in two ways:
  • The easiest (and best) way is to adjust the MVFS scaling factor, an integer value from which most other MVFS cache sizes are derived. Use cleartool setcache -mvfs -persistent -scalefactor to adjust the scaling factor on any supported operating system (you must use the -persistent option when setting the scaling factor). On Windows®, you can also use the VersionVault program in Control Panel. The MVFS Performance page allows you to set the scaling factor and several other cache sizes.
  • You can also adjust selected values for individual caches by using setcache -mvfs or the MVFS Performance page of the VersionVault program in Control Panel. This method provides finer control, although it requires extensive analysis and testing, and can actually degrade performance if not done correctly. Do not use this method unless there are unusual circumstances that make values derived from the scaling factor unsuitable.
Note: Changes you make with setcache -mvfs are normally temporary and revert to their default values when the MVFS is restarted. setcache includes a -persistent option that enables changes you make in the scaling factor or individual caches to persist across restarts. Changes made on the MVFS Performance page are always persistent.