在Windows XP专业版(32位)上使用SQL Server 2005开发人员版本我注意到启用了启用AWE(高级窗口扩展)的复选框.我有一个可以轻松升级到8GB或更高的Opteron工作站,尽管在开发环境中移动32位Windows XP Pro是不切实际的.据我所知,运行在32位模式下的Opteron的MMU应该支持36位物理地址空间,就像32位Xeon一样.
减少SQL Server的内存占用量将使我能够为Analysis Services提供更多的肘部空间.
有谁知道Windows XP上的AWE是否支持超过4GB的可用于SQL Server的RAM(在支持MMU的CPU上)?
或者,是否有人知道数据字典视图可能会告诉我有关AWE缓冲区使用情况的信息,以便我可以尝试并获得某种确定的视图,看它是否正在使用额外的内存?
编辑:对于那些不熟悉它的人来说,AWE是一个允许您控制虚拟物理地址映射和在进程的4GB虚拟地址空间内和页面内部任意物理内存的工具.32位Xeon(以及其他一些处理器)上的MMU实际上将支持超过4GB的物理RAM,尽管单个进程地址空间一次只能看到4GB.据我所知,Opteron上的MMU也具有32位代码的功能.
SQL Server支持使用AWE访问超过2GB或3GB的物理RAM,其进程地址空间允许在32位盒上.它通过显式管理映射,将物理内存交换进出虚拟地址空间来实现.某些版本的Windows(特别是Windows 2003和Windows 2000 Advanced Server)将以这种方式支持超过4GB的内存,并提供用于执行此操作的API.
问题是:我有一台硬件支持的机器,Windows XP 32位是否允许我以这种方式使用超过4GB的RAM?
Windows XP(32位)不支持 PAE(即36位物理地址); 它只支持4GB的RAM.您需要Windows 2003(企业或数据中心)来支持PAE.由于您的操作系统无法使用PAE,因此您的应用程序无法使用AWE.
您可以使用/ 3GB开关运行它,为SQL Server提供更多的呼吸空间.
就个人而言,我升级到64位版本的Windows,可能是Windows 7 x64.