Acabei de instalar o teste Debian na minha nova área de trabalho e não estou muito satisfeito com o desempenho - quando executo uma operação intensiva em disco, por exemplo, atualizar pacotes no sistema, tudo parece congelar, por exemplo, alterar as guias no Iceweasel leva 3 segundos. Eu corro o Debian no meu notebook ultraportátil Thinkpad X60 de 3 anos e não tenho esses problemas. (cada parâmetro do laptop é muito pior que o desktop).
Estou usando o kernel e scripts padrão do pacote.
eu corro
hdparm -t /dev/sda1
E consegui 96GB / s, o que é esperado. O que mais posso tentar para que funcione melhor?
EDIT :
grzes:/home/ga# hdparm -i /dev/sda
/dev/sda:
Model=WDC WD15EARS-00Z5B1, FwRev=80.00A80, SerialNo=WD-WMAVU1362357
Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=50
BuffType=unknown, BuffSize=unknown, MaxMultSect=16, MultSect=16
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=2930277168
IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6
AdvancedPM=no WriteCache=enabled
Drive conforms to: Unspecified: ATA/ATAPI-1,2,3,4,5,6,7
* signifies the current active mode
EDIT2 : Até minha esposa disse "neste computador novo, não posso fazer nada quando copio as fotos da câmera e isso é muito pior do que no antigo". Então deve ser sério.
EDIT3 : atualizado para 2.6.32, mas ainda não há melhorias
EDIT4 : Esqueci de mencionar que o novo disco é ext4, o antigo era ext3.
EDIT5 : Ainda não resolvido. Eu tenho uma placa P43 ASUS P5QL-E. Linhas do dmesg que parecem relevantes:
[ 0.370850] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
[ 0.370852] io scheduler noop registered
[ 0.370853] io scheduler anticipatory registered
[ 0.370854] io scheduler deadline registered
[ 0.370876] io scheduler cfq registered (default)
...
[ 0.908233] ata_piix 0000:00:1f.2: version 2.13
[ 0.908243] ata_piix 0000:00:1f.2: PCI INT B -> GSI 19 (level, low) -> IRQ 19
[ 0.908246] ata_piix 0000:00:1f.2: MAP [ P0 P2 P1 P3 ]
[ 0.908275] ata_piix 0000:00:1f.2: setting latency timer to 64
[ 0.908316] scsi0 : ata_piix
[ 0.908374] scsi1 : ata_piix
[ 0.909180] ata1: SATA max UDMA/133 cmd 0xa000 ctl 0x9c00 bmdma 0x9480 irq 19
[ 0.909183] ata2: SATA max UDMA/133 cmd 0x9880 ctl 0x9800 bmdma 0x9488 irq 19
[ 0.909199] ata_piix 0000:00:1f.5: PCI INT B -> GSI 19 (level, low) -> IRQ 19
[ 0.909202] ata_piix 0000:00:1f.5: MAP [ P0 -- P1 -- ]
[ 0.909228] ata_piix 0000:00:1f.5: setting latency timer to 64
[ 0.909279] scsi2 : ata_piix
[ 0.909326] scsi3 : ata_piix
[ 0.910021] ata3: SATA max UDMA/133 cmd 0xb000 ctl 0xac00 bmdma 0xa480 irq 19
fonte
dmesg
relação ao chipset ou unidade? se você o corrigiu de alguma forma, considere postar um artigo como resposta para informar futuros leitores.Respostas:
Verifique o deslocamento da partição - precisa ser divisível por 4 para o EARS, pois eles têm a tecnologia 4096. Se não estiver - reparte-o novamente para obter problemas de alinhamento e desempenho (as unidades EARS desalinhadas farão muito mais gravações setoriais por operação).
fonte
Eu tive um problema de congelamento semelhante ao fazer muitas E / S de disco. Durante um backup, a área de trabalho ficou congelada por alguns segundos repetidamente até que o backup foi concluído.
Não estava relacionado a nenhum alinhamento nem a qualquer ajuste do hdparm (embora eu concorde que isso ajude).
O bloqueio do sistema foi causado pelo agendador de E / S, que atrasa demais algumas E / S exigidas por aplicativos mais interativos (Firefox, KDE ou o que for). O planejador de E / S com defeito foi cfg .
Para resolver o problema, você precisa usar o planejador de E / S do prazo. Você o ativa em um disco com o seguinte comando que você pode adicionar no /etc/rc.local :
Verifique Solucionando o bloqueio do sistema Linux quando E / S de disco intensivas são executadas para obter mais informações.
fonte
É um tiro no escuro, mas tive um problema como esse há um tempo atrás, e a causa acabou sendo que o kernel não suportava completamente o chipset e o DMA estava desativado. Verificar com
se um dos modos de DMA está ativado.
(A solução nesse caso era obter um kernel mais recente.)
fonte
Model=WDC, FwRev=80.00A80, SerialNo=WD-WMAVU1362357 Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq } RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=50 BuffType=unknown, BuffSize=0kB, MaxMultSect=16, MultSect=16 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=2930277168 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120} PIO modes: pio0 pio3 pio4 DMA modes: mdma0 mdma1 mdma2 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6 AdvancedPM=no WriteCache=enabled Drive conforms to: Unspecified: ATA/ATAPI-1,2,3,4,5,6,7
Eu encontrei problemas em que operações que executam muitas chamadas fsync (2) causam uma grande lentidão no sistema. No meu caso, estou executando com minha partição raiz contida no LVM contida no LUKS. Você está usando LVM ou LUKS?
Uma ferramenta que pode ajudar a identificar o que especificamente está mastigando seus discos (em vez de apenas "instalar pacotes") é chamada
iotop
. Eu sugiro executá-lo enquanto você executa uma dessas tarefas, e isso pode indicar outro processo em segundo plano que pode ser acionado ao mesmo tempo e consumir toda a sua taxa de transferência de E / S.fonte
sudo fdisk -u / dev / sda
Isso deve lhe dar o deslocamento inicial. Eu acho que você pode criar a partição usando o fdisk -o 64 ou algo assim - eu teria que pesquisar no google para que eu faça o google no fdisk e defina manualmente o deslocamento da partição (o padrão é 63, então isso não é bom).
e sim, o disco será exibido com setores 512b, pois finge ser assim para o sistema operacional - o Vista / W7 lida com isso configurando o deslocamento correto, mas o XP e eu acho que perto de todas as distribuições linus não :( manualmente é a única maneira que parece (o meu é apenas uma unidade de armazenamento e criado em win7 / ntfs, portanto, não é problema para mim)
Edit: - Encontrei um bom post no wdc - isso deve ter você pronto e funcionando em pouco tempo :)
http://community.wdc.com/t5/Desktop/Problem-with-WD-Advanced-Format-drive-in-LINUX-WD15EARS/mp/10920#M631
fonte
Apenas uma foto aleatória, o que parece estúpido, pois você usa o Debian ... mas descobri que isso ajudou alguém com o mesmo modelo de disco rígido: você tentou atualizar o BIOS?
fonte
Como regra geral, se você pode usar o hdparm no dispositivo, é a interface ATA "antiga", em comparação com a interface SATA / SCSI mais recente. Se for esse o caso, provavelmente o problema é que as operações de disco durante as interrupções não estão ativadas por padrão. Esse é um problema comum em algumas máquinas que usam a interface ATA mais antiga e prejudicará o desempenho do disco ou do sistema durante operações pesadas de E / S.
Você realmente deve tentar o seguinte:
Se você não vir uma melhoria no desempenho na segunda execução de tempo (o terceiro comando), então há outra coisa acontecendo.
Outro fator é esperar que o modo UDMA6 funcione em um cabo não UDMA (supondo que não seja uma interface SATA). Se você estiver usando um cabo ATA de 80 pinos, está bem; se você estiver usando uma pin de 40 pinos mais antiga, terá todo tipo de sofrimento. Se o cabo for o antigo de 40 pinos, será necessário reduzir a taxa de transferência para algo que possa ser suportado "com segurança". AVISO: o ajuste da interface IDE pode travar a unidade e / ou a interface e, se a unidade for o seu sistema de arquivos raiz, todo o sistema ficará travado!
Se você precisar diminuir a taxa de transferência para corresponder ao hardware, tente o seguinte:
Novamente, o segundo momento (terceiro comando emitido) deve mostrar uma melhoria.
Por fim, a própria unidade pode ser marginal, mas sem os relatórios SMART, você pode não perceber o problema (até que seja tarde demais). Eu realmente recomendo instalar o
smartmontools
pacote para ajudá-lo, especialmente se você tiver uma unidade antiga que precisará de um pouco de TLC de vez em quando.Se tudo mais falhar, procure
/var/log/messages
erros de E / S no disco.Atualizar:
Parece que você não está sozinho. Existem quadros de mensagens em toda a rede relatando todos os tipos de mágoa com essas unidades.
Também há menção à unidade usando um tamanho de setor de 4k versus o tamanho "tradicional" de 512 bytes. Só posso imaginar que tipo de problema isso deve estar causando.
Por fim, olhando sua saída novamente, parece que o encadeamento de diário está praticamente amarrando o sistema. Um sistema de arquivos não registrado em diário pode aliviar temporariamente o problema, mas é profilático na melhor das hipóteses e não soluciona o problema na pior das hipóteses.
fonte
Isto está finalmente consertado! Como a @Rachel apontou, o problema realmente estava no alinhamento com os setores de 4kb, mas infelizmente o artigo vinculado estava incorreto :(
A maneira correta de alinhar partições está aqui: http://www.linuxconfig.org/linux-wd-ears-advanced-format
E este artigo fornece uma boa referência para que você possa verificar se a tabela de partição está correta: http://article.gmane.org/gmane.linux.utilities.util-linux-ng/2955
Em uma nota lateral, se você tiver esta unidade e usar Linux, você também deverá aumentar um dos cronômetros de inatividade, conforme descrito aqui: http://wdc.custhelp.com/cgi-bin/wdc.cfg/php/enduser/std_adp .php? p_faqid = 5357 & p_created = 1266947046 & p_sid = Os7DQL2k & p_accessibility = 0 & p_redirect = & p_srch = 1 & p_lva = & p_sp = cF9zcmNoPTEmcF9zb3J0X2J5PSZwX2dyaWRzb3J0PSZwX3Jvd19jbnQ9NTEsNTEmcF9wcm9kcz0yMjcsMjk0JnBfY2F0cz0xMzAmcF9wdj0yLjI5NCZwX2N2PTEuMTMwJnBfcGFnZT0x & p_li = & p_topview = 1
fonte