Я недавно включил CLR на своем 64-битном компьютере с SQL Server 2005 для использования около 3 процедур. Когда я запускаю следующий запрос, чтобы собрать некоторую информацию об использовании памяти ...
select single_pages_kb+ multi_pages_kb + virtual_memory_committed_kb as TotalMemoryUsage, virtual_memory_reserved_kb
from sys.dm_os_memory_clerks
where type = 'MEMORYCLERK_SQLCLR'
Я получаю
129 МБ MemoryUsage и
Виртуальная память 6,3 ГБ зарезервирована
Общая память машины составляет 21 гиг. Что конкретно означает зарезервированная виртуальная память и как я могу контролировать размер, который выделяется? 6 гигабайтов - это излишне для того, что мы делаем, и память будет гораздо лучше использоваться sproc-кэшем Я обеспокоен тем, что эта зарезервированная память приведет к обмену на файл подкачки.
Пожалуйста, помогите мне вернуть контроль над памятью!
Спасибо