O Windows descomprime arquivos na memória. Fazê-lo no disco iria obliterar completamente qualquer melhoria de velocidade e causaria muita escrita desnecessária no disco. Veja o final de este artigo do blog da Microsoft sobre compactação e arquivos esparsos de NTFS :
- NTFS determines which compression unit is being accessed.
- The compression unit’s entire allocated range is read.
- If the unit is not compressed, then we skip to step 5. Otherwise, NTFS would attempt to reserve (but not allocate) the space required to write the decompressed CU back to disk. If insufficient free space exists on the disk, then the application might get an ERROR_DISK_FULL during the read.
- The CU would be decompressed in memory.
- The decompressed byte range would be mapped into cache and returned to the requesting application.
- ...
É claro que, se você estiver com pouca memória, a memória usada pelo processo de descompactação poderá fazer com que outra memória seja paginada e gravada no disco no arquivo de paginação. Felizmente, apenas os fragmentos contendo seções que seus programas realmente lêem serão descompactados; O NTFS não precisa descomprimir a coisa toda se você precisar apenas de alguns bytes.
Se o seu SSD for rápido, você provavelmente não obterá melhorias de velocidade da compactação NTFS. É possível que o tempo que seu processador gasta para descompactar dados, mais o tempo que seu disco gasta lendo os dados compactados, possa ser maior do que o tempo que seu SSD leva para ler os dados descomprimidos. Também depende do tamanho dos arquivos com os quais você trabalha. O tamanho mínimo de um arquivo compactável varia de 8 KB a 64 KB, dependendo do tamanho do cluster. Quaisquer arquivos menores que esse tamanho não serão compactados, mas uma pequena quantidade de registros seria adicionada.
Se você escreve muito em arquivos compactados, pode ver muita variação na velocidade devido ao algoritmo de compressão usado (LZ).
Outras leituras: Como a compactação NTFS afeta o desempenho?