Compreendendo a memória compactada no Mac

Se você notou que o seu Mac parece ter um pouco mais de recuperação em seu desempenho desde que você instalou OS X Mavericks, pode ser por causa dos avanços no gerenciamento de memória e do retorno da compactação de memória.

As informações neste artigo se aplicam a Macs que executam macOS Catalina (10.15) até OS X Mavericks (10.9).

Mudanças em como o Mac gerencia a memória

Com o lançamento de OS X Mavericks, A Apple mudou a forma como o Mac gerenciava a memória. Com a adição da compactação de memória, seu Mac agora pode fazer mais com menos memória enquanto mantém ou aumenta o desempenho. Em versões mais antigas do OS X, o uso de memória foi construído em torno de um sistema de gerenciamento de memória padrão. Os aplicativos solicitaram uma alocação de RAM, o sistema atendeu à solicitação e os aplicativos devolveram a RAM quando não precisaram mais dela.

o sistema operacional cuidou da maior parte do trabalho de controlar a quantidade de RAM disponível e quem a estava usando. O sistema operacional também descobriu o que fazer se a quantidade de RAM necessária não estivesse disponível, o que poderia levar a problemas efeitos no desempenho do Mac à medida que o sistema tentava usar a RAM virtual trocando espaço em um SSD ou disco rígido dirigir.

O que é memória compactada?

A memória compactada não é algo novo ou exclusivo da Apple. Os sistemas de computação vêm usando várias formas de compactação de memória há muito tempo. Se você usou Macs em meados dos anos 80 e início dos anos 90, deve se lembrar de produtos como o RAM Doubler da Connectix, que compactava os dados armazenados na RAM, aumentando efetivamente a quantidade de RAM livre disponível para o Mac.

Os utilitários de memória compactada caíram em desuso à medida que os fabricantes de computadores e desenvolvedores de sistemas operacionais criaram sistemas de gerenciamento de memória melhores. Ao mesmo tempo, os preços da memória diminuíram. O outro fator que fez os sistemas de compressão de memória perderem sua popularidade foi o problema de desempenho. Algoritmos de compressão de memória consumiam uma boa parte do poder de processamento. Embora eles permitam que você faça mais com menos RAM física, eles tendem a paralisar o computador quando precisam compactar ou descompactar a memória.

A compressão de memória está voltando, principalmente por causa do advento de processadores de múltiplos núcleos baratos. Quando as rotinas usadas para compactação de memória podem ser descarregadas para um dos vários núcleos do processador, é improvável que você note qualquer impacto no desempenho quando a memória precisar ser compactada ou descompactada. Torna-se apenas uma tarefa em segundo plano.

Como funciona a memória compactada em um Mac

A compactação de memória no Mac aumenta o sistema operacional e o desempenho do aplicativo, permitindo um melhor gerenciamento dos recursos de RAM. Também evita ou reduz significativamente o uso de memória virtual, que é a paginação de dados de e para o drive do Mac.

Com o OS X Mavericks e posterior, o sistema operacional procura por memória inativa, que é a memória que não está atualmente em uso ativo, mas ainda contém dados que podem ser usados ​​por um aplicativo. Essa memória inativa compacta os dados que está mantendo, de modo que os dados ocupem menos memória. A memória inativa pode ser um aplicativo que está em segundo plano e não está sendo usado. Um exemplo é um processador de texto que está aberto, mas inativo porque você está fazendo uma pausa e lendo sobre memória compactada. Enquanto você está ocupado navegando na web, o sistema operacional está comprimindo a memória do processador de texto, liberando RAM para uso por outros aplicativos.

Quando ocorre a compactação de memória?

O processo de compressão não está ativo o tempo todo. Em vez disso, o sistema operacional verifica quanto espaço livre está disponível em RAM. Se houver uma quantidade significativa de memória livre, nenhuma compactação ocorrerá, mesmo se houver muita memória inativa.

Conforme a memória livre é usada, o sistema operacional começa a procurar por memória inativa para compactar. A compactação começa com os dados mais antigos usados ​​armazenados na memória e avança para garantir que haja memória livre adequada disponível. Quando os dados em uma área compactada da RAM são necessários, o sistema operacional descompacta os dados instantaneamente e os disponibiliza para o aplicativo que os solicita. Porque as rotinas de compressão e descompressão são executadas simultaneamente em um dos núcleos de processador, é improvável que você experimente qualquer perda de desempenho durante a compactação ou descompressão.

Limites de compactação de memória em Macs

Existem limites para o que a compressão pode alcançar. Em algum ponto, se você continuar a iniciar aplicativos ou usar aplicativos que consomem muita memória, o seu Mac não terá espaço livre suficiente para funcionar de maneira ideal. Assim como no passado, o sistema operacional começa a trocar dados de RAM inativos para a unidade do seu Mac. No entanto, com a compactação de memória, é provável que isso seja uma ocorrência rara para a maioria dos usuários.

Mesmo que o sistema operacional acabe trocando a memória da sua unidade, o sistema de gerenciamento de memória do OS X tira proveito do memória inativa compactada gravando os dados compactados em segmentos de unidade de comprimento total para aumentar o desempenho e reduzir Vista SSDs.

Monitor de atividade e compressão de memória

A Apple forneceu uma ferramenta bacana, o Monitor de Atividade, que pode monitorar como o Mac usa a RAM. Embora o Activity Monitor ainda esteja disponível, seus recursos de monitoramento de memória passaram por um mudança dramática que imita a maneira como um Mac é mais capaz de fazer uso de RAM por meio do uso de arquivos compactados memória.

Você pode monitorar a quantidade de memória que o Mac está compactando usando a guia Memória no Monitor de Atividade. A memória compactada é exibida no gráfico Memory Pressure, que indica o quão ativamente o sistema operacional está envolvido na compactação dos dados de RAM. O gráfico muda de verde (pouca pressão) para amarelo (pressão significativa) e, finalmente, para vermelho, quando não há espaço RAM suficiente e a memória precisa ser trocada para a unidade.

Monitor de atividade mostrando gráfico de pressão de memória em um Mac