Existem várias maneiras de ajustar o desempenho de E / S.
-
escolha do sistema de arquivos - escolha um sistema de arquivos dependendo de como são seus dados típicos - alguns sistemas de arquivos lidam melhor com muitos arquivos menores, alguns fazem bem para arquivos grandes, alguns não escalam bem ao acessar (especialmente criando) vários arquivos de uma só vez. A desfragmentação pode ajudar nas unidades de placas giratórias (não tanto em dispositivos baseados em flash, mas a diferença ainda deve estar lá).
-
ajustes no sistema de arquivos - os sistemas de arquivos modernos têm muitas opções (tanto criação quanto tempo de montagem) que empurram o desempenho do sistema de arquivos em uma direção ou outra. O primeiro exemplo pode ser como o journalling é feito.
-
Configuração de DMA - embora isso tenha sido feito de forma automática desde as idades, nunca é demais verificar (
hdparm -i
é seu amigo aqui).
Linux especificamente (mas pode ser semelhante para outros kernels também):
-
THP - Páginas enormes e transparentes usadas para causar degradação do desempenho. IIRC o problema foi corrigido (pelo menos até certo ponto) há algum tempo atrás. Se copiar para / de USB for o problema, você provavelmente deve procurar nessa direção. As desativam as páginas de abraços transparentes podem servir como um bom ponto de partida para desativar o THP.
O -
programador de E / S do kernel pode influenciar bastante o desempenho. Algumas pessoas defendem o uso do escalonador do Prazo Final sobre o CFQ, que é mais complexo e, às vezes, supostamente tende a pensar demais sobre as coisas.
Além disso, em alguns cenários, a I / O pesada simplesmente acontece. Quando você começa a copiar arquivos do leitor de cartão de memória USB para o disco rígido, do disco rígido para um disco flash USB, navega na web (alguns navegadores podem ser fsync()
pesados para garantir que as coisas são recuperáveis em caso de falha) , execute um cliente P2P e reproduza um filme todos ao mesmo tempo, o disco físico e o sistema de arquivos vão se tornar o gargalo. Em alguns casos, um cuidadosamente construído (leia com tamanho de faixa apropriado e número de drives constituintes), o RAID0 pode ajudar a aliviar o problema.