Desempenho de transferência de arquivos muito ruim

2

Recentemente, meu sistema está realmente lutando para mover grandes quantidades de dados (às vezes, poucos arquivos grandes, às vezes muitos pequenos). O problema ocorre quando os arquivos estão sendo movidos do meu hardrive para um sistema externo, seja um compartilhamento de rede montado ou um USB externo. O compartilhamento de rede e o USB tiveram os mesmos sintomas, mas não tenho certeza se eles estão necessariamente relacionados.

O exemplo mais recente foi momentos atrás, quando tentei mover uma pasta totalizando 1,9 GB do meu disco rígido para um dispositivo USB, via Nautilus copy & amp; colar. No momento em que a barra de progresso foi aberta, a operação foi cerca de 1/3 concluída, reportando 600MB transferidos. A taxa de transferência neste momento era de 29MB / s, e estava rapidamente em declínio. Passou de 29 MB / s para 20 MB / s em poucos segundos, passou de 20 para 10 em cerca de 10 segundos, e eventualmente chegou ao fundo de 6MB. Houve também um período de cerca de 30 segundos em que toda a operação pareceu paralisada, como em nenhuma atualização mostrada na janela de progresso. Uma operação como essa deve levar apenas alguns segundos e acabou levando cerca de 3 minutos.

Ontem, tentei mover essa mesma pasta para o compartilhamento de rede e tive sintomas semelhantes. Demorou cerca de 30 segundos para a barra de progresso chegar à metade, e então a coisa toda parou. O monitor de rede mostrou uma linha fixa de 0 Bytes / s.

Eu tenho um novo SSD na máquina, então não acho que seja o gargalo.

Que tipo de coisas devo verificar para rastrear a raiz desse problema?

Usando o Ubuntu 12.10. Os arquivos que eu estava tentando mover estavam em minha pasta pessoal que usa o encryptfs.

    
por parker.sikand 15.05.2013 / 21:41

1 resposta

1

"Que tipo de coisas devo verificar para rastrear a raiz desse problema?"

Você precisa observar as coisas comuns a ambas as transferências. Você estava transferindo o mesmo arquivo? Poderia esse arquivo ser croupt? Você estava sem memória RAM para o armazenamento em cache de arquivos? Como foi sua CPU?

Criptografar uma partição geralmente tem esse tipo de efeito colateral. Lembre-se, a fim de transferir o seu arquivo você tem que decodificá-lo localmente, em seguida, transferi-lo para o destino. Isto é transparente para o programa de cópia / chamadas, mas ainda tem que ser feito. Se você estiver tentando transferir arquivos enormes, a memória que contém cópias descriptografadas do arquivo (bem do arquivo) pode estar cheia.

Verifique sua memória livre durante uma transferência usando free -m ou apenas free e veja o que está disponível para buffers e cache.

Lembre-se também de que o Linux armazena em cache as operações de arquivo. Então, apenas porque o processo do usuário acha que os dados foram copiados, não significa que alguma coisa tenha sido gravada na mídia física. Isso faz com que arquivos menores sejam gravados de maneira "rápida", mas arquivos maiores têm uma "explosão" de velocidade e, em seguida, quando o cache é preenchido, eles ficam mais lentos. Geralmente não é tão perceptível, mas se seus caches estão cheios, ou sua memória baixa (para novos caches) ou sua CPU está com pouca energia (muito comum quando as pessoas criptografam coisas), então vai demorar mais.

    
por coteyr 15.05.2013 / 22:43