1. L2캐쉬 지정

 

Secondlevel Datacache(L2Cache) 는 CPU의 작업속도에 매우 중요한 기능을 담당한다.

펜3코퍼마인에 내장된 CPU와 같은 속도로 동작하는 이 빠른 L2캐쉬에 데이타를 일정량 올려놓을 수 있기때문에, 상대적으로 엄청 느린 메모리로만 데이터를 처리할때보다 작업효율이 더욱 뛰어날수밖에 없다. 일반적으로 xp가 cpu와 L2Cache의 값을 자동으로 인지하게 된다.

이것을 확인하기 위해서는 CPU-Z 같은 프로그램을 이용해서 L2 캐쉬를 쓰고 있는지 보면 된다.

(첨부파일: 아래 cpu-z-1326-thermidor.zip 파일, 414KB)


cpu-z-1326-thermidor.zip


 

그러나, 종종 xp가 이것을 할 수 없을 경우가 발생한다. 그런 경우에는 cpu의 작업속도를 향샹시키기 위해서 직접 레지스트리 값을 조작해줘야 한다.  XP에서 자동으로 지정하여 사용 중이면 이 작업을 할 필요가 없다!!

 

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management

에서 오른쪽에 "SecondLevelDataCache"항목을 고른다.

 

자신의 cpu에 맞는 10진수 값을 다음과 같이 수정한다.

  • AMD Duron → 64입력

  • CeleronA/celeron2 → 128입력

  • PII mobile/PIII E(EB)(칩형태 256K L2캐쉬내장 펜3 코퍼마인)/P4/AMD K6-3/AMD THUNDERBird/Cyrix III → 256입력

  • AMD K6-2/PII/PIII katmai(초기 카트리지형식 펜3 카트마이)/AMD Athlon → 512입력

  • PII Xeon/PIII Xeon → 1024입력

  • 이후 P4 이상 → 2048

재시작한다.

 

 

2. 페이징 파일 제거

 

대용량 메모리를 장착한 경우 페이징 파일(가상 메모리)이 불필요하다고 느끼는 유저가 적지 않을 것이다. 원래 페이징 파일은 메모리가 비쌌던 90년대, 대형 애플리케이션을 조금이나마 빠르게 동작할 수 있게끔 고안된 기능이다. 
 예를 들면 메모리 512MB를 장착한 시스템 환경에서 인터넷 익스플로러 100개를 실행하면 그 중 약 절반은 페이징 파일을 이용해 작동하게 된다. 이처럼 수많은 인터넷 익스플로러 실행이나, 어도비 포토샵 등의 대형 애플리케이션으로 수십 MB의 이미지 파일을 수정하는 등의 특수 케이스가 아닌 이상 불필요한 셈이다. 게다가 메모리가 2GB정도 되면, 더 이상 할 말 없다. 무조건 없애자.

 



윈도우XP의 페이징 파일을 없애자. 제어판이나 내 컴퓨터의 오른쪽 클릭 메뉴에서 시스템 등록정보를 실행한다. ‘고급-성능’ 섹션의 설정 버튼을 클릭한 다음 성능 옵션창의 ‘고급-가상 메모리’ 섹션을 선택한다.


 

가상 메모리 창에서 페이징 파일이 설정되어 있는 드라이브를 선택한 다음 ‘페이징 파일 없음’에 체크한다. 그런 다음 오른쪽의 "설정" 단추를 클릭하고 "확인"을 눌러 닫고 윈도우XP를 재시작하면 페이징 파일이 삭제된다. (꼭 "설정" 단추를 눌러야 한다.)

 

 

3. 파일 시스템 캐쉬

 

디스크 캐쉬는

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\ Memory Management

아래에 있는 "LargeSystemCache"라는 값이 담당하고 있다.


값을 보면 Windows XP, Windows 2000 Pro의 경우 0, Windows 2000 Server, Windows 2003의 경우 1로 설정되어 있다.
   ▶ 0의 경우 약 8MB까지 파일 시스템 캐쉬로 사용하고 약 1000개까지 캐쉬한다. 자체 메모리 관리 기능이 있거나 대용량 메모리 사용에 최적화된 응용 프로그램(SQL Server, IIS 등) 실행용으로 적합하다.
   ▶ 1은 최대 RAM용량 -4MB까지 캐쉬로 사용하고 약 250개까지 캐쉬한다. 큰 네트워크상의 서버에 적합하다.
이 설정은 웬만하면 바꾸지 않는 것이 나을 듯 싶다. 따라서 0으로 그냥 놔두는 것이 좋다.

 

 

4. 메모리 페이징 설정

 

메모리 페이징 설정은

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\ Memory Management

아래에 있는 "DisablePagingExecutive"라는 값이 담당하고 있다.

우선 이 값은 널리 알려진 대로 "드라이버와 커널을 실제 메모리상에만 존재하게 하느냐, 아니면 가상메모리상에 페이징 하느냐"를 설정하는 값인데 0으로 할 경우에는 페이징되고, 1로 하면 실제 메모리상에만 존재하게 된다. 빠른 속도를 위해선 1로 설정하는 것이 좋다.

 

 

5. 페이지 잠금 크기 제한 설정

 

페이지 잠금 크기 제한 설정은

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\ Memory Management

아래에 있는 "IoPageLockLimit"라는 값이 담당하고 있다.

코리아인터넷닷컴의 게시물을 인용해보면 이 값은 "특정시간에 물리적인 메모리에서 잠금이 될 수 있는 응용 프로그램메모리의 최대량을 나타낸다"라고 나와 있다. (http://korea.internet.com/channel/content.asp?kid=10&nid=17000&cid=112)
이 말은 프로그램에서 파일을 저장 시 하드디스크에 읽고 쓸 데이터에 Lock을 걸 수 있는 최대 크기라는 것이다. (플로피디스크의 경우도 그렇고 랜카드, 프린터 등 모든 하드웨어 장치에 입출력 할 때 사용되는 값이다.)

 

예를 들어, 메모장에 "abcdefg....z" 라고 쓰여 있을 때 저장하기를 누르게 되면 하드디스크에 저장이 되는데 저장 도중(매우 짧은 시간이지만)에 다른 프로그램에서 데이터를 바꿀 수도 있다. 만약 데이터를 바꿀 수 있다면 어떻게 될까? 메모리의 같은 공간에 읽기와 쓰기가 동시에 일어난다. 데이터가 엉망이 될 것이다. 또한 이 경우 메모리에 있는 데이터를 읽는 데에도 시간이 더 걸린다. 그래서 Lock을 거는 것이다.

 

그런데 만약 이 값이 너무 작게 설정되어 있다면 어떨까?
16384(16KB)로 설정되어 있는 경우 한번에 16KB까지 락을 건다.
그런데 메모리에 저장되어 있는 10MB짜리 데이터를 하드에 쓸 경우 우선 맨 앞쪽의 16KB에 Lock을 한 후, 해당 데이터를 하드에 저장한 후 UnLock을 한다. 이 과정을 계속해서 반복하게 되는데 무려 640번을 반복해야 한다. 반면 16777216(16MB)로 설정된 경우 1번만 반복하면 된다.

 

다시 IoPageLockLimit 값으로 돌아가서 실제 적용할 수 있는 크기는 RAM용량/8로 설정하면 된다. 즉, 다음과 같이 10진수 값으로 설정하면 된다.

 

  •   32MB = 4194304

  •   64MB = 8388608

  • 128MB = 16777216

  • 192MB = 25165824

  • 256MB = 33554432

  • 384MB = 50331648

  • 512MB = 67108864

  • 1024MB = 134217728

  • 2048MB = 268435456




Posted by 떼르미
,


자바스크립트를 허용해주세요!
Please Enable JavaScript![ Enable JavaScript ]