Hdparm - Entendendo seu funcionamento e criando um script para Slackware
Aqui nos concentraremos nas configurações e parâmetros do hdparm. Nosso principal objetivo é entender como o software funciona, também criaremos um script que pode ser usado na inicialização do Slackware, e que com alguns ajustes, pode ser adaptado para outras distribuições.
[ Hits: 27.322 ]
Por: Jeferson Lopes de Oliveira Mendes em 12/06/2006 | Blog: http://jefersonlopes.com.br
Introdução
Quando percebemos que nossos HDs estão aqué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 .
Entre as várias possibilidades úteis com o hdparm, podemos verificar e obter informações para futura análise dos discos, configuração de discos ópticos e rígidos, testes de desempenho, gerenciamento de energia e ajustar os parâmetros de configuração para os mesmos.
Só não devemos esquecer que para cada drive de disco ou hard disc e para cada fabricante existe uma configuração específica. Então utilize os dados aqui mencionados com extrema cautela e de preferência como um esboço para uma configuração mais fiel e específica para o seu sistema.
Próxima página
Páginas do artigo
1. Introdução
2.
Informações sobre o HD e testes de desempenho no sistema
3.
Script de inicialização
4.
Finalizando
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada
Brincando com vetores
Criando Arrays, Arrays Multidimensionais e Hashes em BASH Script
Backup automático em Shell Script
Relatório de sistema via browser (shell script + CGI)
Convertendo TXT ou HTML em OGG
Comentários
o meu tá com o ultra dma 5 ativado, ele é habilitado por padrão na instalação do Ubuntu, olha ae o resultado:
tiagozc@linux:~$ sudo hdparm -tT /dev/hda
/dev/hda:
Timing cached reads: 880 MB in 2.01 seconds = 438.31 MB/sec
Timing buffered disk reads: 154 MB in 3.03 seconds = 50.87 MB/sec
:D
na mesma situação de tiagozc
o resultado foi:
*****@gandalf:~$ sudo hdparm -Tt /dev/hda
/dev/hda:
Timing cached reads: 888 MB in 2.01 seconds = 442.30 MB/sec
Timing buffered disk reads: 108 MB in 3.00 seconds = 35.96 MB/sec
Mensagem
na mesma situação de tiagozc
o resultado foi:
*****@gandalf:~$ sudo hdparm -Tt /dev/hda
/dev/hda:
Timing cached reads: 888 MB in 2.01 seconds = 442.30 MB/sec
Timing buffered disk reads: 108 MB in 3.00 seconds = 35.96 MB/sec
Amigos, existem distribuições que já ativam o DMA que seu HD suporta, outras não!!!
Também meu HD não é tão privilegiado como o de vocês. Um bom conjunto de HD e placa mão já é de ótima ajuda.
:)
Mensagem
Amigos, existem distribuições que já ativam o DMA que seu HD suporta, outras não!!!
Também meu HD não é tão privilegiado como o de vocês. Um bom conjunto de HD e placa mão já é de ótima ajuda.
:)
Excelente artigo, até que enfim alguem explicou como sabendo do assunto e não recortando de receita de bolo!
Continue assim slack.
Mensagem
Excelente artigo, até que enfim alguem explicou como sabendo do assunto e não recortando de receita de bolo!
Continue assim slack.
Caro amigo:
Preciso de uma ajudinha, quais as sequências de comandos que devo usar baseada nessas informações, meu disco preciso ativar o dma ou ultra dma do disco:
/dev/hda:
Model=SAMSUNG SP2514N, FwRev=VF100-41, SerialNo=S08BJ1FL709733
Config={ Fixed }
RawCHS=16383/16/63, TrkSize=34902, SectSize=554, ECCbytes=4
BuffType=DualPortCache, BuffSize=8192kB, MaxMultSect=16, MultSect=16
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=268435455
IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2
AdvancedPM=no WriteCache=enabled
Drive conforms to: unknown:
* signifies the current active mode
/dev/hda:
Model=SAMSUNG SP2514N, FwRev=VF100-41, SerialNo=S08BJ1FL709733
Config={ Fixed }
RawCHS=16383/16/63, TrkSize=34902, SectSize=554, ECCbytes=4
BuffType=DualPortCache, BuffSize=8192kB, MaxMultSect=16, MultSect=16
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=268435455
IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2
AdvancedPM=no WriteCache=enabled
Drive conforms to: unknown:
* signifies the current active mode
/dev/hda:
multcount = 16 (on)
IO_support = 1 (32-bit)
unmaskirq = 1 (on)
using_dma = 0 (off)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 8 (on)
geometry = 30401/255/63, sectors = 488397168, start = 0
O que preciso fazer para ativar o dma, quais os comando corretos a usar?
Cordialmente
Joabes
Mensagem
Caro amigo:
Preciso de uma ajudinha, quais as sequências de comandos que devo usar baseada nessas informações, meu disco preciso ativar o dma ou ultra dma do disco:
/dev/hda:
Model=SAMSUNG SP2514N, FwRev=VF100-41, SerialNo=S08BJ1FL709733
Config={ Fixed }
RawCHS=16383/16/63, TrkSize=34902, SectSize=554, ECCbytes=4
BuffType=DualPortCache, BuffSize=8192kB, MaxMultSect=16, MultSect=16
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=268435455
IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2
AdvancedPM=no WriteCache=enabled
Drive conforms to: unknown:
* signifies the current active mode
/dev/hda:
Model=SAMSUNG SP2514N, FwRev=VF100-41, SerialNo=S08BJ1FL709733
Config={ Fixed }
RawCHS=16383/16/63, TrkSize=34902, SectSize=554, ECCbytes=4
BuffType=DualPortCache, BuffSize=8192kB, MaxMultSect=16, MultSect=16
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=268435455
IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2
AdvancedPM=no WriteCache=enabled
Drive conforms to: unknown:
* signifies the current active mode
/dev/hda:
multcount = 16 (on)
IO_support = 1 (32-bit)
unmaskirq = 1 (on)
using_dma = 0 (off)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 8 (on)
geometry = 30401/255/63, sectors = 488397168, start = 0
O que preciso fazer para ativar o dma, quais os comando corretos a usar?
Cordialmente
Joabes
Olá Joabes
Vendo a linhas UDMA, ele suporta Ultra DMA 2, então:
hdparm /dev/hda -m16 -c1 -d1 -X udma2
Você pode também habilitar as opções "-A1" e "-a" para manter uma leitura otimizada do buffer. Também habilite o mascaramento de I/O (-u) IRQ que ajuda a sustentação de acesso a 32 bits.
Resumindo, você pode habilitar estas opções:
hdparm hdparm -m16 -c1 -d1 -u1 -X udma2 -A1 -a256
Caso estas opções apresentem algum problema de leitura, você pode ir fazendo alguns testes até encontrar as opções ideais para seu hd.
Espero que isso ajude.
Flw
Mensagem
Olá Joabes
Vendo a linhas UDMA, ele suporta Ultra DMA 2, então:
hdparm /dev/hda -m16 -c1 -d1 -X udma2
Você pode também habilitar as opções "-A1" e "-a" para manter uma leitura otimizada do buffer. Também habilite o mascaramento de I/O (-u) IRQ que ajuda a sustentação de acesso a 32 bits.
Resumindo, você pode habilitar estas opções:
hdparm hdparm -m16 -c1 -d1 -u1 -X udma2 -A1 -a256
Caso estas opções apresentem algum problema de leitura, você pode ir fazendo alguns testes até encontrar as opções ideais para seu hd.
Espero que isso ajude.
Flw
Usando: hdparm -m16 -c1 -d1 -u1 -X udma2 -A1 -a256 /dev/hda
/dev/hda:
setting fs readahead to 256
BLKRASET failed: Invalid argument
setting 32-bit IO_support flag to 1
setting multcount to 16
setting unmaskirq to 1 (on)
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Operation not permitted
setting xfermode to 66 (UltraDMA mode2)
Segmentation fault
O que fazer?
Cordialmente
Joabes
Mensagem
Usando: hdparm -m16 -c1 -d1 -u1 -X udma2 -A1 -a256 /dev/hda
/dev/hda:
setting fs readahead to 256
BLKRASET failed: Invalid argument
setting 32-bit IO_support flag to 1
setting multcount to 16
setting unmaskirq to 1 (on)
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Operation not permitted
setting xfermode to 66 (UltraDMA mode2)
Segmentation fault
O que fazer?
Cordialmente
Joabes
Eita... quase um ano depois que eu entro aqui... rsrsrs
Bom Joabe, não sei se ainda você passa por este problema, mas tente diminuir o valor da leitura antecipada para 128, ou mesmo deixar só a opção -A1 eliminando a -a256 da configuração.
Abs
Mensagem
Eita... quase um ano depois que eu entro aqui... rsrsrs
Bom Joabe, não sei se ainda você passa por este problema, mas tente diminuir o valor da leitura antecipada para 128, ou mesmo deixar só a opção -A1 eliminando a -a256 da configuração.
Abs
Também baixe o Ultra DMA para 1 (udma1)... caramba... realmente faz tempo que não entre aqui no VoL.
Mensagem
Também baixe o Ultra DMA para 1 (udma1)... caramba... realmente faz tempo que não entre aqui no VoL.
Contribuir com comentário
Enviar