Target/total memory is higher than max_server_memorySQL Server 2008 R2 There is insufficient system memory in resource pool 'default' to run this querySQL Server instance using only a few hundred MB. Well below the minimum server memory settingdbcc memorystatus - buffer pool target on VM higher than max memoryWhat is a deterministic method for evaluating a sensible buffer pool size?Why is my Target Server Memory slightly higher than my Total Server Memory?no free memory but low total memorySQL Server not using all memoryOut of memory issues on SQL Server 2012 SP3SQL Server takes far too much memorySQL Server's “Total Server Memory” consumption stagnant for months with 64GB+ more available
Efficient deletion of specific list entries
How long did it take Captain Marvel to travel to Earth?
What is a common way to tell if an academic is "above average," or outstanding in their field? Is their h-index (Hirsh index) one of them?
Debian 9 server no sshd in auth.log
Problem with estimating a sequence with intuition
What do you call a painting painted on a wall?
Endgame puzzle: How to avoid stalemate and win?
Is throwing dice a stochastic or a deterministic process?
What does the coin flipping before dying mean?
In "Avengers: Endgame", what does this name refer to?
Dimmer switch not connected to ground
TIP120 Transistor + Solenoid Failing Randomly
What's the 2-minute timer on mobile Deutsche Bahn tickets?
Why doesn't a particle exert force on itself?
How is Pauli's exclusion principle still valid in these cases?
All of my Firefox add-ons been disabled suddenly, how can I re-enable them?
What are the requirements for a river delta to form?
How to replace space with '+' symbol in a triangular array?
Was there a dinosaur-counter in the original Jurassic Park movie?
HSA - Continue to Invest?
What is the thing used to help pouring liquids called?
Is there precedent or are there procedures for a US president refusing to concede to an electoral defeat?
Collision domain question
Given a safe domain, are subdirectories safe as well?
Target/total memory is higher than max_server_memory
SQL Server 2008 R2 There is insufficient system memory in resource pool 'default' to run this querySQL Server instance using only a few hundred MB. Well below the minimum server memory settingdbcc memorystatus - buffer pool target on VM higher than max memoryWhat is a deterministic method for evaluating a sensible buffer pool size?Why is my Target Server Memory slightly higher than my Total Server Memory?no free memory but low total memorySQL Server not using all memoryOut of memory issues on SQL Server 2012 SP3SQL Server takes far too much memorySQL Server's “Total Server Memory” consumption stagnant for months with 64GB+ more available
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
I have the max_server_memory
setting configured to 141 GB on our production SQL Server and target/total server memory is 144 GB.
I thought max_server_memory
represents how much memory I am willing to let the SQL Server engine use, if so why is it using more than that?
Running SQL Server 2012 SP3, physical machine with 160 GB memory installed, no other instances running on the box but we are also running Integration Services.
We have 75 user databases, for a total size of 928 GB. I am not sure if columnstore is being used, or how could I check that. This is a vendor application.
Right now target memory = 144,384,008 and total = 144,378,261.
The instance has been up since last night, 2019-05-01 22:20:21.097 EST. We had some infrastructure maintenance that required the instance to be stopped. However I have noticed for quite some time that total/target is always at 144 while max has always been set to 141. PLE during main business hours Monday-Friday is about an .5 to 1 hour on average, sometimes it jumps to 2 hours.
sql-server sql-server-2012 configuration memory
add a comment |
I have the max_server_memory
setting configured to 141 GB on our production SQL Server and target/total server memory is 144 GB.
I thought max_server_memory
represents how much memory I am willing to let the SQL Server engine use, if so why is it using more than that?
Running SQL Server 2012 SP3, physical machine with 160 GB memory installed, no other instances running on the box but we are also running Integration Services.
We have 75 user databases, for a total size of 928 GB. I am not sure if columnstore is being used, or how could I check that. This is a vendor application.
Right now target memory = 144,384,008 and total = 144,378,261.
The instance has been up since last night, 2019-05-01 22:20:21.097 EST. We had some infrastructure maintenance that required the instance to be stopped. However I have noticed for quite some time that total/target is always at 144 while max has always been set to 141. PLE during main business hours Monday-Friday is about an .5 to 1 hour on average, sometimes it jumps to 2 hours.
sql-server sql-server-2012 configuration memory
add a comment |
I have the max_server_memory
setting configured to 141 GB on our production SQL Server and target/total server memory is 144 GB.
I thought max_server_memory
represents how much memory I am willing to let the SQL Server engine use, if so why is it using more than that?
Running SQL Server 2012 SP3, physical machine with 160 GB memory installed, no other instances running on the box but we are also running Integration Services.
We have 75 user databases, for a total size of 928 GB. I am not sure if columnstore is being used, or how could I check that. This is a vendor application.
Right now target memory = 144,384,008 and total = 144,378,261.
The instance has been up since last night, 2019-05-01 22:20:21.097 EST. We had some infrastructure maintenance that required the instance to be stopped. However I have noticed for quite some time that total/target is always at 144 while max has always been set to 141. PLE during main business hours Monday-Friday is about an .5 to 1 hour on average, sometimes it jumps to 2 hours.
sql-server sql-server-2012 configuration memory
I have the max_server_memory
setting configured to 141 GB on our production SQL Server and target/total server memory is 144 GB.
I thought max_server_memory
represents how much memory I am willing to let the SQL Server engine use, if so why is it using more than that?
Running SQL Server 2012 SP3, physical machine with 160 GB memory installed, no other instances running on the box but we are also running Integration Services.
We have 75 user databases, for a total size of 928 GB. I am not sure if columnstore is being used, or how could I check that. This is a vendor application.
Right now target memory = 144,384,008 and total = 144,378,261.
The instance has been up since last night, 2019-05-01 22:20:21.097 EST. We had some infrastructure maintenance that required the instance to be stopped. However I have noticed for quite some time that total/target is always at 144 while max has always been set to 141. PLE during main business hours Monday-Friday is about an .5 to 1 hour on average, sometimes it jumps to 2 hours.
sql-server sql-server-2012 configuration memory
sql-server sql-server-2012 configuration memory
edited May 2 at 21:57
Paul White♦
54.5k14290461
54.5k14290461
asked May 2 at 15:46
kevinnwhatkevinnwhat
4215
4215
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
The max server memory setting does not represent how much memory you are willing to let the SQL engine use. From the Memory Management Architecture Guide:
Starting with SQL Server 2012 (11.x), SQL Server might allocate more
memory than the value specified in the max server memory setting. This
behavior may occur when the Total Server Memory (KB) value has already
reached the Target Server Memory (KB) setting (as specified by max
server memory). If there is insufficient contiguous free memory to
meet the demand of multi-page memory requests (more than 8 KB) because
of memory fragmentation, SQL Server can perform over-commitment
instead of rejecting the memory request.
As soon as this allocation is performed, the Resource Monitor
background task starts to signal all memory consumers to release the
allocated memory, and tries to bring the Total Server Memory (KB)
value below the Target Server Memory (KB) specification. Therefore,
SQL Server memory usage could briefly exceed the max server memory
setting. In this situation, the Total Server Memory (KB) performance
counter reading will exceed the max server memory and Target Server
Memory (KB) settings.
This behavior is typically observed during the following operations:
Large Columnstore index queries.
Columnstore index (re)builds, which use large volumes of memory to perform Hash and Sort operations.
Backup operations that require large memory buffers.
Tracing operations that have to store large input parameters.
add a comment |
Did you converted the total and target server memory in GB to see what is the actual value in GB. Since you are comparing it with max server memory which is set to 141 GB you must convert the values in GB to see are they really greater than max server memory.
If you convert both total and target server memory to GB it would come
Total Server memory= 144,378,261 KB which comes to ((144378261/1024)/1024)= 137.69 GB
Target Server Memory= 144,384,008 KB which comes to (144,384,008/1024)/1024)=137.68 GB
In both cases total and target server memory is less than max server memory. I agree with what Joe has quoted and to add a bit further
Max server memory controls SQL Server memory allocation, including the
buffer pool, compile memory, all caches, qe memory grants, lock
manager memory, and CLR memory (basically any “clerk” as found in
dm_os_memory_clerks). Memory for thread stacks, heaps, linked server
providers other than SQL Server, or any memory allocated by a “non SQL
Server” DLL is not controlled by max server memory.
So total SQL Server memory consumption can go beyond the limit set in max server memory.
There are 2 things
- Physical memory used by SQL Server
- Total memory used by SQL Server (physical RAM+ page file).
To get above you just need to run below
select
(physical_memory_in_use_kb/1024) total_physical_mem_in_MB
(virtual_address_space_committed_kb/1024) Total_mem_in_mb_RAMAndPagefile
from sys.dm_os_process_memory
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "182"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fdba.stackexchange.com%2fquestions%2f237227%2ftarget-total-memory-is-higher-than-max-server-memory%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
The max server memory setting does not represent how much memory you are willing to let the SQL engine use. From the Memory Management Architecture Guide:
Starting with SQL Server 2012 (11.x), SQL Server might allocate more
memory than the value specified in the max server memory setting. This
behavior may occur when the Total Server Memory (KB) value has already
reached the Target Server Memory (KB) setting (as specified by max
server memory). If there is insufficient contiguous free memory to
meet the demand of multi-page memory requests (more than 8 KB) because
of memory fragmentation, SQL Server can perform over-commitment
instead of rejecting the memory request.
As soon as this allocation is performed, the Resource Monitor
background task starts to signal all memory consumers to release the
allocated memory, and tries to bring the Total Server Memory (KB)
value below the Target Server Memory (KB) specification. Therefore,
SQL Server memory usage could briefly exceed the max server memory
setting. In this situation, the Total Server Memory (KB) performance
counter reading will exceed the max server memory and Target Server
Memory (KB) settings.
This behavior is typically observed during the following operations:
Large Columnstore index queries.
Columnstore index (re)builds, which use large volumes of memory to perform Hash and Sort operations.
Backup operations that require large memory buffers.
Tracing operations that have to store large input parameters.
add a comment |
The max server memory setting does not represent how much memory you are willing to let the SQL engine use. From the Memory Management Architecture Guide:
Starting with SQL Server 2012 (11.x), SQL Server might allocate more
memory than the value specified in the max server memory setting. This
behavior may occur when the Total Server Memory (KB) value has already
reached the Target Server Memory (KB) setting (as specified by max
server memory). If there is insufficient contiguous free memory to
meet the demand of multi-page memory requests (more than 8 KB) because
of memory fragmentation, SQL Server can perform over-commitment
instead of rejecting the memory request.
As soon as this allocation is performed, the Resource Monitor
background task starts to signal all memory consumers to release the
allocated memory, and tries to bring the Total Server Memory (KB)
value below the Target Server Memory (KB) specification. Therefore,
SQL Server memory usage could briefly exceed the max server memory
setting. In this situation, the Total Server Memory (KB) performance
counter reading will exceed the max server memory and Target Server
Memory (KB) settings.
This behavior is typically observed during the following operations:
Large Columnstore index queries.
Columnstore index (re)builds, which use large volumes of memory to perform Hash and Sort operations.
Backup operations that require large memory buffers.
Tracing operations that have to store large input parameters.
add a comment |
The max server memory setting does not represent how much memory you are willing to let the SQL engine use. From the Memory Management Architecture Guide:
Starting with SQL Server 2012 (11.x), SQL Server might allocate more
memory than the value specified in the max server memory setting. This
behavior may occur when the Total Server Memory (KB) value has already
reached the Target Server Memory (KB) setting (as specified by max
server memory). If there is insufficient contiguous free memory to
meet the demand of multi-page memory requests (more than 8 KB) because
of memory fragmentation, SQL Server can perform over-commitment
instead of rejecting the memory request.
As soon as this allocation is performed, the Resource Monitor
background task starts to signal all memory consumers to release the
allocated memory, and tries to bring the Total Server Memory (KB)
value below the Target Server Memory (KB) specification. Therefore,
SQL Server memory usage could briefly exceed the max server memory
setting. In this situation, the Total Server Memory (KB) performance
counter reading will exceed the max server memory and Target Server
Memory (KB) settings.
This behavior is typically observed during the following operations:
Large Columnstore index queries.
Columnstore index (re)builds, which use large volumes of memory to perform Hash and Sort operations.
Backup operations that require large memory buffers.
Tracing operations that have to store large input parameters.
The max server memory setting does not represent how much memory you are willing to let the SQL engine use. From the Memory Management Architecture Guide:
Starting with SQL Server 2012 (11.x), SQL Server might allocate more
memory than the value specified in the max server memory setting. This
behavior may occur when the Total Server Memory (KB) value has already
reached the Target Server Memory (KB) setting (as specified by max
server memory). If there is insufficient contiguous free memory to
meet the demand of multi-page memory requests (more than 8 KB) because
of memory fragmentation, SQL Server can perform over-commitment
instead of rejecting the memory request.
As soon as this allocation is performed, the Resource Monitor
background task starts to signal all memory consumers to release the
allocated memory, and tries to bring the Total Server Memory (KB)
value below the Target Server Memory (KB) specification. Therefore,
SQL Server memory usage could briefly exceed the max server memory
setting. In this situation, the Total Server Memory (KB) performance
counter reading will exceed the max server memory and Target Server
Memory (KB) settings.
This behavior is typically observed during the following operations:
Large Columnstore index queries.
Columnstore index (re)builds, which use large volumes of memory to perform Hash and Sort operations.
Backup operations that require large memory buffers.
Tracing operations that have to store large input parameters.
answered May 2 at 16:05
Joe ObbishJoe Obbish
22.6k43495
22.6k43495
add a comment |
add a comment |
Did you converted the total and target server memory in GB to see what is the actual value in GB. Since you are comparing it with max server memory which is set to 141 GB you must convert the values in GB to see are they really greater than max server memory.
If you convert both total and target server memory to GB it would come
Total Server memory= 144,378,261 KB which comes to ((144378261/1024)/1024)= 137.69 GB
Target Server Memory= 144,384,008 KB which comes to (144,384,008/1024)/1024)=137.68 GB
In both cases total and target server memory is less than max server memory. I agree with what Joe has quoted and to add a bit further
Max server memory controls SQL Server memory allocation, including the
buffer pool, compile memory, all caches, qe memory grants, lock
manager memory, and CLR memory (basically any “clerk” as found in
dm_os_memory_clerks). Memory for thread stacks, heaps, linked server
providers other than SQL Server, or any memory allocated by a “non SQL
Server” DLL is not controlled by max server memory.
So total SQL Server memory consumption can go beyond the limit set in max server memory.
There are 2 things
- Physical memory used by SQL Server
- Total memory used by SQL Server (physical RAM+ page file).
To get above you just need to run below
select
(physical_memory_in_use_kb/1024) total_physical_mem_in_MB
(virtual_address_space_committed_kb/1024) Total_mem_in_mb_RAMAndPagefile
from sys.dm_os_process_memory
add a comment |
Did you converted the total and target server memory in GB to see what is the actual value in GB. Since you are comparing it with max server memory which is set to 141 GB you must convert the values in GB to see are they really greater than max server memory.
If you convert both total and target server memory to GB it would come
Total Server memory= 144,378,261 KB which comes to ((144378261/1024)/1024)= 137.69 GB
Target Server Memory= 144,384,008 KB which comes to (144,384,008/1024)/1024)=137.68 GB
In both cases total and target server memory is less than max server memory. I agree with what Joe has quoted and to add a bit further
Max server memory controls SQL Server memory allocation, including the
buffer pool, compile memory, all caches, qe memory grants, lock
manager memory, and CLR memory (basically any “clerk” as found in
dm_os_memory_clerks). Memory for thread stacks, heaps, linked server
providers other than SQL Server, or any memory allocated by a “non SQL
Server” DLL is not controlled by max server memory.
So total SQL Server memory consumption can go beyond the limit set in max server memory.
There are 2 things
- Physical memory used by SQL Server
- Total memory used by SQL Server (physical RAM+ page file).
To get above you just need to run below
select
(physical_memory_in_use_kb/1024) total_physical_mem_in_MB
(virtual_address_space_committed_kb/1024) Total_mem_in_mb_RAMAndPagefile
from sys.dm_os_process_memory
add a comment |
Did you converted the total and target server memory in GB to see what is the actual value in GB. Since you are comparing it with max server memory which is set to 141 GB you must convert the values in GB to see are they really greater than max server memory.
If you convert both total and target server memory to GB it would come
Total Server memory= 144,378,261 KB which comes to ((144378261/1024)/1024)= 137.69 GB
Target Server Memory= 144,384,008 KB which comes to (144,384,008/1024)/1024)=137.68 GB
In both cases total and target server memory is less than max server memory. I agree with what Joe has quoted and to add a bit further
Max server memory controls SQL Server memory allocation, including the
buffer pool, compile memory, all caches, qe memory grants, lock
manager memory, and CLR memory (basically any “clerk” as found in
dm_os_memory_clerks). Memory for thread stacks, heaps, linked server
providers other than SQL Server, or any memory allocated by a “non SQL
Server” DLL is not controlled by max server memory.
So total SQL Server memory consumption can go beyond the limit set in max server memory.
There are 2 things
- Physical memory used by SQL Server
- Total memory used by SQL Server (physical RAM+ page file).
To get above you just need to run below
select
(physical_memory_in_use_kb/1024) total_physical_mem_in_MB
(virtual_address_space_committed_kb/1024) Total_mem_in_mb_RAMAndPagefile
from sys.dm_os_process_memory
Did you converted the total and target server memory in GB to see what is the actual value in GB. Since you are comparing it with max server memory which is set to 141 GB you must convert the values in GB to see are they really greater than max server memory.
If you convert both total and target server memory to GB it would come
Total Server memory= 144,378,261 KB which comes to ((144378261/1024)/1024)= 137.69 GB
Target Server Memory= 144,384,008 KB which comes to (144,384,008/1024)/1024)=137.68 GB
In both cases total and target server memory is less than max server memory. I agree with what Joe has quoted and to add a bit further
Max server memory controls SQL Server memory allocation, including the
buffer pool, compile memory, all caches, qe memory grants, lock
manager memory, and CLR memory (basically any “clerk” as found in
dm_os_memory_clerks). Memory for thread stacks, heaps, linked server
providers other than SQL Server, or any memory allocated by a “non SQL
Server” DLL is not controlled by max server memory.
So total SQL Server memory consumption can go beyond the limit set in max server memory.
There are 2 things
- Physical memory used by SQL Server
- Total memory used by SQL Server (physical RAM+ page file).
To get above you just need to run below
select
(physical_memory_in_use_kb/1024) total_physical_mem_in_MB
(virtual_address_space_committed_kb/1024) Total_mem_in_mb_RAMAndPagefile
from sys.dm_os_process_memory
answered 2 days ago
ShankyShanky
14.8k32144
14.8k32144
add a comment |
add a comment |
Thanks for contributing an answer to Database Administrators Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fdba.stackexchange.com%2fquestions%2f237227%2ftarget-total-memory-is-higher-than-max-server-memory%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown