Professional Documents
Culture Documents
April 2021
Updated
Disk Pools
Autoreclamation (minor clarification – storage source vs virtual disk)
Removed
SANsymphony cache – default settings
The table that was in this section has been removed as it is now referenced in
SANsymphony’s online help.
Virtual
5 10 50 80 128 180 250 300+
Disks
Phys.
Memory 8 16 48 96 128 256 512 1024
(GB)
The values above are based on default SANsymphony cache, Disk Pool and Continuous Data
Protection (CDP) History Log settings.
This amount of physical memory available to the DataCore Server will determine the
amount that is reserved by SANsymphony for its own caching.
A check is made to see how much total physical memory is in the server (or in the case of a
Hyperconverged DataCore Server - the virtual machine) and, using the values above, will try
to reserve physical memory for its exclusive use.
Select the DataCore Server and using the ‘Info’ tab locate how ‘RAM’ the DataCore Server can
see and how much of that has been allocated for use with SANsymphony’s cache.
For example:
When the SANsymphony software is stopped, all system memory used for its cache is
released back to the Windows operating system.
For example:
Select the ‘Home’ tab on the top of the Management Console and select 'Live Performance'.
In the next window select DataCore Servers from the 'Category' column and then the
DataCore Server(s) from the 'Instances' column next to it. Now select 'Cache Size' from the
‘Counters’ column and click the 'Add' button.
Notes
The value displayed in the ‘Max’ column is the amount reserved by SANsymphony for its
cache.
The ‘Last’, ‘Average’ and ‘Min’ values should be ignored as they are misleading. During the
start-up/stopping of the SANsymphony software, the allocated system memory is either
gradually loaded or unloaded respectively, so depending on how fast the DataCore Server
can load/unload the system memory will skew the ‘Last’, ‘Average’ and ‘Min’ values.
This is to avoid accidentally consuming the remaining system memory, used by the Windows
operating system and any other third-party applications and services, which can
inadvertently make the DataCore Server unstable. However, if even more system memory is
still required by the DataCore system drivers then they will also use any ‘remaining’ system
memory as well.
The DataCore Console and all other DataCore services (Executive, SNMP Agent, Intelligence,
Performance Monitor and Updater etc.) will not use memory that has already been assigned
to SANsymphony.
This does not mean that SANsymphony has less/no memory for its cache, but is simply an
idiosyncrasy of how Task Manager handles the DcsAddMem.exe process once the
SANsymphony software has started. Therefore, using the DcsAddMem.exe process to
determine the amount of memory used by SANsymphony is not reliable.
To track how much memory is really being used by SANsymphony, please see ‘How to
monitor SANsymphony’s cache's allocation’ on page 5.
• Status reporting from specific DataCore system drivers for different objects in the
SANsymphony Console (e.g. Mirror recovery progress, Disk Pool and Port statuses).
• Updating and distributing all configuration changes between DataCore Servers in the
same Server Group and/or remote Replication Groups.
The memory requirement for this service increases the more tasks it has to perform and as
the number of objects (Physical Disks, Disk Pools, virtual disks, Ports and Hosts etc.) in the
configuration increases. Conversely as tasks are completed (e.g. a Performance Recording
session is ended) or the configuration reduces in size (e.g. vDisks are removed
This, therefore, makes it very difficult to give specific values to the amount of memory that
the DataCore Executive Service will require at a given moment. There are some general
‘rules-of thumb’ that can be applied over the long-term though;
1 - 20 1
50 - 100 3
500+ 5
Disk Pools
Storage Allocation Unit management
The table below shows the amount of memory used for ‘typical’ amounts of physical storage
and these can be used to work out the requirements for your own disk pools with different
physical disk sizes.
Total
Physical 4 8 16 32 64 128 256 512 1024
Disk (TB)
0.5 8.75 4.36 2.19 1.09 0.55 0.27 0.14 0.07 0.03
1 17.5 8.75 4.36 2.19 1.09 0.55 0.27 0.14 0.07
5 87.5 43.75 21.88 10.94 5.47 2.73 1.37 0.68 0.34
10 175 87.5 43.75 21.88 10.94 5.47 2.73 1.37 0.68
100 - - 437.5 210.9 109.4 54.7 27.34 13.67 6.83
1024 - - - - - - 280 140 70
Notes
There is an upper limit, for each disk pool, of approximately eight million SAUs regardless of
their size. The smaller the SAU size the smaller the maximum possible physical disk size a
disk pool can hold before this limit is reached. Also see ‘What is the maximum Physical
Storage that a Disk Pool can manage?’
https://datacore.custhelp.com/app/answers/detail/a_id/968
Example 1
A disk pool has 20TB of physical storage and a 128mb SAU size. This would require twice the
amount as a disk pool with 10TB of physical storage in it
i.e. 5.47 x 2 = 10.94MB
Example 2
A disk pool with 7.5TB of physical storage and a 4mb SAU size. This would require 1.5 times
the amount as a disk pool with 5TB of physical storage in it
i.e. 87.5 x 1.5 = 131.25MB
Encryption
This was a new feature added in 10.0 PSP 9. Allow for double the amount of memory listed in
the table above when using Encryption.
Auto-reclamation
This Disk Pool function will use 200KB of system memory for each storage source managed
the Disk Pool. I.e., a mirrored Virtual Disk will use 200KB of memory on each DataCore Server
managing the mirror.
Manual-reclamation
No additional memory is required for manual reclamation.
Performance Recording
Live and Recorded Performance
This will depend on the number of counters being recorded in the session. While a specific
value of system memory required cannot be given, the overall increase is usually not
significant, and the following general rule can be applied;
For every 50 counters being measured, the additional memory requirement of the Executive
service will increase by approximately 10%.
Snapshot
This will depend on the size of the virtual disk used for the snapshot source.
Notes:
The calculation is made for each snapshot regardless of the number of source virtual disks.
Working example 1
A single virtual disk 64GB in size has five snapshots.
Working example 2
Six virtual disks, each 2TB in size (or 2048GB) each have one snapshot.
Virtual Disks
The DataCore Servers acting as either the ‘Child’ or ‘Backup’ for the DDR virtual disk will
continue to use the same values for mirrored virtual disks (in the previous table).
SANsymphony will still start but will be using less than the expected amount of memory for
its cache.
If SANsymphony has already started and reserved memory for its own caching, no other
applications running on the DataCore Server will be able to use that reserved memory,
including the Windows operating system. If the Windows operating system does not have
enough memory to perform its own tasks then the DataCore Server may behave erratically.
• Windows own System Event logs may report ‘insufficient memory’ warnings or errors.
• The creation of new Asynchronous Replications may fail. The Destination Replication
Server may report as being ‘Off-line’. Existing Replications that were ‘In Log’ may now
report as being in ‘Standby’.
• The creation of snapshots may fail and existing Snapshots may unexpectedly report
as being ‘Failed’ without any obvious physical hardware problem.
• Fibre Channel and iSCSI Ports may suddenly report `being unavailable.
Updated
SANsymphony’s cache
How to monitor SANsymphony’s cache's allocation
SANsymphony features
• Performance Recording
• Snapshot
• Virtual Disks - Mirrored and Single
Removed
SANsymphony inside a Virtual Machine
This information has been moved to the document
‘Hyper-converged Virtual SAN - Deployment Best Practices’
February 2017
Added
The DataCore Server's Cache - When there is not enough memory to allocate
Added information about the difference in SANsymphony 10.0 PSP 5 Update 2 (and greater)
Updated
The DataCore Server's Cache - generally
This section has been re-ordered with many of the explanations simplified.
February 2016
Updated
The DataCore Server Cache - How memory is assigned to DataCore Cache
Added new information for Windows Hyper-V and VMware ESXi with regard to memory settings for running
SANsymphony in a Virtual Machine.
June 2015
Updated
The DataCore Server Cache
The previous values for the default percentages of Physical RAM allocated to the DataCore Cache driver in
SANsymphony-V 10.0.0 or higher were inaccurate.
April 2015
Added
Overview
Important changes since SANsymphony-V 10.0 PSP2
Explained the new enhanced memory management behavior added in version 10.0 PSP 2
August
Updated
Mirrored Virtual Disks
Rewrote the description of ‘The Bitmap’; and updated the table with more detailed information.
July
Updated
How much memory do I really need?
This section has been moved to the end of the document and now includes a table to be used as a ‘guide’ to
determine the amount of Physical RAM that should be considered for a DataCore Server based on the amount of
capacity that is being managed.
June
Updated
The DataCore Server Cache
Added values for SANsymphony-V 10.x
February
Added
What if System Memory gets too low?
Performance Recording and Support Bundles
Updated
The DataCore Server Cache
How to find how much physical memory is in use by DataCore Cache
January
This document replaces DataCore’s Technical Bulletin 7b “System Memory Considerations for DataCore Servers” and
contains completely updated, and rewritten, information for SANsymphony-V 9.0 PSP 4 and greater.
DataCore, the DataCore logo and SANsymphony are trademarks of DataCore Software Corporation. Other DataCore
product or service names or logos referenced herein are trademarks of DataCore Software Corporation. All other
products, services and company names mentioned herein may be trademarks of their respective owners.
ALTHOUGH THE MATERIAL PRESENTED IN THIS DOCUMENT IS BELIEVED TO BE ACCURATE, IT IS PROVIDED “AS IS”
AND USERS MUST TAKE ALL RESPONSIBILITY FOR THE USE OR APPLICATION OF THE PRODUCTS DESCRIBED AND
THE INFORMATION CONTAINED IN THIS DOCUMENT. NEITHER DATACORE NOR ITS SUPPLIERS MAKE ANY
EXPRESS OR IMPLIED REPRESENTATION, WARRANTY OR ENDORSEMENT REGARDING, AND SHALL HAVE NO
LIABILITY FOR, THE USE OR APPLICATION OF ANY DATACORE OR THIRD PARTY PRODUCTS OR THE OTHER
INFORMATION REFERRED TO IN THIS DOCUMENT. ALL SUCH WARRANTIES (INCLUDING ANY IMPLIED
WARRANTIES OF MERCHANTABILITY, NON-INFRINGEMENT, FITNESS FOR A PARTICULAR PURPOSE AND AGAINST
HIDDEN DEFECTS) AND LIABILITY ARE HEREBY DISCLAIMED TO THE FULLEST EXTENT PERMITTED BY LAW.
No part of this document may be copied, reproduced, translated or reduced to any electronic medium or machine-
readable form without the prior written consent of DataCore Software Corporation