Desktop Virtualization VMware with View Storage Accelerator (CRBC). The VMware View Storage Accelerator or Content Read Based Cache (CRBC) uses RAM on each host to cache common data blocs to avoid boot storms or lower the number of IOPs during recompose operations. The amount of RAM to enable on the host is very reasonable and can be set from 100Mb to 2048Mb.
Desktop administrators can choose to use host caching when they create new pool through the Advanced Storage Options configuration screen. The content based cache needs to be refreshed on regullar basis, in order to stay most efficient possible.
The main benefits of this feature is that no new hardware or software needs to be purchased and as a benefit you can gain up to 80 % of lower IOPs during the boot process of your desktop VMs or during the recompose operations when updating your VMware View base images.
As being said on VMware Storage Blog about the CRBC – In details how it works.
The Storage Accelerator is made up of two components. The first is a per VMDK digest file and the second is a global cache. The per VMDK digest file has a mapping for disk block number to hash value and the global cache has a mapping for hash value to actual data. The global cache is a reserved area of memory on the ESXi hosts. It is an in-memory dedupe cache that caches data based on the content hash of a disk block. When the VM issues a read request, we first use the digest file to get the hash value for a block and then consult the global cache to see if the block is in cached. Metadata for the digest file is maintained in memory. If there is hit, we go fetch the data from cache; if there is a miss, we go fetch the data from disk.
A quick quote from VMware End User Computing Blog:
Desktop Virtualization VMware with CBRC. This technology technology that reduces storage loads generated by peak VDI storage reads caching the common blocks of desktop images into local host memory. The Accelerator leverages a VMware vSphere (version 5.0 or later) platform feature called Content Based Read Cache (CBRC) implemented inside the ESX/ESXi hypervisor. When enabled for specific VMs, the host hypervisor scans the storage disk blocks to generate digests of the block contents. When these blocks are read into the hypervisor, they are cached in the host based CBRC. Subsequent reads of blocks with the same digest will be served from the in-memory cache directly. This significantly improves the desktop performance, especially during boot storms or anti-virus scanning storms when a large number of blocks with identical contents are read.
The CBRC has some spectacular results when enabled….
Desktop Virtualization VMware – regenerating cache settings.
With the View Storage Accelerator enabled, the option can bring some significant read acceleration when booting or rebooting multiple desktops. The only precaution that users need to take while configuring the cache is the regeneration policy. VMware’s best practice recommendation is to schedule cache regeneration during periods of low user activity.
In this video bellow provided by VMware Technical Publications and narrated by Matt Eccleston who works as a Chief Architectt – VMware View, you'll see the Desktop Virtualization VMware with the View Storage Accelerator in action.
CBRC is an ESXi 5.0 server memory cache of common blocks. During peak I/O workloads such as logon boot storms, View desktops can access common blocks of the OS disk and shared applications in the main memory cache, improving performance, enhancing the user experience, and saving storage array costs.
The CRBC has been introduced in View 5.1 as a technology preview for Desktop Virtualization VMware.
And here is a demo video showing on How to enable the CRBC cache from within VMware View 5.1
Desktop Virtualization VMware was a post published at ESX Virtualization.