Неправильные отчеты об использовании памяти сервера? - PullRequest
0 голосов
/ 07 января 2019

У меня есть сервер Windows 2016 (128 ГБ ОЗУ), на котором запущен SQL Server 2016, и я вижу некоторые необычные цифры в отчете об использовании памяти.

Я привык видеть, что SQL Server использует много памяти (у нас этот ограничен 96 ГБ), но я вижу, как странно сообщается об этом в диспетчере задач. Я вижу 75% использования памяти, но только 755,5 МБ против SQL Server. В то время как в фоновом режиме работают другие службы, общее количество не приближается к 75% от 128 ГБ.

Task Manager

75% отражаются в диспетчере производительности, как и следовало ожидать, 96% привержены SQL.

enter image description here

Внутри сервера sql я получаю похожие цифры из внутренней отчетности.

SELECT  (physical_memory_in_use_kb / 1024)          Phy_Memory_usedby_Sqlserver_MB
,       (locked_page_allocations_kb / 1024)         Locked_pages_used_Sqlserver_MB
,       (virtual_address_space_committed_kb / 1024) Total_Memory_UsedBySQLServer_MB
,       process_physical_memory_low
,       process_virtual_memory_low
  FROM  sys.dm_os_process_memory;

enter image description here

Меня попросили выяснить, почему диспетчер задач показывает такое низкое использование, когда мы ожидаем, что он будет намного выше. Если с моей стороны есть общее недоразумение, пожалуйста, дайте мне знать. Если есть какие-то дополнительные тесты, которые я могу выполнить, чтобы помочь отследить это, то я счастлив сделать это.

Большое спасибо заранее.

1 Ответ

0 голосов
/ 07 января 2019

Taskmanager показывает только процессы, которые выделяют память через VirtualAlloc. Когда в SQL Server установлена ​​блокировка страниц, для размещения используется AllocateUserPhysicalPages, но в TaskManager это не отображается. Таким образом, вы не можете полагаться на TaskManager для использования памяти SQL.

...