Por que eu desabilitei o arquivo de troca no Mac OS X?

51

Me deparei com um tópico sobre a instalação de uma unidade SSD no MacBook Pro.
Alguém nos comentários também recomendou desativar o arquivo de troca, mas não disse o porquê:

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist
sudo rm /private/var/vm/swapfile*

Eu me pergunto por que alguém iria querer desativar o arquivo de troca no Mac OS X.
Isso aumenta o desempenho? Estabilidade?
Alguma desvantagem?

Finalmente, faz algum sentido desativar o arquivo de permuta quando não estiver usando o SSD?

Dan
fonte
11
Muitas vezes, é desativado pelos menos informados, porque eles ouviram em algum blog que o desempenho disparou. Os SSDs também fornecem uma boa mesa de teste porque são inerentemente rápidos. Não faça isso. Isso diminuirá a estabilidade e, com o tempo, levará a efeitos catastróficos. Até hoje, não vejo nenhum dado real (válido e confiável) mostrando um aumento de desempenho. E é um componente crítico de um sistema operacional, se você tem 2 GB ou RAM ou 120.
2
Quais efeitos catastróficos? Apenas curioso ... parece estar tornando minha máquina (MacBook Pro de 4 GB) uma tonelada mais rápida. Por exemplo, quando abro novas janelas de terminal, não há mais nenhum bloqueio ... é instantâneo o momento em que levou alguns segundos antes. E consegui abrir o dobro de aplicativos que normalmente usaria e nada de ruim aconteceu.
precisa saber é o seguinte
4
orange80: A causa usual de janelas de terminal lentas é o processo de login procurando o login anterior, que pode ser corrigido pelo hushlogin: apple.stackexchange.com/a/54167/22570 - você reinicializou após alterar as configurações de troca, talvez ? Não há razão para que a velocidade da janela do terminal melhore com a remoção do swap.
Ken
Entendo que, com um SSD de pequena capacidade, talvez você queira liberar espaço. Mas pelo lado do desempenho, os SSDs são muito mais rápidos que os HDs, então não vejo como a troca desabilitada em um sistema operacional baseado em SSD realmente melhoraria o desempenho. Alguma experiência nisso? Obrigado.
11
No Superusuário, com uma resposta aceita: Desativar dynamic_pager do Mac? (2012-04-27)
Graham Perrin

Respostas:

39

pergunto por que alguém iria querer desativar o arquivo de troca no Mac OS X. Isso aumenta o desempenho? Estabilidade? Alguma desvantagem?

Suponho que as pessoas fariam isso por uma unidade SSD porque essas unidades não têm a mesma vida útil que as unidades de disco giratório magnético padrão. Há um número mais limitado de ciclos de gravação, portanto, presumivelmente, usá-los com um arquivo de troca usaria esses ciclos mais rapidamente.

Finalmente, faz algum sentido desativar o arquivo de permuta quando não estiver usando o SSD?

Se você tem muita RAM, isso pode acelerar o desempenho, mas geralmente não é uma boa ideia . Se você correr contra o teto da memória, as coisas ficarão esquisitas.

Além disso, a memória com fio não é liberada quando se torna inválida, é liberada somente quando um evento de saída de página é acionado, o que não ocorrerá se a Memória Virtual estiver desativada. Portanto, não demorará muito para que toda a sua memória seja absorvida, mesmo que não seja mais usada.

ghoppe
fonte
4
O sistema de memória virtual do Mac é muito preguiçoso, pois só cria os arquivos de troca físicos quando é hora de trocar a memória real. Qualquer velocidade que você possa ver ao não precisar atrasar as coisas para acomodar uma gravação para troca seria quase certamente compensada pelos ganhos de velocidade anteriores de ter a troca disponível em primeiro lugar. A troca torna os macs mais rápidos. O restante da resposta está no local - muito bem feito!
bmike
2
@geotavros O sistema de memória virtual no Mac OS X não funciona da mesma maneira que o Windows. Com 4 GB de memória, confie em mim, seu Mac funcionará mais rápido com a Memória virtual ativada. Desabilitar a VM só causará dores de cabeça e instabilidade do sistema.
ghoppe
3
O FYI, um SSD moderno com nível de gravação e capacidade decente (128 GB), gravado de forma contínua, terá um limite de ciclo de gravação medido em séculos. Esse era um medo razoável em 2000 com SSDs pequenos e primitivos, mas não mais.
Ken
3
Para um MacBookPro5,2 com 8 GB de memória, a melhoria de desempenho é dramática. Para o Snow Leopard ou Lion em um VirtualBoxVM, a melhoria é espantosa. Nos três casos, o sistema operacional parece usar a memória de uma maneira que minimiza o risco de atingir o 'limite' (onde todas as coisas efetivamente param), mas esse risco permanece, portanto, é sensato observar o uso no Activity Monitor.
Graham Perrin
2
Para obter informações, a VM (ou memória virtual) não deve ser confundida com o arquivo de troca. Windows, OS X, * BSD, Linux, muitos Unix estão todos usando memória virtual. Geralmente, a arquitetura desses sistemas operacionais fornece uma VM por processo, o processo aloca memória nessa área e o sistema operacional cuida de colocar essa memória alocada na RAM física ou trocar conforme o sistema operacional o julgar necessário. Ter ou não trocar pode mudar de uma maneira ou de outra para vários critérios (velocidade, responsividade etc.), isso depende da carga de trabalho de cada um de nós. Como dizem os ingleses: sua milhagem pode variar! E muito neste caso.
Huygens
27

A razão pela qual eles desabilitaram o arquivo de troca é provavelmente uma paranóia sobre SSDs com um número máximo de gravações por bloco. Os arquivos de troca podem ser gravados com frequência, possivelmente causando fragmentação do disco (bem como fragmentação do sistema de arquivos) e, eventualmente, possivelmente causando falha no disco mais cedo.

Dito isto, esse é definitivamente um caso de otimização prematura. É quase sempre uma HORRÍVEL , HORRÍVEL idéia para desativar o arquivo de swap. O arquivo de troca existe para quando os programas em execução consomem mais memória do que você instalou fisicamente. Se você desabilitá-lo, poderá não conseguir executar tantos programas ao mesmo tempo (e o limite é muito menor do que o esperado) ou poderá ter problemas (como congelar e ter que reiniciar a máquina) ao você fica sem memória.

O último que experimentei (com o arquivo de troca ativado) ao ficar sem espaço em disco. Eu tinha uma unidade de 120 GB com ~ 3 GB de graça. Enquanto jogava Civilization IV (um jogo grande em tela cheia), o sistema ficou sem espaço no disco rígido (~ 50 megas livres) e apresentou a janela "kill apps now". Isso estava escondido atrás do jogo em tela cheia, então o sistema travou. Se eu não tivesse conseguido conectar-me de outro Mac para matar vários aplicativos remotamente, teria que pressionar o botão liga / desliga.

CajunLuke
fonte
6
Eu gostaria de repetir que má ideia é essa. A troca é usada mesmo se você tiver 16 GB de RAM. Não tanto, mas um pouquinho já está escrito em swap. Sempre. É uma salvaguarda. E embora o sistema operacional possa funcionar sem ele, você não pode ter certeza de como os aplicativos de terceiros se comportam. HD é gravado em. É um fato se a vida. E não, não haverá aumento de desempenho no "mundo real". Isso é um placebo.
4
@cksum Em alguns cenários específicos de servidor, o sysadmins desabilita o arquivo de troca porque torna essa configuração específica mais rápida, mas não o faz sem testes para garantir que ambos (a) não fiquem sem memória e (b) ) na verdade é mais rápido. Mas esse é um servidor gerenciado por profissionais: nunca é necessário em uma máquina consumidora.
CajunLuke
@cksum Eu poderia concordar com sua primeira frase, você está correto com a segunda, terceira e quarta, mas o resto é lixo. Um sistema operacional não troca por "proteção", um sistema operacional está trocando para disponibilizar mais memória ao processo ativo que exigiria ou para acelerar a E / S armazenando dados em buffer, para que a memória não ativa possa ser liberada na RAM. Ao desenvolver um aplicativo, você solicita memória ao sistema operacional, essa memória faz parte do uso da memória virtual, como desenvolvedor ou aplicativo que você não sabe se o sistema operacional coloca essa memória ou parte dela na RAM física ou na troca. (a ser continuado)
Huygens
Portanto, se um aplicativo de terceiros solicitar mais memória do que o disponível, o sistema operacional apresentará um erro. Isso é independente de ter swap ou não. Ter swap colocará apenas o limite mais alto, é isso. Quanto ao desempenho, se você tiver 2 usuários conectados, se o usuário ativo usar um editor de vídeo com arquivos enormes, o sistema operacional poderá começar a colocar as páginas de memória do usuário inativo na troca para acelerar as tarefas executadas pelo usuário ativo. Você obtém melhor desempenho em termos de velocidade neste caso. No entanto, mudar para o outro usuário será mais lento, o sistema operacional precisará ler novamente a troca. Este não é um placebo!
Huygens
11
Uma vez (no linux), esqueci de configurar uma partição de swap ao configurar. Quando eu estava pendurado, pensei que era um bug do kernel - acabou sendo a falta de memória de troca enquanto jogava minecraft. use swap.
Wyatt8740
12

Você tem duas ótimas respostas que explicam por que essa é uma má idéia em quase todos os casos em que o sistema pode gravar em um dispositivo de armazenamento.

A razão pela qual você pode desativar a troca é para que o sistema possa ser executado em mídia somente leitura, como CD, DVD, imagem de rede bloqueada usando o NetBoot ou um fob USB somente leitura, como o novo instalador ou fob de recuperação da Lion, que é fornecido com alguns macs que não possuem recursos ópticos unidades.

Ter memória virtual significa que o sistema pode executar substancialmente mais rápido e usar menos RAM quando muitos programas usam o mesmo código de biblioteca comum. Cada programa pensa que possui uma cópia privada de todo o código necessário, mas quando existe memória virtual, o sistema possui uma boa maneira de mapear a mesma RAM física para diferentes programas.

A desativação da troca impede que o mac use uma pequena parte da sua unidade como cache para alguma memória calculada, mas o programa não foi inteligente o suficiente para gravar esses resultados em um cache adequado.

Se você tem um backup e tempo para experimentar, por que não desativá-lo e ver como a sua experiência muda.

Eu manteria minha troca mesmo que soubesse com certeza que tinha que pagar por uma nova unidade anualmente. A velocidade que essa troca me dá é ENORME. Nem sempre é assim e, às vezes, quando o sistema está debulhando ou paginando - você pode ter o oposto. Muitas pessoas optam por executar sem troca para obter um erro de alocação de memória em vez de deixar o mac iniciar a paginação, pois isso pode desacelerar a máquina quando as coisas não estão funcionando normalmente.

O seu caso com um SSD pode ser diferente, informe-nos se você tentar.

bmike
fonte
2
Acho o oposto, uma enorme aceleração quando dynamic_pager está desativado . A captura de tela atualmente em apple.stackexchange.com/a/60661/8546 mostra o tamanho da memória virtual e as entradas de página medidas enquanto o daemon está desativado (enquanto os arquivos de troca não são usados).
Graham Perrin
O que exatamente está sendo medido para determinar uma aceleração? (Ou você está vendo a ausência de lags ou atrasos na UI ou qualquer outra coisa que não é facilmente quantificável ou mensurável?)
bmike
Sem medir: com Lion, a maioria das coisas parecia visivelmente mais rápida - o suficiente para eu usar a palavra enorme . Mais recentemente: 10.8 em um VirtualBoxVM, por exemplo, para efetuar login e retomar o Activity Monitor leva dezesseis segundos com dynamic_pager, doze segundos sem. Para uma comparação mais ampla e mais medida, podemos usar o Phoronix Test Suite ou o Geekbench .
Graham Perrin
9

Eu serei o mais pessimista aqui: desabilitei a troca no meu macbook pro de unibody no final de 2008 e melhorou notavelmente o desempenho: Menos espera, troca mais rápida entre aplicativos.

Lembre-se, eu fico de olho na minha memória livre e tenho 6 GB instalados. Nas poucas vezes em que atingi o limite de memória, o sistema travou :-D

No meu novo MacBook Air, eu nem sonharia em desativar a troca, já é rápido com ele ativado e só tem 4 GB para começar.

Outro bom motivo para as pessoas desabilitarem a troca em um SSD é porque elas recebem SSDs minúsculas e precisam de todo o espaço possível. De qualquer forma, não faça isso.

w00t
fonte
Incrível ter experiência real onde isso funcionou. Qual foi o compromisso de RAM na máquina quando a troca foi desativada? O que aconteceu quando você abriu mais aplicativos do que caberia na RAM? Quanta RAM você tinha e quais aplicativos rodariam nesse espaço confortavelmente sem erros?
bmike
11
@ bmike, não tenho certeza, o sistema trava :-D, 6 GB e todos os que eu uso :). Abertura ou XCode são devoradores de memória real e que por vezes pode tombar o sistema, mas Skype, Mail, Adium, Safari, Chrome, iTunes e OmniFocus todos se encaixam muito bem ...
w00t
6

Minha experiência é semelhante à do w00t. Desativei o arquivo de troca no SL e no Lion porque o aumento de desempenho funciona para mim. O uso com fio fica fora de controle após uma semana ou mais, mas uma simples reinicialização corrige isso. Eu não tenho um SSD, mas um disco lento de 5400 rpm. A expectativa de vida útil do SSD não é tão ruim quanto as pessoas tentam fazê-lo. Se você está fazendo isso simplesmente porque tem medo de desgastar seu SSD, consulte: http://www.anandtech.com/show/4159/ocz-vertex-3-pro-preview-the-first-sf2500- ssd / 2 e http://communities.intel.com/thread/21717?tstart=0 A Intel classifica suas unidades por mais de 20 GB por dia, todos os dias, por até 5 anos em uma unidade de 80 gb. Unidades de tamanho maior duram ainda mais. O usuário médio nem usa 10 GB / dia.

Monitoro meu uso de memória de 4 GB com os menus do iStat e uso um script do Automator com o comando bash "purge" (requer a instalação do Xcode) para limpar a memória inativa e abrir mais memória livre com freqüência. Nas poucas vezes em que aplicativos com vazamento de memória usam toda a RAM, tive que fazer uma reinicialização total. As raras ocasiões em que isso aconteceu e a velocidade em geral fazem valer a pena manter o arquivo de troca desativado para mim. Percebo que não posso ter tantos aplicativos abertos ao mesmo tempo por causa disso, conforme declarado por outros, mas sou capaz de trabalhar com isso.

Shlepto
fonte
O escopo da memória tem uma opção para limpar automaticamente. (se dynamic_pager está habilitado, eu não permitir expurgos.)
Graham Perrin
5

Apenas jogando meus 2 centavos para aqueles que desejam desativar a troca POR CAUSA de pequenos SSDs: a imagem do sono usa muito mais espaço em disco.

E, para aqueles preocupados com a vida limitada do SSD (principalmente aqueles com MBA e chips SSD com fio que NÃO PODEM ser substituídos), se o computador dorme muitas vezes por dia, a reescrita da imagem do sono pode ser uma preocupação. Meu laptop dorme meia dúzia de vezes / dia com facilidade. Isso grava 48 GB de dados no meu SSD diariamente.

A solução em cada caso é desativar a hibernação e excluir o arquivo sleepimage que é tão grande quanto a RAM instalada (8 GB no meu caso).

O risco de desvantagem: se a bateria acabar enquanto o laptop estiver em suspensão, seu estado atual será perdido. Isso será equivalente a uma reinicialização forçada. Nenhum dano físico ao laptop, apenas uma perda de produtividade. Se você desativar a hibernação, deixe a bateria fraca e não poderá carregar, basta ter o código à mão para ativar a hibernação!

Para desativar a hibernação, no Terminal, o comando é o seguinte:

 sudo pmset -a hibernatemode 0

Para habilitar a hibernação, o comando é o seguinte:

 sudo pmset -a hibernatemode 3

Para excluir a última imagem inativa para liberar espaço no SSD / HDD (só faz sentido se você desativar a hibernação, caso contrário, uma nova ocupará esse espaço na próxima vez que o computador dormir):

 sudo rm -rf /var/vm/sleepimage

Fonte: man pmset

user38390
fonte
3

Desativando troca faz aumentar o desempenho. Por exemplo, eu uso regularmente o Aperture e, quando a troca aumenta o desempenho, piora e, quando ultrapassa 1Gb, tenho que reiniciar o SO para limpá-lo e restaurar o desempenho. Nota: a máquina possui 6 GB de RAM e NÃO está ocupada, cerca de 3 GB são gratuitos, mas a troca 1G diminui significativamente o desempenho.

Konstantin
fonte
3

Estive desativando o swap em máquinas por muitos anos, tanto no OS X quanto em outras variantes do UNIX.

Uso uma ferramenta para me alertar quando a memória está acabando e nunca me preocupo com o travamento do sistema.

Meu iMac tem 12 GB e, com a troca desativada, quase sempre tenho 4 GB gratuitos, mesmo com várias ferramentas de desenvolvimento, aplicativos, navegadores etc. abertos

opensourceame
fonte
5
Que ferramenta de memória você está usando?
Dmitriy
1

O padrão de repetição aqui é o seguinte:

Aqueles que desabilitaram o arquivo de troca tiveram um desempenho aprimorado (com RAM física suficiente)

Aqueles que NÃO desativaram o espaço de troca estão certos de que não funcionará, e algo terrível acontecerá, e estão avisando ardentemente que você não o faça.

Isso se deve simplesmente a duas coisas:

  1. Ideias desatualizadas sobre a escassez e o alto custo da RAM física que não são mais válidos
  2. Um mecanismo de troca realmente ruim no MacOS, que causa o uso de arquivos de troca quando há RAM física suficiente.
Rico
fonte
11
Se o espaço de troca fosse usado SOMENTE quando necessário, seria ótimo. No entanto, esse não é o caso. Eu corro máquinas virtuais de 2 e 4 GB no meu MacOS. Se eu tenho 1,6 GB de RAM livre, devo poder executar uma máquina virtual de 1 GB (ou outro programa), mas não posso porque o sistema operacional começa a paginá-la. Como resultado, só posso usar 85-90% da minha RAM. Se eu quiser acessar TODA a minha RAM, preciso desativar a paginação. Eu faço isso em todas as minhas máquinas Windows e gostaria de fazer o mesmo no meu MacOS. Se um programa ficar sem memória RAM, ele falhará. É isso que eu quero que aconteça. Eu não quero outros aplicativos em execução
3
YMMV. Não desabilito mais a troca porque não a encontrei para ajudar no desempenho de máquinas modernas carregadas por RAM. Eu costumava no passado, pois ajudava nos velhos tempos ruins. Hoje em dia, não apenas não vejo nenhuma alteração no desempenho ao desativar a troca, como vejo uma instabilidade de aplicativo muito maior.
Brian Knoblauch
11
A coisa indesejável que vai acontecer é que um ser humano vai esquecer que eles não podem lançar outro programa e com o tempo, a máquina irá falhar devido a um erro de pouca memória. Se isso é terrível, bem-humorado, educacional depende do tempo, da frequência de backup e da tolerância a atrasos.
bmike
1

Apenas uma experiência pessoal.

Memory Amount    |
 4 GB            | Don't disable it, Mountain Lion itself boots with about 1 GB.
 8 GB            | Do if you don't run apps that requires more than 1 GB of memory, in short, virtualization software, Photoshop, and stuff.
16 GB or more    | Do it! Even Xcode or Final Cut won't use more than 4 GB of memory, at least as I've seen. Just don't run too many virtual machines though.

Uma observação rápida: se o seu Mac usa gráficos integrados, sua memória é compartilhada com a memória principal com o kernel_task. Assim, você terá que subtrair esse valor do seu total utilizável.

Usuários de SSDs, é gratificante ter mais espaço, mas é importante saber que a memória virtual prospera nos SSDs; você pode obter muito ganho de desempenho com isso. Dói o SSD? Sim, mas você substituirá o seu Mac por muito tempo antes de perceber.

Shane Hsu
fonte
11
Desativei pessoalmente a memória virtual no meu Retina MacBook Pro com apenas 8 GB de memória. Aqui está a matemática, o sistema usa cerca de 2 GB de memória contando gráficos integrados. Então são 6 GB para mim. Eu faço o Xcode para o trabalho, consome no máximo 2 GB de memória. Então, eu tenho muito o que poupar.
Shane Hsu 30/01
1

Sumário executivo

Uma área de troca (chamada partição de troca, arquivo de troca ou arquivo de paginação) é apenas um mecanismo para aumentar a memória física endereçável pelo sistema operacional.

Se você tem pouca RAM física disponível e na máquina de hoje, eu diria se você tem 4 GB ou menos de RAM. Então você provavelmente deve ter uma troca. Mas isso depende da sua carga de trabalho e de como você usa sua máquina.

Se você tiver mais de 4 GB de RAM, há uma boa chance de que seu sistema nunca use a troca. Portanto, se a troca for ativada ou não, isso não mudará muito.
Embora isso dependa de outros fatores, quanto mais tempo sua máquina estiver em execução, maior será a probabilidade de o sistema operacional trocar uma pequena parte da RAM não utilizada da memória RAM pelo evento de troca, embora ainda haja muito espaço aparentemente. No entanto, geralmente o sistema usa a RAM "livre" para buffers de arquivo e outras coisas, e alguma carga de trabalho pode fazer com que o buffer do arquivo use toda a RAM disponível.

Informações básicas

De qualquer forma, o que aconteceria se você desabilitasse a troca e sua memória fosse completamente usada? Bem, na próxima vez que um aplicativo solicitar mais memória (como em um malloc ou realloc), ele receberá um erro! Se estiver codificado corretamente, o aplicativo irá detectá-lo, mas lidar com esse erro e encerrar o programa normalmente ainda pode ser um desafio! No entanto, muitos desenvolvedores não testam a alocação de memória bem-sucedida e, freqüentemente, o aplicativo falha assim que essa memória não alocada será usada. Portanto, há uma forte chance de o aplicativo travar e, na verdade, muitos aplicativos travarem porque você tem mais de um aplicativo em execução ao mesmo tempo. Felizmente, o próprio kernel deve estar imune, mas na minha experiência nem sempre foi o caso.

Se você trocar, você terá o mesmo comportamento , mas como o limite é maior, é provável que você não atinja esse limite.

Tenho pessoalmente 2 máquinas com 8 e 16 GB de RAM. Meu uso pessoal dessa máquina nunca deve me aproximar de usar toda essa RAM (hoje! Talvez daqui a alguns anos isso possa ser diferente). A única razão pela qual atingi os limites físicos da RAM é que um processo ficou desonesto e está consumindo toda a RAM. Não ter trocas é um alívio, o kernel acabará prontamente com o processo invasor assim que atingir o limite de RAM. Se você trocar, você terá uma experiência dolorosa (talvez não no SSD ...), pois seu sistema trocará, trocará e trocará e, às vezes, ficará totalmente sem resposta até que, esperançosamente, seu kernel mate o culpado!

Aconselha

Você não deve se assustar com as pessoas dizendo que algo terrivelmente errado pode acontecer se você remover o swap. Se você fizer isso, seu espaço de endereço físico será reduzido, como se você passasse de 4 GB de RAM para 2 GB. Você faria uma coisa dessas? Então você não deve remover a troca. Você pode, no entanto, decidir limitá-lo, e isso seria sensato .

Se alguém achar que sua carga de trabalho o levará a usar perto ou mais do que a RAM física disponível, ou se precisar de muita E / S (leitura / gravação em discos), a troca deverá ser mantida.

Quando a troca deve ser mantida, o usuário deve tentar definir limites para a quantidade de memória que um processo pode usar. Em um sistema Linux, pode-se usar limites de memória do cgroups para evitar que algum processo fique fora de controle. Não sei o equivalente no OS X, mas esse deve ser o caminho.

No entanto, se alguém tiver mais do que suficiente memória disponível para sua carga de trabalho, ele poderá desativar com segurança o swap ou mantê-lo. Isso não muda muito, mesmo em termos de desempenho, porque se o sistema não usar a troca, você não será atingido por uma queda no desempenho (especialmente visível em um disco rígido rotatório antigo, menos no SSD).

Usar o mesmo truque acima para tentar definir limites de memória por processo ou grupo de processos também é beneficiário no caso de mais de RAM disponível disponível.

Meu próprio exemplo

Eu tenho um PC antigo com 1 GB de RAM, aí tenho uma grande troca: 4 GB para que eu possa executar o Firefox e outros aplicativos nele. Eu costumo usar o mínimo de aplicativos (ou guias no Firefox) possível para ter uma experiência correta do usuário.

Eu tenho um pequeno servidor com 8 GB de RAM. Lá eu sei exatamente minha carga de trabalho e não quero que meu servidor fique lento porque um processo ficou desonesto e consome toda a memória. Lá, eu não tenho nenhum limite de troca e memória de grupo de imposição de barreira, para que aplicativos ou serviços possam travar, mas não o kernel. Btw, esta é uma máquina Linux.

Então, eu tenho meu Mac com 16 GB de RAM. Eu não sou o único usuário e não nos importamos em esperar ao mudar de usuário. Lá nós trocamos, é difícil para mim planejar a carga de trabalho de outros usuários deste computador. Mesmo se eu fosse o único eu usaria swap. Costumo executar várias VMs e usar aplicativos que consomem memória, mas não todos ao mesmo tempo, por isso não me importaria em trocar o SO em um aplicativo não utilizado para que eu possa obter uma E / S de disco mais rápida ou iniciar outra VM. Até agora, eu não vi essa máquina trocar!

Huygens
fonte
0

Acabei de desativar o arquivo de permuta no meu Macbook air de 2011 (4 GB de RAM, 128 GB de SSD) porque estava cansado do arquivo de permuta devorando lentamente todo o espaço restante em HD e tendo que reiniciar. Dessa forma, a ideia é que eu execute apenas menos programas.

Vou ver se isso realmente funciona, ou se terei que reiniciar de qualquer maneira para limpar a memória "Wired", mas por enquanto parece estar funcionando bem. Na única vez em que a memória ficou realmente cheia, o computador ficou mais lento quando o SSD ficou sem memória - mas se recuperou muito mais rápido assim que eu saí dos aplicativos. (E consegui encerrar os aplicativos, o que geralmente não acontece quando o SSD é preenchido).

Vou ver como vai a estabilidade, mas até agora sou um campista feliz. Também me obriga a executar menos aplicativos (e guias do Chrome) por vez, o que é bom para o foco da tarefa.

Josh Penman
fonte
0

O principal motivo para desativar o arquivo de troca não é a velocidade - é o espaço em disco.

Se um usuário é executado rotineiramente dentro de 5 GB de uma unidade completa, a desativação da troca interromperá o incômodo constante de ficar sem espaço; Rotineiramente, acabo com um arquivo de troca de 4 GB ou mais da navegação de rotina.

A melhoria da velocidade é impressionante em máquinas mais antigas; não é tão impressionante em máquinas modernas equipadas com SSD. (No OSX 10.0 em um iMac, o uso de memória virtual reduzia pela metade a velocidade de muitas operações, incluindo a cópia de arquivos entre unidades).

aramis
fonte
Isso soa mais como consertar a buzina porque os freios não funcionam. Se a unidade estiver muito cheia, retire alguns dados dela.
Tetsujin
@Tetsujin O maior arquivo único nessa unidade foi o arquivo de troca.
Aramis
meu argumento ainda permanece. Menos dados, unidade maior ou mais RAM e você não precisaria.
Tetsujin 02/03