Имя: Пароль:
1C
1С v8
SQL 2008. Память утекает в неизвестном направлении.
0 alex-pro
 
05.10.11
09:52
Есть такая проблема.
http://s1.ipicture.ru/uploads/20111005/15VV4szT.jpg
http://s2.ipicture.ru/uploads/20111005/OdgAAtlR.jpg
На SQL сервере куда-то пропало 30 гигов оперативки. sqlservr.exe съедает только 300 метров. Куда копать?
1 Fragster
 
гуру
05.10.11
09:53
(0) это нормально, включи другие колонки в списке процессов и узришь
2 alex-pro
 
05.10.11
09:57
(1)Включил все колонки.... не узрел (((
http://s1.ipicture.ru/uploads/20111005/8T6pEBV6.jpg
3 Fragster
 
гуру
05.10.11
10:00
а нафуя там рамсэйверпро? это вредные проги, на самом деле
4 alex-pro
 
05.10.11
10:01
(3)
дык, пытаемся выяснить какой процесс жрет 30 гигов памяти.
Щас снесем. )))
5 Fragster
 
гуру
05.10.11
10:04
а вообще - у меня на 2003м серваке видит, сколько скуль сожрал... еще можно поставить process explorer от sysinternals - классная штука
6 DmitrO
 
05.10.11
10:06
запусти Системный монитор, добавь счетчик "Общая память сервера" из группы "SQL сервер: диспетчер памяти"
7 MM
 
05.10.11
10:10
Память выделенная AWE ( wiki:Address_Windowing_Extensions ) не считается принадлежащей какому-либо процессу. MS SQL умеет использовать AWE.
8 alex-pro
 
05.10.11
10:14
(6)
Линию на 100 рисует...
(7) то есть это нормально????
9 DmitrO
 
05.10.11
10:21
(8) на 100 рисует потому что по текущему масштабу отображения просто зашкаливает, она там в килобайтах, масштаб у счетчика отрегулируй, поставь 0,0000001
10 DmitrO
 
05.10.11
10:23
точнее 0,000001 поставь
11 DmitrO
 
05.10.11
10:23
должен увидеть свои ~30 гиг
12 alex-pro
 
05.10.11
10:25
Ну, типа увидел. Пишет 30 гигов.
13 proger2011
 
05.10.11
10:34
(7)
"Address Windowing Extensions (AWE) — программный интерфейс в ОС семейства Microsoft Windows, позволяющий 32-битному приложению получить доступ к оперативной памяти, размер которой превышает размеры виртуального адресного пространства (2-3 гигабайта). "

Мне не понятно почему у меня всё 64 а используемую скулем память я в диспетчере всё равно не вижу.

Microsoft SQL Server 2008 (SP1) - 10.0.2531.0 (X64)
   Mar 29 2009 10:11:52
   Copyright (c) 1988-2008 Microsoft Corporation
   Enterprise Edition (64-bit) on Windows NT 6.1 <X64> (Build 7600: )
14 DmitrO
 
05.10.11
10:35
Ну все чо, как и написали в (7) это выделение памяти по AWE. Эта память не является виртуальной поэтому Диспетчер задач ее не показывает (он показывает только виртуальную).
15 DmitrO
 
05.10.11
10:36
(14)+ но надо заметить что процессу она все же принадлежит :)
16 DmitrO
 
05.10.11
10:42
(13) да, на x64 вобщем-то не обязательно использовать AWE (изначально этот механизм был разработан именно для того чтобы на 32разрядной архитектуре можно было использовать больше 4Г памяти, что не умещается в 32разрядном виртуальном адресном пространстве), а на x64 такой проблемы нет.
Но фактически получилось так, что AWE выделение происходит быстрее, и разработчики MSSQL об этом знают, поэтому и включают использование AWE на MSSQL. Об этом даже специально писали на technet.microsoft.com.
17 proger2011
 
05.10.11
10:50
(16) У меня в свойствах сервера нет галки использовать AWE. Всё равно используется?
18 MM
 
05.10.11
10:52
(15) Мне почему-то казалось, что эта принадлежность условная, поскольку завершение процесса не гарантирует её освобождения.
А ещё эта память не свопится и потенциально может парализовать сервер, поэтому под неё выделена специальная привилегия, не установленная по умолчанию для пользователей.
(16) Просто у него сервер х32, а значит не может использовать более 4 ГБайт адресного пространства, поэтому и приходится выкручиваться.
19 Fragster
 
гуру
05.10.11
11:50
(18).2 только вот сервер-то у него x64, и скуль сервер - тоже. какого йуха он через AWE работает, а не "нативно" - не понятно...
20 MM
 
05.10.11
13:05
(20) в самом деле х64, а может есть кто-то другой кто память ест?
21 proger2011
 
05.10.11
13:57
(20) Больше ничё не может жрать память, этот сервер только для SQL сервера. Я даже не сомневаюсь что это скуль сожрал. Это для него нормально, да и претензий к нему вообще нет. Производительность отличная.