Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3 4 5   вперед  Ctrl      все
 Утечка памяти?  [new]
Mike_za
Member

Откуда: Москва
Сообщений: 1176
Microsoft SQL Server 2008 R2 (SP2) - 10.50.4000.0 (X64)   Jun 28 2012 08:36:30  
Copyright (c) Microsoft Corporation  Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1) (Hypervisor) 

select MB = sum(pages_allocated_count* 8) / 1024 from sys.dm_os_memory_objects  
select top 20 [type], MB = sum(pages_allocated_count* 8) / 1024 from sys.dm_os_memory_objects  group by [type] order by  2 desc


К сообщению приложен файл. Размер - 17Kb
25 окт 16, 14:24    [19819970]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
Mike_za
Member

Откуда: Москва
Сообщений: 1176


К сообщению приложен файл. Размер - 25Kb
25 окт 16, 14:25    [19819973]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
Mike_za
Member

Откуда: Москва
Сообщений: 1176
при выполнении цлр-ок начало падать мордой в салат "недостаточно системной памяти в пуле ресурсов Internal"
как то можно 100% понять что утекает память, и какие-то подробности?
25 окт 16, 14:27    [19819985]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8805
Mike_za,

почему утекает-то? CLRкам не хватает памяти потому, что Вы не ограничили объем памяти, используемой сервером и сервер 2008.
25 окт 16, 14:31    [19820017]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
Mike_za
Member

Откуда: Москва
Сообщений: 1176
Владислав Колосов, ограниичили
25 окт 16, 14:31    [19820022]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
Mike_za
Member

Откуда: Москва
Сообщений: 1176
картинка с квадратиком намекает, что 25 != 10. Куда то делись еще 15... запросик для статистики был типовой был с форума нашего.
25 окт 16, 14:36    [19820053]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
komrad
Member

Откуда:
Сообщений: 5735
Mike_za
картинка с квадратиком намекает, что 25 != 10. Куда то делись еще 15... запросик для статистики был типовой был с форума нашего.

а здесь что?
select * from sys.configurations where name like '%server%memory%'
25 окт 16, 14:50    [19820119]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
Mike_za
Member

Откуда: Москва
Сообщений: 1176


К сообщению приложен файл. Размер - 7Kb
25 окт 16, 15:01    [19820159]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
komrad
Member

Откуда:
Сообщений: 5735
Mike_za,

а тут?
select * from sys.dm_os_sys_memory
25 окт 16, 15:36    [19820331]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
Mike_za
Member

Откуда: Москва
Сообщений: 1176


К сообщению приложен файл. Размер - 7Kb
25 окт 16, 17:26    [19820972]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
смотрю_тут
Member

Откуда:
Сообщений: 1368
select
type, sum(multi_pages_kb/1024)
from
sys.dm_os_memory_clerks
where
multi_pages_kb != 0
group by type

выполните
25 окт 16, 17:39    [19821075]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
Mike_za
Member

Откуда: Москва
Сообщений: 1176


К сообщению приложен файл. Размер - 17Kb
25 окт 16, 18:18    [19821238]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
komrad
Member

Откуда:
Сообщений: 5735
Mike_za,

да, похоже на утечку, либо на нехватку памяти на уровне ОС (memory pressure)
память для CLR выделена по отношению к buffer pool и не контролируется параметром max server memory
не могу найти ссылку, но читал, что по умолчанию объем памяти, который отъедается сервером свыше max memory не превышает 10% от этого значения

у вас есть доп. параметры в строке запуска сиквела?
посмотрите параметр "-g"
возможно он вам поможет
25 окт 16, 19:45    [19821453]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
Mike_za
Member

Откуда: Москва
Сообщений: 1176
ну мой вопрос про 2 скиншот. где 15 ггб, каким счетчиками можно увидеть?

так то сервак ждет сервис пака
25 окт 16, 19:59    [19821485]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
komrad
Member

Откуда:
Сообщений: 5735
Mike_za
ну мой вопрос про 2 скиншот. где 15 ггб, каким счетчиками можно увидеть?

это к автору (Mind) - пусть трактует аутпут запроса :)
25 окт 16, 21:24    [19821688]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
komrad
Mike_za
ну мой вопрос про 2 скиншот. где 15 ггб, каким счетчиками можно увидеть?

это к автору (Mind) - пусть трактует аутпут запроса :)
Не хотите - не пользуйтесь :)

Это всего лишь значения счетчиков производительнсоти из раздела SQL Server:Memory Manager, запрос их просто немного переупорядочивает и все. Вообще то я ни разу не встречал случая, чтобы не выполнялось следующее условие [Total Server Memory (KB)] = [Database Cache Memory (KB)] + [Free Memory (KB)] + [Stolen Server Memory (KB)]. CLR вроде не входит в buffer pool, так что не должно попадать в Total Server Memory. Возможно это и правда утечка памяти. Не уверен правда каким счетчиком это можно было бы вытащить. Если найдете потерявшиеся 15гб - отпишитесь пожалуйста.

А что вернет вот этот запрос?

DECLARE @ServiceName NVARCHAR(100)
SET @ServiceName = CASE WHEN @@SERVICENAME = 'MSSQLSERVER'
                            THEN 'SQLServer:'
                        ELSE 'MSSQL$' + @@SERVICENAME + ':'
                        END
select RTRIM(counter_name) AS counter_name, cntr_value from sys.dm_os_performance_counters 
WHERE (object_name = @ServiceName + 'Memory Manager')
AND counter_name like '%(KB)%'
26 окт 16, 02:04    [19822097]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
aleksrov
Member

Откуда:
Сообщений: 948
Mind,
по поводу CLR, из https://blogs.technet.microsoft.com/sqlruteam/2014/02/09/173/
Расчет памяти для некластеризованного, либо кластеризованного SQL Server работающего в режиме Актив/Пассив .
1.Остаток для ОС – 5%. В нашем случае это около 25 GB (500*5%).
2.Память под ядро SQL Server (различные *.exe, *.dll, *ocx и пр. модули), SQL heap, CLR. Обычно это до 500 MB, хотя за счет CLR это может быть и больше.
3.Пямять под кэши “Worker thread”, рассчитываемая по формуле (512+(NumCpu-4)*16)*2 MB. В нашем случае это (512+(64-4)*16)* 2MB = 2944 MB (около 2.7 GB).
4.Итого под “max server memory” остается: 500 – 25 – 0.5 – 2.7 = 471.2 GB. Т.е. размер Буферного пула (при таком значении “max server memory”) может вырасти до 471 GB.
5.Для версии SQL 2012 и далее “max server memory” включает в себя SQL heap и частично CLR.

Особенно актуален это расчет, если вы используете “Lock Pages In Memory” В этом случае завысив это число или оставив его по умолчанию (что обозначает – любой объем) вы можете поставить ОС в довольно неприятное положения, которое приведет к агрессивному триммированию рабочих наборов и, как следствие, резкому замедлению работы системы.
26 окт 16, 07:31    [19822164]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
aleksrov,

А? Вы это к чему вообще?
26 окт 16, 09:42    [19822426]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
aleksrov
Member

Откуда:
Сообщений: 948
Mind,

К тому что max memory большое значение.
26 окт 16, 10:20    [19822626]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
o-o
Guest
Mind
aleksrov,

А? Вы это к чему вообще?

человек обучает выбору max server memory,
уделяя особое внимание OS-у: ему надо 5% оставить, ведь иначе
автор
вы можете поставить ОС в довольно неприятное положения, которое приведет к агрессивному триммированию рабочих наборов и, как следствие, резкому замедлению работы системы.

иными словами, он спрашивает Mike_za, оставил ли он заветные 5%, а то ведь триммирование(травмирование?) CLR налицо
26 окт 16, 10:22    [19822634]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
komrad
Member

Откуда:
Сообщений: 5735
Mind
komrad
пропущено...

это к автору (Mind) - пусть трактует аутпут запроса :)
Не хотите - не пользуйтесь :)



Запрос и аутпут красив/нагляден; вообще, в сети с трудом можно найти скрипты, которые дают подобную раскладку.
Поскольку в Ваш скрипт я не углублялся, то и перенаправил Mike_za к автору.

Так что не воспринимайте это как критику, а лишь как признание авторства, вклада в общее дело и первоочередности ответа.
26 окт 16, 10:27    [19822660]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
komrad
Member

Откуда:
Сообщений: 5735
o-o
иными словами, он спрашивает Mike_za, оставил ли он заветные 5%, а то ведь триммирование(травмирование?) CLR налицо

А что про это спрашивать?
Всё же в треде указано: 32ГБ на борту, сиквелу отдано 29ГБ.

Имхо, многовато отдано, особенно если другие процессы/приложения крутятся на сервере.

Только непонятно, про какой сервер речь - у автора памяти на сервере раз в 20 меньше.

aleksrov
4.Итого под “max server memory” остается: 500 – 25 – 0.5 – 2.7 = 471.2 GB. Т.е. размер Буферного пула (при таком значении “max server memory”) может вырасти до 471 GB.
26 окт 16, 10:35    [19822698]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
o-o
Guest
со скриптом все ок, у нас цифири сходятся,
хотя в общем и целом наша картинка называется "издевательство над сервером"

К сообщению приложен файл. Размер - 29Kb
26 окт 16, 10:37    [19822713]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
o-o
Guest
komrad
Только непонятно, про какой сервер речь - у автора памяти на сервере раз в 20 меньше.

aleksrov
4.Итого под “max server memory” остается: 500 – 25 – 0.5 – 2.7 = 471.2 GB. Т.е. размер Буферного пула (при таком значении “max server memory”) может вырасти до 471 GB.

это просто копипаст из статьи по той ссылке.
у них на сервере 500Гб памяти,
они высчитывают, сколько максимум может получить buffer pool
26 окт 16, 10:48    [19822780]     Ответить | Цитировать Сообщить модератору
 Re: Утечка памяти?  [new]
komrad
Member

Откуда:
Сообщений: 5735
o-o
со скриптом все ок, у нас цифири сходятся,
хотя в общем и целом наша картинка называется "издевательство над сервером"

RecommendedMinimum - это, строго говоря, от скорости винтов зависит

К сообщению приложен файл. Размер - 87Kb
26 окт 16, 11:02    [19822878]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3 4 5   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить