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
Anatomically Correct Carnivorous Tree
Is there ever any indication in the MCU as to how Spider-Man got his powers?
Developers demotivated due to working on same project for more than 2 years
Is there any good reason to write "it is easy to see"?
Extracting sublists that contain similar elements
On studying Computer Science vs. Software Engineering to become a proficient coder
What are the implications of the new alleged key recovery attack preprint on SIMON?
Why was Thor doubtful about his worthiness to Mjolnir?
What information do scammers need to withdraw money from an account?
return tuple of uncopyable objects
What episode was being referenced by this part of Discovery's season 2 episode 13 recap?
How can dragons propel their breath attacks to a long distance
What is the best way for a skeleton to impersonate human without using magic?
Unexpected Netflix account registered to my Gmail address - any way it could be a hack attempt?
Does SQL Server allow (make visible) DDL inside a transaction to the transaction prior to commit?
correct spelling of "carruffel" (fuzz, hustle, all that jazz)
Program which behaves differently in/out of a debugger
How do employ ' ("prime") in math mode at the correct depth?
Where to find every-day healthy food near Heathrow Airport?
Would an 8% reduction in drag outweigh the weight addition from this custom CFD-tested winglet?
Is there anything special about -1 (0xFFFFFFFF) regarding ADC?
As programers say: Strive to be lazy
Could there be a material that inverts the colours seen through it?
Does Lawful Interception of 4G / the proposed 5G provide a back door for hackers 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.8k14290462
54.8k14290462
asked May 2 at 15:46
kevinnwhatkevinnwhat
15217
15217
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.7k43497
22.7k43497
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 May 3 at 7:27
ShankyShanky
15k32144
15k32144
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