O que é a amplificação de gravação? O custo oculto da gravação nos SSD

Na era de discos rígidos mecânicos, os novos dados podem ser gravados diretamente sobre os dados existentes no local de armazenamento original. A quantidade de dados que o computador solicita para gravar é exatamente a quantidade que o disco rígido grava fisicamente. Unidades de estado sólido (SSDs) funcionam de uma forma completamente diferente, o que dá origem a um fenómeno único denominado «amplificação de gravação». A amplificação de gravação é um fenómeno exclusivo do armazenamento SSD. Em termos simples, quando o computador envia um pedido de gravação para um SSD, a quantidade total de dados físicos gravados nos chips NAND flash é superior à quantidade de dados lógicos solicitados pelo sistema operativo, devido à limitação física de Flash NAND.

Imagina que queres editar o texto numa página do caderno. Mas não lhe é permitido riscar diretamente as palavras antigas. Tem de escrever o novo conteúdo em páginas em branco e marcar as páginas antigas como inúteis. À medida que as páginas em branco se esgotam, tem de reorganizar todo o caderno: copiar todo o texto ainda útil para páginas em branco num caderno novinho em folha e, em seguida, apagar todo o caderno antigo para que possa ser reutilizado mais tarde. O total de páginas que acaba por escrever é muito superior ao pequeno texto que inicialmente pretendia editar. Este trabalho extra de escrita é uma metáfora simples para a amplificação da escrita.

Métrica de avaliação principal

O valor-chave que mede a gravidade da amplificação de escrita denomina-se Fator de Amplificação de Gravação, abreviado como WAF. Segue uma fórmula fixa e clara:

WAF = Total de dados físicos gravados na memória Flash / Total de dados lógicos solicitados pelo anfitrião

Num cenário ideal, a memória flash grava exatamente a mesma quantidade de dados que o anfitrião solicita, o que resulta num valor de WAF igual a 1. No entanto, as regras físicas da memória flash NAND tornam este estado ideal quase impossível na prática. Em condições normais de funcionamento, o WAF é sempre superior a 1. Um WAF mais elevado significa uma sobrecarga interna adicional de gravação no SSD, o que acelera o desgaste da memória flash e prejudica o desempenho.

Causas fundamentais da amplificação de gravação

A amplificação de gravação não é um defeito de conceção dos SSDs. Trata-se de um resultado inevitável decorrente dos limites físicos da memória flash NAND, em combinação com os vários processos de manutenção automática que decorrem no interior da unidade.

oscoo 2b banner 1400x475 1 O que é a amplificação de gravação? O custo oculto da gravação nos SSD

Limitações físicas da memória flash NAND

Este é o pré-requisito básico para que a amplificação de gravação exista. Ao contrário dos discos rígidos mecânicos, que suportam a sobrescrita no próprio local, a memória flash NAND tem regras rigorosas de leitura e gravação: não é possível substituir diretamente os dados antigos no seu local de armazenamento original. É necessário apagar completamente um bloco antes de gravar novos dados nele. O que agrava ainda mais esta situação é a incompatibilidade entre a menor unidade de gravação e a menor unidade de apagamento. A menor unidade para gravar dados é uma página, semelhante a uma única folha de papel. A menor unidade para apagar dados é um bloco, que contém centenas de páginas, como um capítulo inteiro. Não é possível apagar apenas uma única página; é necessário apagar o bloco inteiro de uma só vez.

Devido a esta regra, os SSD utilizam um modelo de atualização fora do local. Quando edita um ficheiro existente, o controlador do SSD não altera a página que contém os dados antigos. Em vez disso, grava os novos dados em páginas livres e marca as páginas antigas como inválidas para posterior limpeza. Esta incapacidade de reescrever os dados na sua posição original é a origem de toda a sobrecarga adicional de gravação.

Reescritas de dados decorrentes da recolha de lixo

Recolha de lixo é a principal fonte de amplificação de gravação. À medida que os dados vão sendo guardados, o número de blocos livres no SSD diminui. O controlador executa automaticamente a recolha de lixo para libertar espaço de armazenamento utilizável. O seu fluxo de trabalho completo funciona da seguinte forma: o controlador seleciona um bloco antigo com uma elevada percentagem de páginas inválidas, lê todos os dados ainda válidos dentro do bloco, copia os dados válidos para blocos livres completamente novos e, em seguida, apaga totalmente o bloco antigo para o transformar novamente em espaço utilizável. Durante este processo de cópia de dados, nem o utilizador nem o sistema operativo enviam quaisquer novos comandos de gravação. No entanto, o SSD tem de reescrever os dados válidos automaticamente apenas para libertar espaço de armazenamento. Estas gravações internas constituem a parte principal da amplificação de gravação.

Migração de dados a partir do nivelamento de desgaste

O mecanismo de nivelamento de desgaste também gera uma sobrecarga adicional de gravação. Cada bloco de memória flash tem um número máximo fixo de ciclos de apagamento, conhecidos como ciclos P/E. Se um pequeno grupo de blocos for constantemente apagado e reescrito, estes esgotarão a sua vida útil prematuramente e danificarão todo o SSD. Para equilibrar a velocidade de desgaste em todos os blocos de memória flash, o controlador executa o nivelamento de desgaste em segundo plano. No caso dos dados inativos (ficheiros que não são modificados há muito tempo), o controlador transfere-os de blocos com poucos ciclos de apagamento para blocos com muitos ciclos de apagamento. Desta forma, reserva os blocos com uma vida útil mais longa para os dados ativos, que são reescritos com frequência. Esta movimentação de dados, realizada para equilibrar o desgaste, aumenta o total de gravações físicas e eleva o valor do WAF.

Sobrecarga de metadados para gestão interna

Para além dos dois principais processos acima referidos, a gestão interna do SSD gera pequenas, mas contínuas, gravações adicionais. A tabela de mapeamento FTL, que traduz endereços lógicos em posições físicas na memória flash, os registos de blocos danificados, que registam áreas de armazenamento avariadas, e as tabelas de contagem de desgaste, que acompanham os ciclos de apagamento de cada bloco, são atualizados constantemente durante a leitura e gravação de ficheiros. Cada atualização consome recursos de gravação da memória flash. Tarefas adicionais, como a gravação de códigos de correção de erros (ECC) juntamente com os dados do utilizador e a movimentação de dados para substituir blocos danificados, também contribuem para o total de gravações físicas, atuando como fatores secundários na amplificação de gravação.

Fatores-chave que afetam o WAF

O valor do WAF não é fixo. Varia consideravelmente em função das especificações do hardware SSD, dos hábitos dos utilizadores e das definições do sistema. Existem cinco fatores principais que determinam se o WAF será elevado ou baixo.

Provisionamento em excesso e espaço de armazenamento livre

O «over-provisioning» (OP) refere-se ao espaço flash adicional reservado pelos fabricantes de SSDs, ao qual os utilizadores não têm acesso nem podem utilizar. Este espaço é reservado exclusivamente para tarefas internas, incluindo a recolha de lixo, o nivelamento de desgaste e a substituição de blocos danificados. Uma taxa de over-provisioning mais elevada proporciona à recolha de lixo mais blocos livres à escolha, reduz a quantidade de dados válidos que é necessário copiar por cada bloco reciclado e diminui o WAF.

Para além do over-provisioning definido de fábrica, o espaço livre nas partições do utilizador proporciona o mesmo efeito de otimização. Quando o comando TRIM está ativado, um maior espaço livre no SSD faz com que a recolha de dados inúteis funcione de forma mais eficiente. Se o SSD estiver quase cheio, os blocos livres tornam-se escassos. O controlador tem de copiar dados com muito mais frequência, e o WAF regista um pico acentuado.

Padrões de carga de trabalho de gravação

A forma como os dados são gravados determina diretamente o nível de referência da amplificação de gravação. A gravação sequencial ocorre normalmente ao copiar vídeos de grande dimensão ou ficheiros de imagem de disco. Os dados preenchem os blocos de memória flash de forma contínua e, quando eliminados, blocos inteiros tornam-se inválidos em simultâneo. A recolha de lixo quase não necessita de copiar dados válidos, pelo que o WAF se mantém muito próximo de 1. Enquanto rA escrita aleatória aplica-se a muitos ficheiros pequenos e dispersos, registos do sistema e ficheiros de cache. Os dados estão espalhados por diferentes blocos de memória flash e, em cada bloco, apenas algumas páginas ficam inválidas. A recolha de lixo tem de copiar grandes quantidades de conteúdo válido, o que aumenta acentuadamente o WAF. Os cenários comuns de escrita aleatória incluem o cache de software de escritório, ficheiros temporários do navegador e atualizações frequentes de aplicações.

Estado do comando TRIM

TRIM é um comando especial de protocolo de transmissão concebido para SSDs. A sua função principal é partilhar o estado dos dados entre o sistema operativo e a unidade de estado sólido. Normalmente, a eliminação de um ficheiro limita-se a marcar o índice do ficheiro como inválido no sistema. Não informa o SSD de que os dados relacionados já não são necessários. O controlador não consegue distinguir as páginas válidas das inválidas e copia todas as páginas durante a recolha de lixo, criando gravações adicionais desnecessárias. Quando a função TRIM está ativada, o sistema indica ao SSD quais os endereços lógicos que contêm dados inúteis imediatamente após a eliminação de ficheiros. O controlador marca antecipadamente essas páginas como passíveis de limpeza. A recolha de lixo evita a cópia de dados inválidos, reduz significativamente o volume de gravação adicional e diminui eficazmente o WAF.

Tipos de memória flash NAND

As diferentes arquiteturas de chips flash apresentam níveis de amplificação de escrita de referência distintos. Desde SLC, MLC e TLC até QLC, a densidade de armazenamento continua a aumentar. Ao mesmo tempo, os tamanhos das páginas e dos blocos flash tornam-se maiores, o que aumenta a sobrecarga de cópia de dados durante a recolha de lixo e eleva gradualmente o valor de referência da WAF. Os chips QLC e TLC de alta densidade têm uma vida útil nativa de ciclos P/E mais curta, pelo que a perda de vida útil causada pela amplificação de escrita torna-se mais evidente. Em comparação com a antiga NAND 2D, a NAND 3D tem blocos de maior dimensão, mas o firmware otimizado proporciona um melhor controlo da WAF. Os seus ciclos P/E mais longos também compensam parte do impacto negativo decorrente da sua estrutura física.

Estratégia de cache SLC

Quase todos os SSDs TLC e QLC convencionais destinados ao consumidor utilizam um mecanismo de cache SLC. Parte dos chips flash é configurada para funcionar no modo SLC rápido, a fim de processar os pedidos de gravação recebidos. Os dados são inicialmente gravados rapidamente na área de cache SLC. Quando o SSD está inativo, o controlador transfere os dados armazenados em cache para as regiões de armazenamento nativas TLC ou QLC. Este processo de gravar os mesmos dados duas vezes na memória flash faz com que o WAF aumente. 

Impactos da amplificação de gravação nos SSDs

A amplificação de gravação gera uma sobrecarga oculta em segundo plano no interior dos SSDs e não aparece diretamente nos painéis de velocidade de leitura/gravação do sistema. No entanto, a longo prazo, afeta negativamente o desempenho da unidade em três áreas fundamentais: vida útil, desempenho operacional e consumo de energia, além da geração de calor.

Redução da vida útil do Flash. Este é o efeito negativo mais grave da amplificação de gravação. Cada bloco de armazenamento flash tem um limite máximo fixo de ciclos de apagamento, designado por ciclos P/E, que constitui o principal parâmetro para avaliar Vida útil da SSD. A amplificação de gravação aumenta desnecessariamente a frequência de apagamento da memória flash e acelera o esgotamento da vida útil.

Desempenho reduzido na gravação em condições reais. As cópias massivas de dados em segundo plano resultantes da amplificação de gravação ocupam a largura de banda de leitura/gravação dos canais flash e retiram recursos de hardware às tarefas normais de gravação dos utilizadores. Um WAF mais elevado significa que a unidade tem de executar mais operações internas de leitura e gravação para processar o mesmo pedido de gravação do anfitrião. Isto aumenta a latência de gravação e reduz claramente as velocidades de gravação sustentadas.

Maior consumo de energia e riscos de sobreaquecimento. Cada operação de leitura, gravação e apagamento na memória flash consome eletricidade e gera calor. Um valor mais elevado de WAF implica mais operações de cópia internas desnecessárias no SSD, o que aumenta o consumo total de energia. E, no caso de portáteis, tablets e outros dispositivos portáteis, um consumo de energia mais elevado reduz a autonomia da bateria.

Os consumidores comuns precisam de prestar atenção ao WAF?

Na verdade, a maioria dos utilizadores diários não precisa de se concentrar no valor do WAF nem de o medir com frequência. Para uma utilização leve, incluindo trabalho de escritório, navegação na Internet, streaming de vídeo e jogos comuns, o volume diário de gravação de dados do SSD mantém-se baixo. Mesmo que o valor do WAF oscile, a unidade pode funcionar sem problemas durante 5 a 10 anos, dentro da sua vida útil nominal de apagamento. É praticamente impossível desgastar a memória flash através da utilização regular. Além disso, os controladores de SSD de nova geração e o firmware maduro suprimem eficazmente a amplificação de gravação, pelo que os utilizadores quase não sentem quaisquer impactos negativos no funcionamento diário.

Apenas os utilizadores que realizam muitas gravações poderão ter de estar atentos a este fator. Este grupo inclui pessoas que trabalham em edições de vídeo 4K/8K durante longas horas, transferências diárias de grandes volumes de ficheiros, tarefas de download ininterruptas e armazenamento local de bases de dados. As suas elevadas gravações diárias de dados fazem com que a amplificação de gravação acelere visivelmente o envelhecimento da memória flash.

A amplificação de gravação é uma característica intrínseca e inevitável da arquitetura de armazenamento dos SSD. A sua origem reside nas regras específicas de leitura-apagamento-gravação da memória flash NAND, sendo uma sobrecarga interna necessária para que as unidades possam reescrever dados, equilibrar o desgaste e libertar espaço de armazenamento. Os utilizadores comuns não precisam de considerar a amplificação de gravação como uma ameaça oculta ao desempenho da unidade. Basta adotar bons hábitos, como reservar espaço livre no disco e garantir que o comando TRIM funciona normalmente, e irá reduzir significativamente os efeitos negativos da amplificação de gravação, ao mesmo tempo que desfruta das elevadas velocidades de leitura e gravação oferecidas pelos SSDs.
Deslocar para o topo

Contacte-nos

Preencha o formulário abaixo e entraremos em contacto em breve.

Formulário de contacto Produto