The example detailed in “Information on data caches” shows a default data cache with 59.44 MB of cache space available before any user-defined caches are created. The server in this example uses a 2K logical page. When the 10MB pubs_cache is created, the results of sp_cacheconfig show a total cache size of 59.44 MB.
Configuring a data cache can appear to increase or decrease the total available cache. The explanation for this lies in the amount of overhead required to manage a cache of a particular size, and the fact that the overhead is not included in the values displayed by sp_cacheconfig.
Using sp_helpcache to check the overhead of the original 59.44MB default cache and the new 10MB cache shows that the change in space is due to changes in the size of overhead. The following command shows the overhead for the default data cache before any changes were made:
sp_helpcache "59.44M"
4.10Mb of overhead memory will be needed to manage a cache of size 59.44M
This command shows the overhead for pubs_cache:
sp_helpcache "10M"
0.73Mb of overhead memory will be needed to manage a cache of size 10M
This command shows the overhead for a cache size of 49.44MB:
sp_helpcache "49.44M"
3.46Mb of overhead memory will be needed to manage a cache of size 49.44M
4.19MB (which is equal to .73M + 3.46M) is the required overhead size for maintaing two caches of size 10MB and 49.44MB, and is slightly more than the 4.10M overhead that necessary to maintain one cache of 59.44MB.
Cache sizes are rounded to two places when printed by sp_cacheconfig, and overhead is rounded to two places by sp_helpcache, so you see a small amount of rounding error in the output.