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: 28.278  ]
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 .
 
 
      
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
 
 
 
 
 
Comentários
	
		
		
	
	
	
	
	
	
 
	
		
		
	
	
	
	
	
	
		
			
				
				
					
					
						
							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
 
						 
					
	
					 
				 
			 	
			
		 
	 
	 
	
 
	
		
		
	
	
	
	
	
	
		
			
				
				
					
					
						
							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.
:)
 
						 
					
	
					 
				 
			 	
			
		 
	 
	 
	
 
	
		
		
	
	
	
	
	
	
		
			
				
				
					
					
						
							Mensagem 
							Excelente artigo, até que enfim alguem explicou como sabendo do assunto e não recortando de receita de bolo!
Continue assim slack. 
						 
					
	
					 
				 
			 	
			
		 
	 
	 
	
 
	
		
		
	
	
	
	
	
	
		
			
				
				
					
					
						
							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
 
						 
					
	
					 
				 
			 	
			
		 
	 
	 
	
 
	
		
		
	
	
	
	
	
	
		
			
				
				
					
					
						
							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 
						 
					
	
					 
				 
			 	
			
		 
	 
	 
	
 
	
		
		
	
	
	
	
	
	
		
			
				
				
					
					
						
							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 
						 
					
	
					 
				 
			 	
			
		 
	 
	 
	
 
	
		
		
	
	
	
	
	
	
		
			
				
				
					
					
						
							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 
						 
					
	
					 
				 
			 	
			
		 
	 
	 
	
 
	
		
		
	
	
	
	
	
	
		
			
				
				
					
					
						
							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