Ajustando o desempenho de discos rígidos

Quando percebemos que nossos HDs estão lentos além do esperado em uma cópia de vários arquivos ou restauração de um backup, procuramos saber o porque de sua baixa performance. No Linux, a principal ferramenta para isso é o hdparm. Neste artigo mostro como podemos fazer para ganhar velocidade em nosso disco.

[ Hits: 29.879 ]

Por: Cleber J Santos em 11/03/2009


Acelerando o HD - Parte III



Teste de desempenho

Agora que já vimos os recursos que essa maravilhosa ferramenta nos fornece, vamos ver também que com o hdparm temos uma ferramenta de fundamental importância, que é o teste de desempenho. Mas é sempre bom que você utilize ela antes de fazer qualquer alteração nos parâmetros do HD e, assim que fizer alterações, voltar a realizar os testes para comparar e verificar se houve melhora no desempenho ou não.

Vamos para um exemplo de como se faz isso:

# hdparm -Tt /dev/hda
/dev/hda:
 Timing cached reads:  1200 MB in  2.00 seconds = 598.89 MB/sec
 Timing buffered disk reads: 82 MB in  3.06 seconds = 26.77 MB/sec

Observe que com o comando acima foram feitos dois testes, onde o primeiro é o de tempo de leitura com cache (cached reads), e o segundo, de tempo de leitura de disco com buffer (buffered disk reads).

Para ter ainda mais resultado e informações de como a ferramenta ajuda a melhorar o desempenho, é legal aplicar esses testes como o mínimo de recursos sendo utilizados, de preferência, utilize o modo monousuário:

# init 1

Para se ter uma idéia do quanto podemos ganhar com o desempenho, efetuando um simples teste podemos observar por exemplo o crescimento na velocidade de gravação com o uso do hdparm de +0,43% para mais com o cache e de +5580% para mais com buffer, o ideal é que você faça esses testes antes e depois de modificar qualquer parâmetro, para ter certeza de que não está fazendo uma configuração que vai prejudicar o desempenho do HD.

Com isso chegamos ao final deste artigo, espero que este possa ajudá-lo a obter um ótimo desempenho em seus discos, você ainda poderia testar e aplicar os parâmetros de testes e ganho de performance sempre que seu PC for iniciado, como? Simples! Criando um script shell, provavelmente disponibilizarei no meu site.

Bem, lembre-se de que o intuito deste artigo não é ensinar como criar scripts em shell, muito menos para dizer como você deve ou não configurar seus discos para ganhar desempenho, mas servirá como base para que você possa afinar com as informações para obter um bom desempenho.

Dicas importantes

O Google tem muito a oferecer caso tenha dúvidas, inclusive ele sabe bem mais do que eu... Mas caso tenham dúvidas podem me contactar, estarei disposto a ajudar.

O man page (man hdparm) é seu amigo, use ele antes de testar qualquer parâmetro, isso vai evitar que você acabe ferrando seus discos.

Em caso de dúvida na utilização do hdparm ou de alguns de seus parâmetros, busque saná-las, não vá testando sem saber se que o que está fazendo.

Artigo originalmente publicado em: http://www.cleberjsantos.com.br, por Cleber J Santos.

Página anterior    

Páginas do artigo
   1. Acelerando o HD
   2. Acelerando o HD - Parte II
   3. Acelerando o HD - Parte III
Outros artigos deste autor

Software Livre é o futuro

Linux (kernel) - A história do seu criador

Escrevendo scripts no GIMP, pintando a cobra

FreeBSD + Zope/Plone, uma idéia frustrante?

Assembler no Linux

Leitura recomendada

Dispositivos no Linux

Endianness - Arquitetura de computadores

Como instalar um cartão PCMCIA (modem/rede) no meu notebook?

MAC Flood! E agora?

O que é o Chipset e para que serve?

  
Comentários
[1] Comentário enviado por sandromt em 11/03/2009 - 18:18h

Muito bom, mais pode-se utilizar para HDs SATAS, sem problemas ?!?

[2] Comentário enviado por albfneto em 11/03/2009 - 19:41h

Legal esse artigo, eu gosto de artigos sobre comandos ou pacote clássicos, 10!
mas ouvi dizer que hdparm é arriscado para os dados, é verdade?
porisso nunca tentei nos dois anos que mexo com linux.

[3] Comentário enviado por cleberjsantos em 12/03/2009 - 09:14h

Opa, obrigado pelos comentários, sim pode ser usado com Sata também sem problemas, só lembre-se que ao invés de HDa elel muda para SDa, ou coisa assim.

Quanto a ser arriscado o uso do hdparm, sim, dependendo da situação pode ser arriscado, neste caso se aplica o dizer que: "Cada caso é um caso", por isso é importante que antes de aplicar testes como estes que fiz, você tenha entendido exatamente os parâmetros, os testes de analise não é preciso ter medo, pois são apenas testes para analisar o que seu HD tem suporte e como está a situação dele, é a partir dessa analise que você vai tirar os dados necessários para aplicar ao seu HD ;-)


Att,

Cleber J Santos
http://www.cleberjsantos.com.br

[4] Comentário enviado por neomvll em 12/03/2009 - 10:29h

Ótimo artigo, já ta no Favoritos. Valeu Cleber.

[5] Comentário enviado por erhnamdjinm em 12/03/2009 - 11:57h

"sim pode ser usado com Sata também sem problemas, só lembre-se que ao invés de HDa elel muda para SDa, ou coisa assim. " by cleberjsantos
Não, o hdparm não pode ser usado em SATA, porque ele foi feito para ajustar HD's IDE. Você consegue tirar informações sobre o HD SATA, mas não consegue ajustar parâmetros com ele. Para HD's SATA e SCSI, use o sdparm.

"porisso nunca tentei nos dois anos que mexo com linux" by albfneto
Putz, mexer em qualquer SO sem pelo menos ativar o DMA do HD IDE não deve ser divertido... Deve ficar muuuuito lento.
Faça pelo menos o hdparm -d1 /dev/hda que você notará a diferença.

[6] Comentário enviado por nicolo em 12/03/2009 - 12:14h

Artigo super interessante, uma vez que o disco é o dispositivo mais lento do sistema.
A maioria enche a máquina de megahertz, com um sistema operacional cheio de setings complicados
e esquece do disco.
Na BIOS modernas o DMA e o 32bits transfer podem ser acionados pelo SETUP.
Há controladoras aceleradoras que melhoram o desepenho do disco, mas os preços
não entusiasmam.
Gostei.

[7] Comentário enviado por albfneto em 12/03/2009 - 16:26h

bom minha DMA tá ativada na BIOS, e porisso não está tão lento, tá um pouco lento meu disco slave, mas o master não está;
eu tenho Vista, e Mandriva, Sabayon e Gentoo e Poseidon Linux distribuidos entre os dois hds, tudo 64 bits e tenho 4 giga de ram, é um DX2 6000, AMD 64, e os dois HDs são sata, um é 160 (slave) e o outro, o master é 500.
entendi, devo usar sdparm.

[8] Comentário enviado por cleberjsantos em 12/03/2009 - 16:39h

Opa nicolo, obrigado pela correção sobre o hdparm ;)

[9] Comentário enviado por JefersonLopes em 04/07/2013 - 22:47h

Cara... sei que já tem tempo isso.. mas você ao menos poderia me dar os créditos?

http://www.vivaolinux.com.br/artigo/Hdparm-Entendendo-seu-funcionamento-e-criando-um-script-para-Sla...

hehehe... abraço e boa sorte!

[10] Comentário enviado por cleberjsantos em 05/07/2013 - 08:40h

Jeferson, peço desculpas, não sei do por que não dei crédito, agora vem a questão... Não me lembro como edito artigos aqui no VOL :P se você puder me ajudar já insiro agora os crédito ;)

Abraços!

[11] Comentário enviado por JefersonLopes em 05/07/2013 - 09:17h

Olá Cleber.

Acredito que terás que falar com Fábio Berbert; atualizar artigos antigos creio que só ele!

Att.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts