Como ajustar seu SSD no Ubuntu para melhorar o desempenho

Índice:

Como ajustar seu SSD no Ubuntu para melhorar o desempenho
Como ajustar seu SSD no Ubuntu para melhorar o desempenho

Vídeo: Como ajustar seu SSD no Ubuntu para melhorar o desempenho

Vídeo: Como ajustar seu SSD no Ubuntu para melhorar o desempenho
Vídeo: Como RESTAURAR uma FOTO antiga pelo seu CELULAR | RapidTutors - YouTube 2024, Abril
Anonim
Há muitas dicas para ajustar seu SSD no Linux e muitos relatórios sobre o que funciona e o que não funciona. Nós executamos nossos próprios benchmarks com alguns ajustes específicos para mostrar a verdadeira diferença.
Há muitas dicas para ajustar seu SSD no Linux e muitos relatórios sobre o que funciona e o que não funciona. Nós executamos nossos próprios benchmarks com alguns ajustes específicos para mostrar a verdadeira diferença.

Referências

Para avaliar nosso disco, usamos o Phoronix Test Suite. É gratuito e tem um repositório para o Ubuntu, para que você não precise compilar do zero para executar testes rápidos. Nós testamos o nosso sistema logo após uma nova instalação do Ubuntu Natty 64-bit usando os parâmetros padrão para o sistema de arquivos ext4.

Nossas especificações do sistema foram as seguintes:
Nossas especificações do sistema foram as seguintes:
  • AMD Phenom II quad-core a 3,2 GHz
  • Placa-mãe MSI 760GM E51
  • 3,5 GB de RAM
  • AMD Radeon 3000 integrado com 512MB de RAM
  • Ubuntu Natty

E, é claro, o SSD que usamos para testar foi uma unidade OCZ Onyx de 64 GB (US $ 117 na Amazon.com no momento da gravação).

Ajustes proeminentes

Existem algumas mudanças que as pessoas recomendam ao atualizar para um SSD. Depois de filtrar algumas das coisas mais antigas, fizemos uma pequena lista de ajustes que as distribuições do Linux não incluíram como padrões para SSDs. Três deles envolvem a edição de seu arquivo fstab, portanto, faça isso antes de continuar com o seguinte comando:

sudo cp /etc/fstab /etc/fstab.bak

Se algo der errado, você sempre poderá excluir o novo arquivo fstab e substituí-lo por uma cópia do seu backup. Se você não sabe o que é isso ou se quer saber como funciona, dê uma olhada no HTG Explains: O que é o fstab do Linux e como funciona?

Evitando tempos de acesso

Você pode ajudar a aumentar a vida útil do seu SSD reduzindo o quanto o sistema operacional grava no disco. Se você precisa saber quando cada arquivo ou diretório foi acessado pela última vez, você pode adicionar essas duas opções ao seu arquivo / etc / fstab:

noatime,nodiratime

Adicione-os juntamente com as outras opções e certifique-se de que estejam todos separados por vírgulas e sem espaços.

Image
Image

Ativando o TRIM

Você pode ativar o TRIM para ajudar a gerenciar o desempenho do disco a longo prazo. Adicione a seguinte opção ao seu arquivo fstab:

discard

Isso funciona bem para sistemas de arquivos ext4, mesmo em discos rígidos padrão. Você deve ter uma versão do kernel de pelo menos 2.6.33 ou posterior; você está coberto se estiver usando o Maverick ou o Natty ou tiver backports ativados no Lucid. Embora isso não melhore especificamente o benchmarking inicial, ele deve melhorar o desempenho do sistema a longo prazo e, assim, fazer a nossa lista.

Tmpfs

O cache do sistema é armazenado em / tmp. Podemos dizer ao fstab para montá-lo na RAM como um sistema de arquivos temporário, para que seu sistema toque menos no disco rígido. Adicione a seguinte linha ao final do seu arquivo / etc / fstab em uma nova linha:

tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0

Salve seu arquivo fstab para confirmar essas mudanças.

Comutação de agendadores de E / S

Seu sistema não grava todas as alterações no disco imediatamente e várias solicitações são enfileiradas. O planejador de entrada e saída padrão - cfq - lida com isso, mas podemos mudar isso para um que funcione melhor para o nosso hardware.

Primeiro, liste quais opções você tem disponíveis com o seguinte comando, substituindo “X” pela letra do seu drive raiz:

cat /sys/block/sdX/queue/scheduler

Minha instalação está em sda. Você deve ver algumas opções diferentes.

Se você tem prazo, você deve usar isso, pois isso lhe dá um ajuste extra mais adiante. Se não, você deve ser capaz de usar o noop sem problemas. Precisamos dizer ao sistema operacional para usar essas opções depois de cada inicialização, por isso, precisamos editar o arquivo rc.local.
Se você tem prazo, você deve usar isso, pois isso lhe dá um ajuste extra mais adiante. Se não, você deve ser capaz de usar o noop sem problemas. Precisamos dizer ao sistema operacional para usar essas opções depois de cada inicialização, por isso, precisamos editar o arquivo rc.local.

Usaremos o nano, pois estamos confortáveis com a linha de comando, mas você pode usar qualquer outro editor de texto de sua preferência (gedit, vim etc.).

sudo nano /etc/rc.local

Acima da linha "saída 0", adicione essas duas linhas se você estiver usando o prazo:

echo deadline > /sys/block/sdX/queue/scheduler

echo 1 > /sys/block/sdX/queue/iosched/fifo_batch

Se você estiver usando o noop, adicione esta linha:

echo noop > /sys/block/sdX/queue/scheduler

Mais uma vez, substitua "X" pela letra de unidade apropriada para a sua instalação. Olhe tudo para se certificar de que parece bom.

Em seguida, pressione CTRL + O para salvar e, em seguida, pressione CTRL + X para sair.
Em seguida, pressione CTRL + O para salvar e, em seguida, pressione CTRL + X para sair.

Reiniciar

Para que todas essas alterações entrem em vigor, você precisa reiniciar. Depois disso, você deve estar tudo pronto. Se algo der errado e você não conseguir inicializar, poderá desfazer sistematicamente cada uma das etapas acima até poder inicializar novamente. Você pode até usar um LiveCD ou LiveUSB para recuperar se quiser.

Suas alterações no fstab levarão a vida útil da instalação, mesmo com as atualizações, mas a alteração rc.local precisará ser reinstalada após cada atualização (entre as versões).

Resultados de benchmarking

Para realizar os benchmarks, executamos o conjunto de testes de disco. A imagem superior de cada teste é antes de ajustar a configuração do ext4, e a imagem inferior é após os ajustes e uma reinicialização. Você verá uma breve explicação do que o teste mede, além de uma interpretação dos resultados.

Operações de arquivos grandes

Image
Image
Esse teste comprime um arquivo de 2 GB com dados aleatórios e os grava em disco. Os ajustes do SSD aqui mostram uma melhora de aproximadamente 40%.
Esse teste comprime um arquivo de 2 GB com dados aleatórios e os grava em disco. Os ajustes do SSD aqui mostram uma melhora de aproximadamente 40%.
Image
Image
IOzone simula o desempenho do sistema de arquivos, neste caso, escrevendo um arquivo de 8GB. Mais uma vez, um aumento de quase 50%.
IOzone simula o desempenho do sistema de arquivos, neste caso, escrevendo um arquivo de 8GB. Mais uma vez, um aumento de quase 50%.
Image
Image
Aqui, um arquivo de 8GB é lido. Os resultados são quase os mesmos que sem o ajuste do ext4.
Aqui, um arquivo de 8GB é lido. Os resultados são quase os mesmos que sem o ajuste do ext4.
Image
Image
AIO-Stress analisa de forma assíncrona entrada e saída, usando um arquivo de teste de 2GB e um tamanho de registro de 64KB. Aqui, há quase um aumento de 200% no desempenho em comparação ao baunilha ext4!
AIO-Stress analisa de forma assíncrona entrada e saída, usando um arquivo de teste de 2GB e um tamanho de registro de 64KB. Aqui, há quase um aumento de 200% no desempenho em comparação ao baunilha ext4!

Operações de arquivos pequenos

Image
Image
Um banco de dados SQLite é criado e o PTS adiciona 12.500 registros a ele. Os ajustes do SSD diminuíram o desempenho em cerca de 10%.
Um banco de dados SQLite é criado e o PTS adiciona 12.500 registros a ele. Os ajustes do SSD diminuíram o desempenho em cerca de 10%.
Image
Image
O Apache Benchmark testa leituras aleatórias de arquivos pequenos. Houve um ganho de desempenho de cerca de 25% após a otimização do nosso SSD.
O Apache Benchmark testa leituras aleatórias de arquivos pequenos. Houve um ganho de desempenho de cerca de 25% após a otimização do nosso SSD.
Image
Image
O PostMark simula 25.000 transações de arquivos, 500 simultaneamente a qualquer momento, com tamanhos de arquivo entre 5 e 512 KB. Isso simula muito bem os servidores web e de email, e vemos um aumento de 16% no desempenho após os ajustes.
O PostMark simula 25.000 transações de arquivos, 500 simultaneamente a qualquer momento, com tamanhos de arquivo entre 5 e 512 KB. Isso simula muito bem os servidores web e de email, e vemos um aumento de 16% no desempenho após os ajustes.
Image
Image
O FS-Mark examina 1000 arquivos com um tamanho total de 1MB e mede quantos podem ser completamente gravados e lidos em um período pré-determinado de tempo. Nossos ajustes verificam um aumento, novamente, com tamanhos de arquivo menores. Cerca de um aumento de 45% com ajustes ext4.
O FS-Mark examina 1000 arquivos com um tamanho total de 1MB e mede quantos podem ser completamente gravados e lidos em um período pré-determinado de tempo. Nossos ajustes verificam um aumento, novamente, com tamanhos de arquivo menores. Cerca de um aumento de 45% com ajustes ext4.

Acesso ao sistema de arquivos

Image
Image
Os benchmarks do Dbench testam as chamadas do sistema de arquivos pelos clientes, mais ou menos como o Samba faz as coisas. Aqui, o desempenho do vanilla ext4 é reduzido em 75%, um grande retrocesso nas mudanças que fizemos.
Os benchmarks do Dbench testam as chamadas do sistema de arquivos pelos clientes, mais ou menos como o Samba faz as coisas. Aqui, o desempenho do vanilla ext4 é reduzido em 75%, um grande retrocesso nas mudanças que fizemos.
Image
Image
Você pode ver isso à medida que o número de clientes aumenta, a discrepância de desempenho aumenta.
Você pode ver isso à medida que o número de clientes aumenta, a discrepância de desempenho aumenta.
Image
Image
Com 48 clientes, a diferença ficou um pouco entre os dois, mas ainda há uma perda de desempenho muito óbvia pelos nossos ajustes.
Com 48 clientes, a diferença ficou um pouco entre os dois, mas ainda há uma perda de desempenho muito óbvia pelos nossos ajustes.
Image
Image
Com 128 clientes, o desempenho é quase o mesmo. Você pode argumentar que nossos ajustes podem não ser ideais para uso doméstico neste tipo de operação, mas fornecerão desempenho comparável quando o número de clientes for bastante aumentado.
Com 128 clientes, o desempenho é quase o mesmo. Você pode argumentar que nossos ajustes podem não ser ideais para uso doméstico neste tipo de operação, mas fornecerão desempenho comparável quando o número de clientes for bastante aumentado.
Image
Image
Este teste depende da biblioteca de acesso AIO do kernel. Nós temos uma melhora de 20% aqui.
Este teste depende da biblioteca de acesso AIO do kernel. Nós temos uma melhora de 20% aqui.
Image
Image
Aqui, temos uma leitura aleatória multi-thread de 64MB, e há um aumento de 200% no desempenho aqui! Uau!
Aqui, temos uma leitura aleatória multi-thread de 64MB, e há um aumento de 200% no desempenho aqui! Uau!
Image
Image
Ao gravar 64 MB de dados com 32 threads, ainda temos um aumento de 75% no desempenho.
Ao gravar 64 MB de dados com 32 threads, ainda temos um aumento de 75% no desempenho.
Image
Image
O Compile Bench simula o efeito da idade em um sistema de arquivos representado pela manipulação de árvores do kernel (criação, compilação, correção, etc.). Aqui, você pode ver um benefício significativo através da criação inicial do kernel simulado, cerca de 40%.
O Compile Bench simula o efeito da idade em um sistema de arquivos representado pela manipulação de árvores do kernel (criação, compilação, correção, etc.). Aqui, você pode ver um benefício significativo através da criação inicial do kernel simulado, cerca de 40%.
Image
Image
Este benchmark mede simplesmente quanto tempo leva para extrair o kernel do Linux. Não é muito de um aumento no desempenho aqui.
Este benchmark mede simplesmente quanto tempo leva para extrair o kernel do Linux. Não é muito de um aumento no desempenho aqui.

Resumo

Image
Image
Os ajustes que fizemos na configuração ext4 pronta do Ubuntu tiveram um grande impacto. Os maiores ganhos de desempenho foram nos domínios de gravações e leituras multiencadeadas, pequenas leituras de arquivos e grandes leituras e gravações contíguas de arquivos. Na verdade, o único lugar real em que vimos um bom desempenho foi em chamadas simples ao sistema de arquivos, algo que os usuários do Samba devem ficar atentos. No geral, parece ser um aumento bastante sólido no desempenho de itens como hospedagem de páginas da web e assistir / transmitir vídeos grandes.
Os ajustes que fizemos na configuração ext4 pronta do Ubuntu tiveram um grande impacto. Os maiores ganhos de desempenho foram nos domínios de gravações e leituras multiencadeadas, pequenas leituras de arquivos e grandes leituras e gravações contíguas de arquivos. Na verdade, o único lugar real em que vimos um bom desempenho foi em chamadas simples ao sistema de arquivos, algo que os usuários do Samba devem ficar atentos. No geral, parece ser um aumento bastante sólido no desempenho de itens como hospedagem de páginas da web e assistir / transmitir vídeos grandes.

Tenha em mente que isso foi especificamente com o Ubuntu Natty 64-bit. Se o seu sistema ou SSD for diferente, sua milhagem pode variar. No geral, parece que os ajustes do fstab e do IO Scheduler foram muito longe de um melhor desempenho, então provavelmente vale a pena tentar em seu próprio equipamento.

Tem seus próprios benchmarks e quer compartilhar seus resultados? Tem outro ajuste que não sabemos? Soe nos comentários!

Recomendado: