
NTFS 압축으로 인해 추가 CPU 사용량으로 인해 성능이 저하될 수 있다는 이야기를 들었지만 디스크 읽기 감소로 인해 실제로 성능이 향상될 수 있다는 보고서를 읽은 적이 있습니다. NTFS 압축은 시스템 성능에 정확히 어떤 영향을 미치나요?
노트:
- 저는 5400RPM 하드 드라이브가 장착된 노트북을 사용하고 있는데, 그 노트북에서 하는 일 중 상당수가 I/O에 묶여 있습니다.
- 프로세서는 2.0GHz에서 실행되는 4개의 코어를 갖춘 AMD Phenom II입니다.
- 시스템은 다음을 사용하여 정기적으로 조각 모음을 수행합니다.울트라조각 모음.
- 워크로드는 읽기-쓰기가 혼합되어 있으며 읽기가 쓰기보다 다소 자주 발생합니다.
- 압축할 파일에는 선택한 개인 문서 하위 집합(전체 홈 폴더 아님)과 여러(덜 까다로운) 게임 및 Visual Studio(대체로 I/O 바인딩되는 경향이 있음)를 포함한 프로그램이 포함됩니다.
답변1
NTFS 압축으로 인해 추가 CPU 사용량으로 인해 성능이 저하될 수 있다는 이야기를 들었지만 디스크 읽기 감소로 인해 실제로 성능이 향상될 수 있다는 보고서를 읽은 적이 있습니다.
옳은. 일부 압축 알고리즘을 사용하는 CPU가 CMB/s로 압축하고 DMB/s로 압축을 풀 수 있고 하드 드라이브의 쓰기 속도는 W이고 읽기 속도는 R이라고 가정합니다. C > W인 한, 다음과 같은 경우 성능이 향상됩니다. D > R이면 읽을 때 성능이 향상됩니다. Lempel-Ziv의 알고리즘(소프트웨어로 구현됨)은 비결정적 압축률을 갖기 때문에(제한된 사전 크기로 제한될 수 있음) 쓰기 사례에서는 이는 극단적인 가정입니다.
NTFS 압축은 시스템 성능에 정확히 어떤 영향을 미치나요?
글쎄요, 그것은 바로 위의 불평등에 의존하는 것입니다. CPU가 HDD 쓰기 속도보다 높은 압축/압축 해제 속도를 유지할 수 있는 한 속도 향상을 경험할 수 있습니다. 그러나 이는 (알고리즘으로 인해) 심한 조각화가 발생할 수 있는 대용량 파일에 영향을 미칩니다.전혀 압축되지 않음.
이는 Lempel-Ziv 알고리즘이 압축이 진행됨에 따라 속도가 느려지기 때문일 수 있습니다(사전이 계속 증가하여 비트가 들어올 때 더 많은 비교가 필요하기 때문). Lempel-Ziv 알고리즘에서는 파일 크기에 관계없이 압축 해제 속도가 거의 항상 동일합니다(사전은 기본 + 오프셋 체계를 사용하여 주소를 지정할 수 있기 때문입니다).
압축은 파일 저장 방식에도 영향을 미칩니다.디스크에 배치. 기본적으로 단일 "압축 단위"는 클러스터 크기의 16배이지만(대부분의 4kB 클러스터 NTFS 파일 시스템에서는 파일을 저장하는 데 64kB 청크가 필요함) 64kB를 초과하여 증가하지 않습니다. 그러나 이는 디스크의 조각화 및 공간 요구 사항에 영향을 미칠 수 있습니다.
마지막으로 대기 시간은 토론의 또 다른 흥미로운 가치입니다. 데이터를 압축하는 데 걸리는 실제 시간으로 인해 대기 시간이 발생하는 반면, CPU 클럭 속도가 기가헤르츠일 때(즉, 각 클럭 주기가 1ns 미만) 발생하는 대기 시간은 하드 드라이브 검색 속도에 비해 무시할 수 있습니다. 밀리초 단위 또는 수백만 개의 클록 주기).
실제로 속도 향상을 경험할 수 있는지 확인하기 위해 시도해 볼 수 있는 몇 가지 방법이 있습니다. 첫 번째는 Lempel-Ziv 기반 압축/압축 풀기 알고리즘으로 시스템을 벤치마킹하는 것입니다. 좋은 결과(예: C > W 및 D > R)를 얻으면 디스크에서 압축을 활성화해야 합니다.
여기에서 실제 하드 드라이브 성능에 대한 더 많은 벤치마크를 수행할 수 있습니다. 귀하의 경우 정말 중요한 벤치마크는 게임이 얼마나 빨리 로드되는지, Visual Studio 프로젝트가 얼마나 빨리 컴파일되는지 확인하는 것입니다.
TL,DR: 압축~할 것 같다높은 처리량과 짧은 대기 시간이 필요한 많은 작은 파일을 활용하는 파일 시스템에 적합합니다. 대용량 파일은 성능 및 대기 시간 문제로 인해 영향을 받지 않습니다.
답변2
NTFS에 대한 Wikpedia 항목에서 이에 대해 설명했습니다.
NTFS는 LZNT1 알고리즘(LZ77 [23]의 변형)을 사용하여 파일을 압축할 수 있습니다. 파일은 16개 클러스터 청크로 압축됩니다. 4kB 클러스터를 사용하면 파일이 64kB 청크로 압축됩니다. 압축으로 인해 64kB의 데이터가 60kB 이하로 줄어들면 NTFS는 불필요한 4kB 페이지를 빈 스파스 파일 클러스터처럼 처리하며 기록되지 않습니다. 이는 불합리한 무작위 액세스 시간을 허용하지 않습니다. 그러나 압축 가능한 대용량 파일은 64kB 청크마다 더 작은 조각이 되므로 조각화가 심해집니다. [24][25] Microsoft에서는 성능 저하로 인해 30MB를 초과하는 파일에 대해 압축을 권장하지 않습니다.[인용 필요]
압축을 가장 잘 사용하는 것은 반복적이고 거의 작성되지 않으며 일반적으로 순차적으로 액세스되고 자체적으로 압축되지 않는 파일에 대한 것입니다. 로그 파일은 이상적인 예입니다. 4kB 미만이거나 이미 압축된 파일(예: .zip, .jpg 또는 .avi)을 압축하면 파일이 더 커지고 느려질 수 있습니다.[인용 필요] 사용자는 .exe 및 .dll과 같은 실행 파일을 압축하지 않아야 합니다. 4kB 페이지에서 페이지 인 및 아웃됨) 드라이버, NTLDR, winload.exe 또는 BOOTMGR과 같이 부팅 시 사용되는 시스템 파일을 압축하면 시스템이 올바르게 부팅되지 않을 수 있습니다.[26]
압축된 파일에 대한 읽기-쓰기 액세스는 항상 투명하지는 않지만 종종[27] 투명하지만 Microsoft는 서버 시스템 및/또는 로밍 프로필을 보유한 네트워크 공유에 대한 압축을 피하는 것이 좋습니다. 이는 프로세서에 상당한 부하를 주기 때문입니다.[28]
하드 디스크 공간이 제한된 단일 사용자 시스템은 압축률에 따라 4kB에서 64kB 이상의 작은 파일에 대해 NTFS 압축의 이점을 누릴 수 있습니다. 900바이트 미만의 파일은 MFT의 디렉터리 항목과 함께 저장됩니다.[29]
컴퓨터에서 가장 느린 링크는 CPU가 아니라 하드 드라이브의 속도입니다. 따라서 NTFS 압축을 사용하면 공간과 (종종) 속도 측면에서 제한적이고 느린 저장 공간을 더 잘 활용할 수 있습니다.[30] (압축된 파일 조각이 연속적으로 저장된다고 가정합니다.)
64KB 이하(예: 1개)로 압축되는 파일에만 압축을 권장합니다. 그렇지 않으면 파일이 64K 이하의 분수로 구성됩니다.
MyDefrag는 조각 모음 작업을 더 잘 수행합니다.
답변3
디스크 속도가 상당히 느리므로 귀하의 질문에는 장점이 있습니다. NTFS 압축은 프로세서 집약적이며 압축 효율성보다는 속도에 맞춰 조정됩니다.
읽기 작업이 (매우) 약간 개선될 것으로 기대합니다. 그러나 시스템 캐시에 있는 파일에 액세스하면 액세스할 때마다 다시 압축을 풀어야 하므로 성능 저하가 발생합니다.
물론 추가 압축으로 인해 쓰기 작업이 느려지는 것을 볼 수 있습니다.
동일한 NTFS 디스크에 파일을 복사하려면 압축 해제 및 압축이 필요하므로 가장 큰 어려움을 겪게 됩니다.
NTFS 압축은 조각화를 크게 증가시킬 수도 있지만 '일반적인' 작업 부하를 받는 대부분의 '일반적인' 컴퓨터에서는 문제가 되지 않습니다.
JPEG 이미지, 비디오 또는 .zip 파일과 같은 많은 유형의 파일은 기본적으로 압축이 불가능하므로 이러한 파일은 사용 속도가 느려지고 공간이 절약되지 않습니다.
하나의 디스크 클러스터(일반적으로 4K)보다 작은 파일은 이득이 없으므로 압축되지 않습니다. 그러나 전체 볼륨을 압축할 때는 더 작은 클러스터 크기를 권장하는 경우도 있습니다.
상대적으로 정적인 볼륨이나 파일에는 NTFS 압축이 권장됩니다. 시스템 파일이나 사용자 폴더에는 권장되지 않습니다.
그러나 하드웨어 구성은 디스크, 버스, RAM 및 CPU에 따라 컴퓨터 모델마다 다르기 때문에 테스트를 통해서만 압축이 컴퓨터 모델에 미치는 정확한 효과를 알 수 있습니다.
답변4
오늘 이 내용을 보는 사람은 비디오 게임의 경우 정기적으로 패치가 적용되는 게임이라도 드라이브나 폴더에서 압축을 활성화하면 오늘날의 느린 CPU와 심지어 SSD(그 외의 경우)에서도 로드 시간을 줄일 수 있다는 점을 알아야 합니다. 대부분의 사람들이 가지고 있지 않은 가장 빠른 것), 정기적으로 조각 모음이 필요하며 완벽한 디스크를 구입하는 것이 좋습니다. 일단 "스마트 공격적" 조각 모음을 사용하고 압축 후 자동 조각화 방지 기능을 활성화하면 계속 지켜볼 것입니다. 성능 저하가 거의 또는 전혀 없는 상태에서 조각화를 방지하기 위해 활동 및 자동 최적화(최근 최신 Windows에서 AMD와 Intel의 오래된 1세대 쿼드까지 테스트했습니다)
많은 게임 파일이 미친 듯이 잘 압축되고, 일부 게임에는 대부분 비어 있음에도 불구하고 디스크 공간을 차지하는 파일이 있습니다... 얼마 전에 압축한 한 게임은 폴더 중 하나에서 6GB에서 16MB 미만으로 줄었습니다..... (좋았으면 좋겠습니다. 농담이었습니다...낭비된 공간과 낭비된 I/O에 대해 이야기했습니다....)
얼마 전에 친구들의 스팀 폴더를 압축했는데 압축하는 데 4일이 걸렸습니다(4TB 드라이브에 있고 3/4이 꽉 차서 시작했습니다). 압축이 완료되었을 때...그는 전체 드라이브의 약 1/3을 사용하고 있었습니다. 조각 모음에 하루가 더 걸렸습니다(하지만 처음에는 끔찍하게 조각조각 나기 시작했습니다. 왜냐하면 그는 조각 모음을 한 번도 해본 적이 없었기 때문입니다. 멀티 MMO가 설치되어 있고... 수많은 Steam/Uplay/오리진/기타 게임이 깔려 있음에도 불구하고... )
사진/이미지 폴더를 압축하지 마십시오. 아무 소용이 없으며 느린 시스템에서 액세스 속도가 느려질 뿐입니다(1/2 괜찮은 장비에서는 눈치채지 못할 수도 있지만...)
나는 nt4 이후로 모든 시스템에서 내 드라이브를 압축했지만 선택적으로 실제로 압축이 좋은 것보다 더 큰 해를 끼치는 폴더의 압축을 풀 것입니다. 이것은 옛날에 게이머, 괴짜로서 우리가 생각해낸 "모범 사례"입니다. "얘들아(이런 용어가 있기 전에는) 솔직히 말해서 드라이브/데이터를 압축하는 좀 더 세밀하게 조정된 방법이 있었으면 좋았을 텐데, 무료는 아니지만 저렴한 도구가 있어서 훨씬 더 나은 결과를 얻을 수 있었습니다. 압축하면 안 되는 데이터를 압축하지 않고 압축한 결과입니다....
어쨌든, 많은 구형 듀얼 코어 시스템도 1. ccleaner를 실행합니다. 2. 관리자 권한 명령 프롬프트에서 chkdsk /f를 실행합니다(y를 입력한 다음 다시 시작하고 검사를 실행합니다). 3. 드라이브를 압축합니다. 4. mydefrag 또는 더 나은 완벽한 디스크로 조각 모음을 수행합니다. 시간이 걸립니다. 5. 압축이 잘 되지 않는 대용량 파일이나 사진/기타 콘텐츠가 포함된 폴더를 정리하고, 폴더나 파일만 압축을 풉니다. 여기에서 내 경험치는 즉, 프로세스의 이 부분 이후에는 조각 모음을 수행할 필요가 거의 없지만 확인하는 것이 가장 좋습니다.
일부 사람들이 압축에 반대하는 이유를 알지만, 테스트한 결과 SSD 또는 HDD, 특히 느린 오래된 HDD 및 SSD를 적절하게 사용하면 압축을 적절하게 사용하면 공간을 절약할 뿐만 아니라 성능, 심지어 가장 오래된 듀얼에도 큰 도움이 될 수 있습니다. 코어는 해당 시스템의 드라이브가 움직일 수 있는 것보다 더 빠르게 평균 압축/압축 해제 주기를 처리할 수 있습니다. 이를 테스트한 결과, 1세대 및 저렴한 구형 디자인 SSD는 대부분의 경우 느린 HDD만큼은 아니지만 압축의 이점을 누릴 수 있습니다. 매우 느리고 교체하기 어려운 SSD가 장착된 넷북이 있고, 액세스하기 쉬운 SSD 슬롯을 교체하기가 훨씬 쉬운 넷북이 있지만, 어리석은 일은 다른 SSD를 물리적으로 제거하지 않고는 추가된 SSD에서 부팅할 수 없다는 것입니다... (끔찍한 바이오스, 하지만...장치가 실제로 멋지고 보기보다 더 강력합니다.. 그런 방식으로 설치된 느린 SSD 외부에서는 모든 것을 분해해야 합니다... ...), 해당 드라이브를 압축하고 느린 SSD에 창과 가장 기본적인 앱(예: 사무실)을 설치하면 실제로 읽기/쓰기에서도 속도가 빨라집니다. CPU가 실제로 SSD를 기다리게 되기 때문입니다. 그가 설치한 더 빠른 속도에는 적합하지 않습니다. 내부 SSD에 부트 로더를 배치하고 추가된 OS에 설치하자고 제안했지만..그는 결국 페이지 파일에 대부분을 사용하여 어리석은 일을 없애기를 바라고 있습니다. ..(128GB이지만 엄청나게 느립니다. 마치 제가 쓰기 속도가 더 좋은 USB3 플래시 드라이브를 가지고 있는 것처럼.....newegg/amazon에서 모두 판매되는 가격입니다......)
최소한 게임 드라이브/폴더를 압축할 것을 강력히 제안합니다. 심지어 빠른 시스템에서도 만들 수 있는 차이점이 있습니다!!!