LargeSystemCache
SQL Server 의 경우 Cache시스템을 자체적으로 사용 합니다. OS 에서 파일 시스템 메모리 캐시 영역을 많이 가져가는 상황에서 SQL Server 메모리 동작을 동적 메모리 제어로 된다면, 상대적으로 어플리케이션이나 서비스는 메모리 사용을 더 많이 하지 못하게 됩니다.
LargeSystemCache [ http://technet.microsoft.com/en-us/library/cc784562(WS.10).aspx ]설명에도 있듯이 일반적으로 System Cache 가 크면 일반적으로 서버의 성능이 증가합니다. 그러나, 어플리케이션이나 서비스에서 사용할 물리 메모리 사용량은 상대적으로 줄어들게 됩니다. 그 아래 설명은 해당 값이 1 이면, 시스템 데이터를 디스크 서브시스템으로 늦게 반영 시키고 다르게 말해 해당 셋팅을 끄면 어플리케이션에서 물리 메모리를 더 사용 할 수 있다는 이야기입니다. 그래서, Large system cache 옵션을 쓰지 말라는 것입니다. 자 이제 개념을 이해 했으면, SQL Server 전용 서버에서의 메모리 사용계획 옵션을 프로그램으로 설정하는게 바른 설정 이겠지요?
시스템 등록 정보 > 고급 > 성능 옵션 > 메모리 사용 계획
이 옵션은 Windows Kernel에서 System Cache를 Large System Cache로 설정 할지를 선택하는 옵션입니다. 해당 설정은 Registry HKLM\SYSTEM\CurrentControlSet\Control\SessionManager\Memory Management\LargeSystemCache에서 수동으로 설정이 가능합니다.
해당 옵션은Windows Vista와 Windows 2008에서 없어졌습니다(GUI로 설정할 수 있는 방법은 없습니다), 설정을 원하시면 해당 Registry 값에서 LargeSystemCache 값을 0 or 1로 변경합니다.
http://blogs.technet.com/b/sankim/archive/2008/05/19/largesystemcache.aspx
위와 같은 Large system cache 라는 옵션은 OS 에서 파일 데이터를 자동으로 캐시에 넣어 두겠다. 라는 옵션입니다. SQL Server 의 경우 고정메모리 할당에서(MAX MIN 메모리 고정으로 사용의 경우)는 퍼포먼스의 차이가 거의 없습니다. (그래서 GUI 설정에서 빼버렸는지도 모르겠습니다. -_-개인 사견.....)
이걸 SQL Server 가 어플리케이션이니 어플리케이션으로 설정하라고 하면 서운 하겠죠 또한 SQL Server 외 다른 서비스가 있다면, 적절히 옵션을 조정하도록 하는것이 성능에 좋습니다.