O Arch Wiki dizque defaults,discard
pode ser usado no fstab
arquivo para uma partição swap. No entanto, não está claro sobre um arquivo de troca, nem éa página de manual.
Se o arquivo de troca residir em um sistema de arquivos montado com a discard
opção (e obviamente em um SSD), ele deve ser usado discard
sozinho? E se o sistema de arquivos pai fornão discard
'está?
A intuição diz “não”, mas não consegui encontrar nada a respeito e achei que valia a pena discutir.
Responder1
Eu diria que não.
1: O espaço de troca não usa o mesmo conceito deespaço livrecomo sistema de arquivos
2: o que importa é que você sempre mantenha pelo menos 25% de espaço livre no seu SSD (esse valor me foi passado pelo representante da Sandisk por telefone), para permitir um bom trabalho de nivelamento de desgaste.
=> contanto que o disco tenha clusters sobressalentes para trabalhar e executar WL, realmente não importa se 5% do seu disco nunca for cortado ou reescrito continuamente: mesmo quando VOCÊ reescreve os mesmos setores lógicos ou físicos , WL usará clusters diferentes de qualquer maneira, quando você escrever blocos grandes o suficiente.
A questão permanece sem resposta se você estiver usando um disco inteiro para troca. Um disco inteiro usado para troca pode sofrer envelhecimento prematuro, se nunca for cortado.
A outra questão é: o driver de troca suporta descarte? ext3/ext4 faz.
Talvez, se o seu swap ocupar uma% significativa do disco, se você puder, você poderá descartar/cortar o espaço de swap durante o desligamento: se puder, depois de matar todos os serviços, faça o swapoff e encontre uma maneira de descartar o swapspace (já que Não sou um especialista e, para não deixar a pergunta sem resposta, proporia mkfs.ext3, fstrim, mkswap novamente - provavelmente existem outras soluções melhores.
Responder2
Algumas das dúvidas/sugestões deixadas pela outra resposta podem ser respondidas lendo a documentação abaixo.
Não acredito discard
que seja recomendado em sistemas de arquivos. Recomenda-se executar fstrim
periodicamente. Você pode encontrar um cron job para isso.
Os desenvolvedores do kernel não estão particularmente satisfeitos com o desempenho das operações de descarte, mesmo recentemente. Varia muito entre dispositivos. E você deveria fazer os descartes periódicosde qualquer forma, porque os dispositivos podem interromper operações de descarte se estiverem muito ocupados.
Como diz a outra resposta, seu sistema de arquivos é muito maior que seu espaço de troca; portanto, a menos que você prove o contrário, é melhor não adicionar a opção discard
. E discard=once
é inteligente, mas ainda é provável que desacelere a inicialização (se o espaço de troca tiver sido usado). Portanto, não acho que valha a pena ativá-lo.
-d, --discard[=política]
Habilite descartes de troca, se o dispositivo de suporte de troca suportar a operação de descarte ou corte. Isto pode melhorar o desempenho em alguns dispositivos de estado sólido, masmuitas vezes isso não acontece. A opção permite selecionar entre duas políticas de descarte de swap disponíveis: --discard=once para realizar uma operação de descarte único para toda a área de swap no swapon; ou --discard=pages para descartar de forma assíncrona as páginas de troca liberadas antes que estejam disponíveis para reutilização. Se nenhuma política for selecionada, o comportamento padrão será habilitar ambos os tipos de descarte. As opções de montagem /etc/fstab descartar, descartar=uma vez ou descartar=páginas também podem ser usadas para ativar sinalizadores de descarte.