Eu tenho uma instalação do Windows em um disco SanDisk SDSSDH3-1T00-G25 de 1 TB e o tenho há cerca de dois anos. Eu tinha notado uma lentidão, mas pensei pouco sobre isso (não é um computador que eu uso intensamente), então, uma semana atrás, notei que os backups completos noturnos estavam demorando muito tempo.
De acordo com o WINSAT, o disco é muito lento em acesso aleatório, mas um teste mais minucioso mostrou que ele também é muito lento em leituras sequenciais muito longas.
Este é um problema de hardware , mas não consigo diagnosticá-lo e o SanDisk Dashboard diz que o SSD está perfeito e tem 99% de vida restante. O tamanho de 1 TB é porque atualizei um disco de 256 GB e fiz um bom negócio no SSD, mas nunca o preenchi mais do que talvez 300 GB, então não é o efeito "SSD quase cheio". O firmware integrado está atualizado (sem atualizações disponíveis). O status do Windows TRIM é "ativado" (executar fsutil behavior query DisableDeleteNotify
a partir de um prompt elevado retorna "0" como deveria).
Como sei que é um problema de hardware - porque, tanto para resolver o problema radicalmente quanto para verificá-lo de forma confiável, comprei outro SSD (um Samsung 870 EVO) e clonei o antigo com um dock externo, rodando sem nenhum computador conectado. Um clone de 1 TB geralmente leva de dez a quinze minutos. Este levou quatorze horas .
Em um gabinete USB3 externo, o disco antigo está funcionando sem erros a 2-5 MB/s de taxa de transferência - acho que já tive alguns discos IDE antigos que eram tão lentos, mas isso foi há muito tempo e não tenho certeza: -).
Alguém encontrou essa... coisa? Mas a verdadeira questão: existe uma maneira de restaurar - ou pelo menos aumentar - a velocidade do SSD? Eu gostaria de poder usar os 99% de vida restante em um disco externo de 1 TB, se possível. Se for uma deterioração da unidade ou um sinal de falha iminente, ou se eu não puder ter certeza de ter um armazenamento confiável, é claro que irei jogá-lo no lixo.
Testes que pretendo realizar no meu tempo ocioso:
- executando um teste SMART. Que pena, não pensei em fazer isso antes de clonar o disco.
- executando a unidade externa com um cabo USB de 1m, de dentro de uma geladeira . Estou ciente de que temperaturas muito altas podem apagar SSDs, mas que tal ondas de calor de verão simples? E se eles puderem desacelerar um dispositivo? Comecei a notar a desaceleração no início de junho, então talvez ...?
- reler e reescrever toda a superfície. Talvez eu esteja tendo problemas de setores que se tornaram "difíceis de ler de forma confiável". Vou usar
dd
do Linux para atualizar a unidade.
Dados antigos serão mais lentos para ler
Em geral, dados 'quentes', dados que mudam com frequência e, portanto, são reescritos, serão lidos mais rapidamente do que dados 'frios', dados que você grava na unidade e permanecem inalterados por muito tempo.
O SSD precisa se esforçar mais para ler os dados mais frios. A carga nas células NAND cairá com o tempo, quanto mais cair, mais o drive precisará contar com a correção de erros ou mesmo com os chamados registradores RR para ler os dados.
O último significa que o SSD experimentará diferentes limites que decidem se os dados dentro de uma célula representam um zero ou um.
Veja como a alteração desses valores aumenta drasticamente o sucesso da leitura quando lidamos com chips NAND individuais usando um software de recuperação de dados especializado:
https://youtu.be/pSIJKt_uBfc
Observe que o software no vídeo tenta emular o que os controladores de SSD (e outros controladores de flash) fazem para recuperar dados do NAND durante operações normais.
Isso tem pouco valor prático para um usuário de SSD, mas significa demonstrar um processo que os SSDs aplicarão em tempo real para 'recuperar' dados. Todos esses procedimentos de recuperação de erros levam tempo e farão com que o SSD pareça lento.
TRIM ativado não significa que o Windows irá TRIM
Mesmo assim, o Windows apenas TRIM unidades NTFS. Portanto, se você, por qualquer motivo estranho, decidir usar o exFAT, o Windows não enviará comandos TRIM.
Também notei que certos erros do sistema de arquivos farão com que o Windows não envie comandos TRIM.
Estes são apenas exemplos para ilustrar que, mesmo que você suspeite que o Windows envie comandos TRIM porque está configurado para isso, isso não significa que sempre enviará.
Também precisamos entender o que o TRIM faz e o que não faz e como isso afeta principalmente as velocidades de gravação. O TRIM em si não faz nada, é simplesmente um comando que permite que um sistema operacional ou utilitário notifique sobre os endereços LBA que o SSD está livre para apagar.
Portanto, agora o SSD pode colocá-los de lado para o 'coletor de lixo', que os reorganizará para apagar os blocos que pode apagar. Nesse ponto, as páginas dentro do bloco de apagamento estão prontas para uso novamente.
Esses processos levam tempo e, portanto, mesmo se estivermos lidando com um SSD com 50% de espaço livre, se reescrevermos constantemente os 50% de espaço ocupado, ainda há uma chance de o coletor de lixo não conseguir acompanhar e temos que esperar o SSD para liberar páginas para os dados que queremos gravar.
Os dados SMART podem ser úteis
Acho que, com esse tipo de pergunta, em vez de nos dizer que o SMART está OK, você deve postar uma captura de tela real ou um relatório txt.
Efeito da temperatura
O calor não apaga os SSDs, mas pode de fato propagar o 'sangramento de carga', o fenômeno em que o nível de carga em células individuais cai. Mas muitas coisas influenciam os níveis de carga dentro das células, até mesmo ler e escrever nas células vizinhas pode 'injetar' carga. Escrever enquanto está 'frio', ler enquanto está quente também é potencialmente ruim.
Voltando aos registradores RR especiais que mencionei anteriormente:
Colegas meus, muito mais proficientes do que eu em recuperação de dados SSD e NAND, observaram efeitos da temperatura na qualidade das leituras e até mesmo em um grau em que precisariam empregar RR ou não. IOW, resfriando os chips NAND ou aquecendo-os, a necessidade de RR desapareceu e foi levantada a hipótese de que, resfriando ou aquecendo o NAND, a temperatura estava mais próxima da temperatura no momento em que o NAND foi programado ou gravado.
Em vez de congelá-lo, cuidar de uma temperatura ambiente constante pode ser o melhor caminho a percorrer.
Ler/escrever varreduras de superfície
Para detectar problemas de leitura, não há necessidade de desperdiçar um ciclo p/e inteiro, você pode apenas ler a unidade. Uma varredura de leitura/gravação usando dd não apenas grava uma vez, mas induz um grande número de eventos de 'amplificação de gravação'.
Além disso, depois de gravar em cada setor do LBA, todo o espaço do LBA será 'mapeado' no FTL, deixando apenas o espaço superprovisionado para o coletor de lixo apagar as páginas obsoletas.
É como utilizar o sistema de arquivos 100%, o que, como sabemos, não é uma boa ideia em um SSD. Deve ser capaz de lidar com isso, mas está longe de ser o IMO ideal.
Se você apagar a unidade inteira ou ler/gravar nela usando dd, pelo menos certifique-se de APARAR todo o espaço ao colocar a unidade de volta em uso, por exemplo, usando https://github.com/tenox7/disktrim .
Palavras finais
Comparar um SSD 'virgem' com um SSD de 2 anos, assumindo especificações comparáveis, sempre favorecerá o novo SSD.
Se as especificações forem diferentes, a comparação é injusta. Um SSD mais moderno ou um SSD melhor equipado (CPU ARM mais eficiente, melhor firmware, mais pseudo SLC NAND e outros enfeites) pode fazer o SSD mais antigo parecer 'doente' enquanto está fazendo o que pode sob um conjunto específico de circunstâncias.
Fazer backup do SSD, TRIM toda a 'superfície' e, em seguida, restaurar os dados do backup deve restaurar em grande parte as velocidades esperadas, embora isso nunca neutralize o 'desgaste'.