Entendendo excesso de provisionamento (OP)

Percentual de Excesso de Provisionamento =

Capacidade Física - Capacidade do Usuário


Capacidade do usuário

Fórmula do percentual de excesso de provisionamento.

Embora as unidades de estado sólido (SSDs) sejam com frequência similares a unidades de disco rígido (HDDs) mecânicas em dimensões físicas (por exemplo, altura, largura e comprimento) e interface externa (por exemplo, interface SATA ou SAS), a operação interna de nível baixo e os componentes de um SSD diferem enormemente do design do disco magnético rotativo de um HDD.

Após a montagem de um SSD, o fabricante do SSD pode reservar um percentual adicional da capacidade total da unidade para Excesso de Provisionamento (OP) durante a programação do firmware. O excesso de provisionamento melhora a performance e frequentemente aumenta a resistência do SSD, ajudando a unidade a durar mais porque a Controladora do SSD tem mais armazenamento Flash NAND disponível para reduzir o desgaste do NAND Flash durante sua vida útil.

Capacidade físicaCapacidade do usuário% de Excesso de ProvisionamentoClasse de aplicação
64GB 60GB 7% Leitura intensiva
96GB 90GB 7% Leitura intensiva
128GB 120GB 7% Leitura intensiva
128GB 100GB 28% More Write Intensive
256GB 240GB 7% Leitura intensiva
256GB 200GB 28% More Write Intensive
512GB 480GB 7% Leitura intensiva
512GB 400GB 28% More Write Intensive
1024GB 960GB 7% Leitura intensiva
1024GB 800GB 28% More Write Intensive
2048GB 1800GB 14% Leitura intensiva
2048GB 1600GB 28% More Write Intensive
Excesso de Provisionamento com base em capacidade e classe de aplicação

As aplicações podem ser mais intensivas em leitura, como as cargas de trabalho de clientes típicos onde um usuário realiza geralmente 20% de gravação para 80% de leitura. Aplicativos empresariais utilizando um dispositivo de armazenamento para cache de leitura seriam intensivos em leitura; se esses aplicativos gravassem mais dados em um dispositivo de armazenamento, então seriam mais intensivos em gravação.

A capacidade de excesso de provisionamento (OP) definida pelo fabricante do SSD pode variar em tamanho, dependendo da classe de aplicação do SSD e do total de capacidade da memória Flash NAND.

Unidades com maiores capacidades e diferentes classes de aplicação são normalmente configuradas com excesso de provisionamento proporcionalmente maior devido às exigências dos recursos para gerenciar mais Flash NAND com o uso dos recursos de Coleta de Lixo, blocos de reserva e proteção de dados aperfeiçoada.

Essa capacidade de excesso de provisionamento não é acessível para o usuário e invisível para o sistema operacional do host. É estritamente reservada para uso da controladora do SSD.

Benefícios do Excesso de provisionamento (OP)

Como o OP aumenta a performance do SSD

Cada dado de memória Flash NAND é formado de múltiplos blocos que contêm ainda uma grande quantidade de páginas.

O Flash NAND pode ser lido e gravado no nível de página, mas somente pode ser apagado no nível de bloco.

Se uma única página precisar ser modificada ou apagada em uma página já programada dentro de um bloco, então todo o conteúdo do bloco, consistindo de múltiplas páginas, deve primeiro ser lido dentro de uma memória temporária e então apagado, antes que o novo conteúdo do bloco possa ser programado para o mesmo endereço de bloco.

A única situação em que uma página pode ser gravada diretamente em um bloco dentro do Flash NAND sem esse círculo tedioso de ler-modificar-gravar é quando a página já está vazia.

Manter uma grande quantidade de blocos vazios e em reserva através do excesso de provisionamento ajuda a preservar o desempenho consistente, especialmente em cenários de gravação randômica que exibem o maior fator de amplificação de gravação (WAF).{{Footnote.N52105}}

Como o OP aumenta a resistência do SSD

Para entender por que um SSD é configurado com excesso de provisionamento e como ele beneficia a controladora do SSD, precisamos nos aprofundar na operação típica de um SSD e as limitações da memória Flash NAND não volátil.

Cada célula Flash NAND tem uma expectativa de vida finita, com base em seu programa e resistência à eliminação de dados (P/E), que é caracterizada durante o processo de fabricação pelo fabricante do Flash NAND, pois cada programa ou função apagar (eliminar) executada em uma célula Flash NAND desgasta a capacidade da célula de armazenar com confiança uma carga elétrica e pode portanto ameaçar a integridade dos dados.

Entretanto, à medida que a geometria NAND migrar de 2D para 3D, a resistência NAND será maior, as densidades do molde irão aumentar e os custos de produção serão reduzidos, tornando os SSDs mais acessíveis.

Para resumir, os três principais fatores que influenciam a resistência do SSD são:
  • Resistência à programação/exclusão do NAND Flash e a complexidade relacionada à geometria da leitura/programação/exclusão (Geometria neste caso inclui as tecnologias de fabricação bidimensional e tridimensional)
  • Capacidade do SSD
  • Capacidade e eficiência da controladora do SSD (coleta de lixo, amplificação de gravação, gerenciamento de blocos, nivelamento de desgaste, código de correção de erro).

Mantendo a performance e a resistência via Excesso de Provisionamento (OP)

Para evitar uma situação onde o SSD está com máxima capacidade de páginas inválidas, o excesso de provisionamento é usado pela função de coleta de lixo da controladora do SSD como uma área de trabalho temporária para controlar fusões programadas de páginas válidas e recuperar blocos com máxima capacidade de páginas inválidas (ou excluídas).

As páginas/blocos recuperados são então adicionados à capacidade de excesso de provisionamento para acomodar operações de gravação da controladora do SSD e maximizar a performance durante o pico de carga do tráfego, já que o impacto causado no desempenho para ler, apagar, modificar e gravar todas as páginas válidas de volta em um bloco já parcialmente cheio contendo páginas inválidas pode ser uma tarefa lenta.

A coleta de lixo opera independentemente do sistema operacional e é acionada automaticamente durante os períodos de baixa atividade, periodicamente ou lançando-se o respectivo comando TRIM de controle do conjunto de dados ATA para programar uma coleta de lixo.

Um número sempre disponível de blocos vazios através da capacidade de excesso de provisionamento ajuda a manter um nivelamento de desgaste efetivo no Flash NAND à medida que a controladora do SSD redistribui com inteligência as operações de gravação por todas as células de memória Flash NAND, sem causar impacto no desempenho geral do SSD durante picos de tráfego da carga.

Além disso, o comando TRIM de controle do conjunto de dados ATA pode aumentar o espaço disponível no SSD recuperando páginas inválidas e capacidade do usuário não utilizada.

Capacidade da unidade formatadaTamanho do excesso de provisionamentoLargura de banda para leitura/gravação sequencialIOPS de leitura/gravação randômica constante de 4kTBW (JEDEC Enterprise{{Footnote.N52105}})DWPD{{Footnote.N37134}}
480GB (DC500R) 7% 550/500MB/s 98K/12K IOPS 438 0.5
480GB (DC500M) 32% 555/520MB/s 98K/58K IOPS 1139 1.3
960GB (DC500R) 7% 555/520MB/s 98K/20K IOPS 876 0.5
960GB (DC500M) 32% 555/520MB/s 98K/70K IOPS 2278 1.3
1920GB (DC500R) 7% 555/520MB/s 98K/24K IOPS 1752 0.5
1920GB (DC500M) 32% 555/520MB/s 98K/75K IOPS 4555 1.3
3840GB (DC500R) 7% 555/520MB/s  98K/28K IOPS  3504  0.5
3840GB (DC500M)  32% 555/520MB/s  98K/75K IOPS 9110  1.3
Excesso de Provisionamento com base em capacidade e classe de aplicação

Para entender os efeitos de OP, iremos examinar os SSDs empresariais Kingston, os SSDs DC500R, como ilustração. Esses SSDs possuem capacidades de até 3,84TB e permitem aos usuários utilizar a ferramenta de Gerenciamento de SSD da Kingston para ajustar o excesso de provisionamento (OP). Ajustando o tamanho de OP, podemos ver os resultados na performance e na resistência ao usar níveis de OP de 7% ou mais.

Quando comparamos cada capacidade, podemos observar o seguinte:
  1. As unidades com maior capacidade (menor OP) em cada par podem conservar as mesmas velocidades de transferência (largura de banda), mas os IOPS de gravação randômica são substancialmente reduzidos. Isso significa que unidades com menor OP terão bom desempenho em aplicações de leitura intensiva, mas podem ficar mais lentas em aplicações de gravação intensiva comparadas a unidades com 32% de OP.
  2. Menor excesso de provisionamento também significa que o TBW (total de bytes gravados) em Terabytes em cada unidade será menor. Quanto maior o percentual de OP, maior será a duração do SSD. Um DC500R de 960GB pode acomodar até 876TB de dados gravados, enquanto que o DC500R de 800GB pode alcançar 860TBW. Os números de TBW são calculados pela Kingston utilizando as cargas de trabalho JEDEC como referência{{Footnote.N52105}}.
  3. Quando os números de TBW são transformados em Gravações da Unidade por Dia (DWPD) durante o período de garantia, podemos observar que as unidades com 32% de OP quase alcançam o dobro da quantidade de gravações por dia. É por isso que um OP de 32% é recomendado para aplicações mais intensivas em gravação.