Suggested Memory Allocation for Troika SQL Server Instance


Estimating the SQL Server memory requirements for any system can be difficult and will be impacted by a number of different factors on the SQL Server. For example, the Hard Disk Drive read/write speed (and type), the number of CPUs and the network configuration will all impact on the performance of the system and will determine how much overall memory is required.


SQL Server in general will always dominate server memory, so configuring the maximum amount of memory in use by SQL Server might be necessary to allow for the operating system to function correctly. Our suggested memory allocation is only a ‘rule of thumb’ and should only be used as an indication of the memory allocation requirements for Troika. This also assumes Troika is the only SQL database and is running a single SQL default instance. Running other SQL applications on the same instance will automatically increase these recommendations. Server and application virtualisation will also impact on memory requirements so you should consider this and adjust the requirements accordingly.


Firstly, you need to consider adding together the size of all the SQL Server databases on the server to ensure there is sufficient memory to cache all the databases in memory. This should be the absolute minimum requirement of SQL Server memory and doesn’t allow for the operating system/CPUs.


Ideally you should allow for more memory than the system needs at an idle state plus the complete size of all the databases for the most efficient configuration. Another consideration would be a bare minimum of 2 GB of RAM per CPU. The higher the workload of the system (and for larger numbers of users), the greater the ratio should be. Please refer to each SQL Server version and editions, maximum memory for buffer pool per instance of SQL Server Database Engine as these differ.


Suggested Memory Allocation for SQL Instance Running Troika
# of concurrent active users
Min. Memory (light usage) 
Recommended Memory
(normal usage)

10

7 GB

9 GB

20

9 GB

14 GB

30

12 GB

19 GB

40

14 GB

24 GB

50

17 GB

29 GB

60

19 GB

34 GB

70

22 GB

39 GB

80

24 GB

44 GB

90

27 GB

49 GB

100

29 GB

54 GB

120

34 GB

64 GB *

140

39 GB

74 GB *

160

44 GB

84 GB *


*  Please note the current SQL Server Maximum memory supported per version


SQL Server 2016 Maximum memory for buffer pool per instance of SQL Server Database Engine:

  • Enterprise, Operating System Max
  • Standard, 128 GB
  • Express with Advanced Services, 1410 MB


SQL Server 2014 Maximum memory utilized (per instance of SQL Server Database Engine):

  • Enterprise, Operating System Max
  • Standard, 128 GB
  • Express with Advanced Services, 1 GB


These notes were last reviewed 03/2023.