Windows 스왑 (페이지 파일) : 활성화 또는 비활성화?


28

개인적인 경험을 통해 Windows XP에서 페이지 파일을 비활성화하면 일반적으로 다른 소프트웨어 변경을 통해 가장 빠른 속도를 얻을 수 있습니다. 분명히 이것은 많은 양의 RAM이 사용 가능할 때 수행되어야합니다. 일반적으로 + 2GB의 RAM에서 잘 작동합니다. 내가 가진 유일한 문제는 Adobe Photoshop을로드하는 것이 었습니다.

이것이 실제로 속도 향상입니까, 아니면 상상하고 있습니까?

참고 : 실제로 끄려면 0MB로 설정하지 말고 비활성화하십시오. 그렇지 않으면 Windows는 필요를 충족시키기 위해 필요할 때 확장합니다.


9
주의 : 드라이버 non-pagedpaged 메모리 섹션 이라고하는 제한된 양의 메모리 만 있습니다. 페이지 파일은 페이지 단위 섹션이 가득 찼을 때 필요합니다. 게이머가 8GB 시스템에서 페이지 파일을 비활성화했기 때문에 페이지 풀 메모리에 대해 게임이 불평하는 것을 보았습니다. 결론 : 페이지 파일이 필요하며 페이징 풀 고갈을 방지하고 실제로 시스템 속도를 높 입니다.
Tamara Wijsman

답변:


18

Windows XP는 최소화 된 응용 프로그램을 미친 것처럼 디스크에 플러시합니다. 직접 사용해보고 큰 토렌트 다운로드를 시작하고 모든 것을 최소화하십시오. 곧 거의 모든 RAM이 다른 응용 프로그램 대신 토렌트의 파일 캐시로 사용됩니다. 페이지 파일을 비활성화하면이 동작이 방지됩니다.

그러나 Windows Vista 및 Windows 7에서는 시스템이이 시나리오를 훨씬 더 잘 처리합니다. 따라서이 버전에서 페이지 파일을 사용하지 않도록 설정하면 큰 차이가 없습니다.

일부 게임에는 실제로 필요하지 않은 경우에도 페이지 파일이 필요합니다. Steam에서 다운로드 한 게임 데모를 재생할 때 최근에이 파일을 발견했습니다. 6GB의 RAM을 사용할 수 있지만 작은 페이지 파일을 만들 때까지 게임 시작을 거부했습니다. sigh

개인적으로 RAM이 많으면 페이징 파일없이 이동하는 것을 선호합니다.


이 질문을 한 이후 WinXP에 페이지 파일이 없었습니다. Win7에서 실제로 시도하지 않았으므로 최신 버전의 Windows에서 가치가 있는지 여부를 말할 수 없습니다.
Joe Phillips

Win7에서 시도했지만 좋은 경험이 없었습니다. SSD는 사용할 수 없으므로 페이지 파일 만있는 것이 좋습니다
Joe Phillips

페이지 파일이 있거나 파일 캐시 동작과 직접 관련이 없습니다.
Jamie Hanrahan 2016 년

25

그것을 망쳐 놓지 말고 Windows 자체를 알아 내십시오.

이 ServerFault 답변은 이유에 대한 가장 훌륭한 설명입니다.

많은 사람들이 Windows가 요청시 페이지 파일로 데이터를 푸시한다고 가정하는 것 같습니다. EG : 무언가 많은 양의 메모리를 원하고, 필요한 RAM이 충분하지 않기 때문에 Windows는이 마지막 순간에 RAM에서 디스크로 데이터를 쓰기 시작하여 새로운 요구에 따라 RAM을 확보 할 수 있습니다.

이것은 올바르지 않습니다.

펀치 라인 :

페이지 파일을 완전히 제거하면 디스크 스 래싱이 더 많이 발생할 수 있습니다.


12
페이지 파일을 제거하면 어떤 디스크 스레 싱이 발생합니까? 스 래싱을 중지해야하는 것이 있으면 무엇입니까? RAM이 부족하면 Windows에서 오류가 발생합니다. 스왑이 비활성화되어 있으면 스왑을 사용하지 않습니다.
Joe Phillips

2
d03boy, SF 포스트를 읽으십시오. 활성 프로세스 메모리를 램에서 벗어나야하는 경우 디스크 활동이 많이 발생합니다.
Factor Mystic

3
@ d03boy : 답변은 연결된 게시물에 있습니다. 기본적으로 RAM을 너무 많이 사용하면 HD가 어떤 식 으로든 사용됩니다. 페이지 파일을 제거해도 더 많은 RAM을 할당해야하는 경우 HD는 여전히 프로그램 코드를 저장 (요청시 원본 파일에서 간단히 읽음)하는 데 사용됩니다.
Sean

1
@Factor, Windows는 실제 RAM을 너무 많이 사용하면 단순히 오류를 발생시킵니다. RAM AFAIK @Darth에서 아무 것도 옮기지 않을 것입니다. 링크 된 포스트는 페이징이 켜져 있거나 꺼져 있든 그렇게하는 것처럼 들립니다
Joe Phillips

2
그러나 Windows XP에는 끔찍한 메모리 관리 기능이 있습니다. 내 대답을 읽으십시오.
zidar

7

Microsoft의 답변 "스왑 파일 비활성화"

http://social.answers.microsoft.com/Forums/en-US/w7performance/thread/0bd8a75c-2607-4468-8342-c35ea82ea670

Ken MVP, Microsoft MVP

그것으로부터 어떤 성능 향상이 있습니까? 감사합니다.

너는 할수 있니? 예. 당신은해야합니까? 아뇨.

그렇게하면 성능이 향상됩니까? 아니요, 성능이 저하 될 수 있습니다.

우선, 2 기가 바이트 RAM을 많이하지 않습니다, 그것은의 최소 대부분의 사람들이 있어야한다고 양.

둘째, 페이지 파일이 없으면 보유한 모든 RAM을 사용할 수 없습니다. 할당 된 ay는 절대 사용되지 않더라도 Windows는 가상 메모리를 필요에 따라 가상 메모리에 미리 할당하기 때문입니다. 페이지 파일이 없으면 해당 할당은 실제 메모리에서 이루어져야하므로 해당 메모리를 묶고 어떤 목적으로도 사용하지 못하게합니다.

셋째, 페이지 파일이 없으면 이점이 없습니다. 필요하지 않으면 사용되지 않습니다. 할당 된 메모리와 사용 된 메모리를 혼동하지 마십시오.

Ken Blake, 2003 년 이후 Microsoft MVP (Windows 데스크톱 경험) Ken Blake


스 래싱은 어떻습니까? 비활성화 된 경우 HD 사용이 줄어 듭니까? 이것은 전체 답변처럼 보이지 않습니다. 말할 것도없이이 질문은 XP에 관한 것이며이 답변은 Win7에 관한 것입니다
Joe Phillips

충분한 메모리가 있다면 스왑 파일을 비활성화 할 수 있다고 MVP는 정확하다고 생각하지 않습니다. 메모리가 부족하지 않도록하십시오.
타마라 Wijsman

1
@JoePhilllips-아니오, 간단히 말해서, 데이터 메모리 + 프로그램 메모리가 페이지 파일이없는 시스템 메모리를 초과하면 프로그램은 항상 원본 프로그램 파일에서 프로그램을 다시 가져올 수 있기 때문에 데이터를위한 공간을 만들기 위해 프로그램에 사용 가능한 공간이 줄어 듭니다. 따라서 8GB 메모리, 6GB 데이터 및 4GB 응용 프로그램을 사용하는 경우 OS는 해당 4GB 프로그램간에 공유 할 2GB 만 있습니다. 코드를 지속적으로 읽고 디스크를 스 래싱하는 것입니다. 실제로 4GB의 데이터 만 필요하고 나머지를 교체하기 위해 2GB 페이지 파일이 있으면 OS는 다른 4GB를 프로그램에 사용할 수 있으므로 스 래싱은 없습니다!
Mark Booth

6

나는 enable 라고 말할 것 입니다.

RAM 용량에 관계없이 페이지 파일이 최소한 유용한 시나리오가 있습니다. 또한 페이지 파일이 있으면 대부분의 Windows 런타임이 대부분 오프로드됩니다. 이유? 이 메모리에 필요한 있지만, 그것은 필요하지 않은 순간에 . 스왑 파일에 넣으면 액세스하는 데 시간이 더 걸릴 수 있지만 실제로 사용중인 프로그램에 더 많은 RAM이 남아있게됩니다.

성능이 향상된 이유는 전체 시스템을 RAM에 강제로로드했기 때문에 훨씬 빠르기 때문입니다. 그러나 한 번에 여러 프로그램, 특히 Firefox 및 Photoshop과 같은 메모리가 많은 프로그램을 한 번에 사용하기 시작하면 개선이 즉시 이루어질 것입니다. *

그러나 단순히 컴퓨팅 습관으로 인해 해당 문제가 발생하지 않을 수도 있습니다. 페이지 파일을 끄려고하면 1 비트를 즐기지 않는다는 것을 알고 있습니다. 따라서 정말로 원한다면 잠시 동안 그대로두고 어떤 일이 발생하는지 확인한 다음 나중에 다시 다시 켜십시오.

* "이 단락은 상당히 많은 양의 추측이었습니다."/ 면책 조항;)


최근에 업그레이드 한 후 (4x4는 약 3.5이지만) 4GB의 RAM이 있으며 몇 달 동안 아무런 문제없이 한두 번만 재부팅해도 페이지 파일이 꺼졌습니다. 나는 지금까지 아무런 문제없이 상당히 무거운 프로그램 (포토샵 포함)을 사용합니다.
Joe Phillips

이 경우 제 충고를 무시하고 자신에게 맞는 것을하십시오. Factor Mystic의 게시물은 동일한 결론에 대해 훨씬 더 나은 주장을 가지고 있지만 적어도 그가 말한 것을 명심하십시오.)
Sean

어쩌면 다시 켜서 도움이되는지 볼 것입니다. 그래도 끊임없이 스왑을 쓰는 것이 내 하드 드라이브에 좋다고 상상할 수 없습니다.
Joe Phillips

5

가능 하다고 말하지만 다른 I / O 호그에서 사용하지 않는 두 번째 드라이브로 옮기십시오. 그것은 종종 페이지 파일을 완전히 비활성화하는 것보다 더 나은 속도를 제공했습니다. 물론, 최대 RAM은 병렬 최적화에 적합합니다.


1
그렇게하면 페이지 파일을 다른 실제 장치로 옮기고 있는지 확인하십시오. 산업 등급의 하드 드라이브 (SCSI 등)가없는 한 동일한 장치의 다른 파티션으로 옮기는 것은 시간 낭비입니다.
Paweł Polewicz

3

4GB의 실제 메모리가있는 32 비트 Windows 시스템에서 스왑 파일을 비활성화합니다. 가상 메모리를 켜도 시스템에 더 이상 주소가 추가되지 않으며, 끄면 Windows가 스왑 인 또는 아웃 될 때까지 기다릴 필요가 없습니다 .


6
어떤 타이밍 테스트를 실행했으며 어떤 종류의로드에서?
Michael Kohne

2
하드 데이터 없음 == 여전히 주관적인 일화
romandas

4
물론 그것은 주관적인 일화입니다. 제가 다른 주장을 한 적이 있습니까? 사람들이 왜 타이밍 데이터를 요구하는지 잘 모르겠습니다. Windows에서 서버를 실행하지 않고 (필요한 경우가 아니라면) 개인 데스크톱 및 게임기를 실행합니다. 그리고 그러한 기계의 경우 주관적인 반응이 중요합니다.
kquinn

1
그리고 당신은 한 번에 프로세스 이상을 실행하지 않았다고 생각합니다. 32 비트 시스템에서도 4GB 이상의 실제 RAM을 언제든지 할당 할 수 있습니다. 가상 메모리 API를 사용하여 주소 공간의 섹션을 다시 매핑하여 단일 프로세스에 4GB 이상의 RAM을 할당 할 수도 있습니다.
Eclipse

1
어, 4GB 이상의 가상 RAM을 할당 할 수 있다는 의미입니까? 모든 실제 RAM이 모두 사용되면 MMU에서 페이징 오류가 발생하여 스와핑이 발생합니다. 페이징 파일이 없으면 모든 DLL / EXE 데이터가 스왑됩니다. 페이징 파일을 사용하면 페이지 파일에 쓰여진 것이 무엇이든됩니다.
JBR 윌킨슨

3

4GB의 실제 메모리가있는 32 비트 Windows 시스템에서 스왑 파일을 비활성화합니다. 가상 메모리를 켜도 시스템에 더 이상 주소가 추가되지 않으며, 끄면 Windows가 스왑 인 또는 아웃 될 때까지 기다릴 필요가 없습니다.

주소 공간은 다음과 같습니다. 모든 PROCESS 에는 자체 31 비트 주소 공간 (낮은 2GB)이 있고 커널에는 자체 31 비트 주소 공간이 있습니다 (현재 스레드를 소유 한 프로세스에 관계없이 항상 동일). 이것은 사용 가능한 사용자 모드 주소 공간의 2GB * 프로세스 수를 제공합니다. 스왑 사용자 모드 공간이 없으면 실제 메모리 크기에서 커널 메모리 크기를 뺀 크기로 제한됩니다 (보통 약 200MB). 물론 시스템이 할당 할 수있는 가상 메모리 용량에 대한 인위적인 제한이있을 수 있지만 Microsoft의 라이선스 정책 전문가는 아닙니다.

또한 스왑을 비활성화한다고해서 반드시 페이지 오류가 없어서 디스크 액세스가 발생하는 것은 아닙니다. 스왑 파일은 메모리가 매핑되는 유일한 파일이 아닙니다. 모든 실행 파일 (즉, 커널 모드 드라이버를 제외한 .exe 또는 .dll)에는 자체 디스크 백업, 즉 exe 파일이 있습니다. 물론 쓰기 가능한 데이터 세그먼트, IAT 또는 심지어 코드 세그먼트 (예 : 압축 된 실행 파일의 경우)와 같이 메모리에서 수정 된 페이지에는 별도의 스왑 백업이 필요하지만 대부분의 코드 / 정적 데이터 / 리소스가 필요합니다. 스왑이 필요하지 않으며 시스템 리소스가 부족한 경우 메모리에서 제거 할 수 있습니다. 프로세스가 이러한 데이터에 액세스해야하는 경우 스왑 사용 여부에 관계없이 페이지 오류 및 디스크 액세스가 발생합니다.


2

Sean Nyman은 이전에 "특히 Firefox 및 Photoshop과 같이 메모리가 많은 메모리를 사용하는 사람들은 그 개선이 바로 이루어질 것"이라고 말했습니다.

Firefox에서 추가하고 싶었 about:config습니다. 주소 표시 줄에 입력 하여 Firefox의 고급 설정으로 이동하면 새 문자열을 추가 browser.cache.disk.enable하고 부울 값을 설정하면 falseFirefox가 RAM에만 캐시됩니다. 또한 문자열을 추가하고 browser.cache.disk.capacityRAM Firefox에서 브라우저 캐시에 사용할 공간을 제어하는 ​​값을 지정할 수 있습니다 . 이게 도움이 되길 바란다. RAM에 캐시하도록 설정했으며 Firefox는 항상 매우 빠릅니다.

이 랩톱에는 시스템 드라이브 용 SSD 드라이브가 있으며 보조 베이에는 500GB의 회전식 드라이브가 있으며 스토리지에는 Windows 7 Pro의 회전식 드라이브를 가리 키도록 TMP, TEMP 및 Temporary Internet Files 폴더가 설정되어 있습니다. pagefile.sys를 D의 로터리 드라이브로 옮기는 것과 함께 시스템은 번개처럼 매우 빠르게 작동합니다. 어쨌든 4GB RAM이 있으므로 Windows 7에서도 페이지 파일을 많이 사용하지 않는다고 생각하지만 전원을 켜두면 어떤 피해가 있습니까?


메모리가 아무리 많더라도 Windows는 어떤 이유로 든 페이지 파일을 사용하는 것을 좋아합니다
Joe Phillips

0

스왑 파일을 사용하지 않도록 설정하면 컴퓨터 성능을 향상시키는 데 사용할 수있는 가장 극적인 개선 사항 일 수 있습니다. 일반적인 시나리오에서 대부분의 랩톱은 움직이는 부품이있는 물리적 자기 하드 디스크를 사용합니다. 이 드라이브는 컴퓨터의 메모리 속도와 비교할 때 매우 느립니다. 따라서 "수단 내에서"창을 강제로 유지하고 디스크에 쓰지 않는 램이있는 경우 아직 메모리에없는 파일에 대해 디스크를 쳐야 할 때 속도가 느려집니다. 메모리의 모든 것이 훨씬 빠르게 실행됩니다. 아이디어는 전체 운영 체제를 캐시하여 메모리에없는 것이 필요할 때 실제 디스크에서만 읽거나 쓰도록하는 것입니다.

RAM 읽기 / 쓰기는 물리적 자기 디스크에서 나노초와 밀리 초로 이루어집니다.

이제 고려해야 할 것은 이제 새로운 스왑 파일 옵션이 실용화되고 있다는 것입니다. 솔리드 스테이트 디스크를 사용하거나 스왑 파일을 SD 카드에 넣을 수있는 창이 나타나면 성능이 크게 향상됩니다.

그냥 내 $ 0.02


3
스왑을 비활성화한다고해서 모든 것이 메모리에 남아있는 것은 아닙니다. 메모리에서 플러시되는 내용은 필요할 때 디스크의 원래 위치에서 다시 읽어야 함을 의미합니다. 이것은 시스템이 느려질 것임을 의미합니다. 내 답변에 링크 된 SF 게시물을 참조하십시오.
Factor Mystic

3
이것이 정확히 디스크를 칠 필요가 없도록 최적화하는 이유입니다. 나는 이것을 전에 했었고 효과가있다.
Axxmasterr
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.