我最近在我的64位SQL Server 2005计算机上启用了CLR,以便使用大约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 mb MemoryUsage and 6.3 gb虚拟内存保留
机器的总内存为21 gig。保留虚拟内存的确切含义是什么?如何控制分配的大小? 6 gig对我们正在做的事情来说太过分了,sproc缓存可以更好地利用内存。我担心这个保留的内存会导致交换到页面文件。
请帮我收回内存的控制权!
由于
答案 0 :(得分:1)
您正在运行64位,因此VAS(虚拟内存)不是问题。
实际上并未使用或分配虚拟内存。它只保留了地址范围。