Software para corrigir a degradação do desempenho do SSD

4

A geração atual de SSDs sofre lentidão na velocidade de gravação (para gravações aleatórias) ao longo do tempo devido à forma como os dados precisam ser lidos e, em seguida, gravados em blocos. Vários fabricantes têm correções saindo para resolver isso (como fazer "coleta de lixo" quando o disco está ocioso), mas existe alguma solução de software para consertar um sistema de arquivos SSD atual para restaurar o desempenho, além de limpar a unidade completa e começar de novo?

Qualquer coisa que será executada em segundo plano ou uma ferramenta de "recondicionamento" que pode ser executada durante a noite para executar o trabalho; Não consigo pensar em nenhuma razão para que tais ferramentas não possam existir, mas não consegui encontrar nenhuma.

    
por DrStalker 17.08.2009 / 04:08

5 respostas

10

Não pode haver um software genérico como o software de desfragmentação para discos rígidos não SSD.

O motivo é que, em um disco rígido não SSD, os dados são armazenados fisicamente em um local conhecido. Conhecendo o LBA endereço de dados, uma ferramenta de desfragmentação agora onde um dado está fisicamente no disco rígido e pode movê-lo para onde quer. (isso é quase verdade, mas não em todos os casos)

Em um SSD, os dados também são armazenados em um endereço LBA (como o ATA / SATA funciona). Mas, enquanto um disco rígido tradicional (na maioria dos casos) armazena o endereço LBA 1 no início do disco, seguido pelo endereço 2, 3, 4, ..., N; Um SSD não armazena endereço linearmente porque armazenar linearmente seria muito lento se você escrevesse no endereço 1 e depois, no endereço 2, porque o SSD teria que reescrever os dados armazenados no endereço 1 (isso significa ler, armazenar em cache , apague o endereço 1 para N (um ssd precisa escrever um bloco inteiro de endereço N a cada vez que você escreve dados)), escreva o endereço 1 & 2. É lento). É por isso que o SSD armazenará o endereço 2 'longe' (no espaço de memória) do endereço 1. Isso torna a gravação mais rápida, mas tornará o disco mais lento quando todos os blocos tiverem sido usados.

Assim, uma ferramenta não pode saber como os dados são armazenados no SSD e não pode decidir como fazer algo como uma 'desfragmentação'. A única maneira de fazer isso é executar um programa dentro dos controladores de disco rígido, usar uma ferramenta que pode solicitar ao SSD que informe como os dados são armazenados e dizer a ele como mover (usando endereço de memória interna e não endereço LBA) não há um comando ATA padrão para fazer isso, isso significaria uma ferramenta por fornecedores SSD.Eu ainda não sei se poderia ser possível usar um comando proprietário sobre o protocolo ATA (WIPER pode ser uma ferramenta desse tipo). )) ou use o famoso comando TRIM.

Depois de um tempo, você pega todo o endereço do bloco N com apenas poucos endereços usados (porque você deletou coisas, etc.) e começa a ficar lento porque cada vez que você escreve dados, um bloco tem que ser lido, apagado , escrever. É por isso que você precisa do TRIM para obter a maioria dos blocos cheios de dados e novos blocos vazios.

PS: Só para ficar claro, esta é uma explicação muito simplificada. Além disso, na maioria dos casos, você não apenas escreverá 1 endereço de dados LBA, mas muitos (porque os arquivos são grandes), de modo que você escreverá X blocos de endereço N, mas obterá os Xth blocos não preenchidos.

    
por 17.08.2009 / 05:09
3

Sua melhor aposta é obter uma atualização de firmware do fabricante.

Se você não fizer isso, precisará fazer um backup do HDD, apagar todos os dados contidos nele e restaurá-lo a partir do backup.

O Anandtech tem um exemplo do processo usando o HDDErase da Intel aqui

    
por 17.08.2009 / 05:11
3

Colocando a Teoria para Praticar: Entendendo o Problema de Degradação de Desempenho do SSD

Este artigo faz um ótimo trabalho explicando por que os discos SSD são rápidos quando novos, mas depois ficam mais lentos.

    
por 31.08.2009 / 02:00
1

Pelo que entendi, você terá que esperar por uma atualização de firmware do fornecedor.

    
por 17.08.2009 / 04:47
0

Além disso, a lentidão é parcialmente causada de propósito pela tecnologia de desgaste para lidar com o número limitado de gravações por bloco. Ao forçar uma desfragmentação de baixo nível, você está diminuindo significativamente a vida útil da unidade.

    
por 17.08.2009 / 11:35