O que os números de velocidade de um SSD realmente dizem

Desempenho sequencial e aleatório, por que o número da caixa descreve o caso mais raro, e como lê-lo sem se enganar.

Atualizado

Nesta página
  1. O que a velocidade sequencial e a aleatória realmente medem
  2. Que tipo de trabalho sua máquina realmente faz
  3. Por que o número da caixa é a leitura sequencial
  4. Por que a velocidade de escrita cai no meio de uma cópia grande
  5. Como ler uma velocidade anunciada sem se enganar
  6. No que comparamos, e o que não conseguimos ver

O número em destaque na caixa de um SSD é a leitura sequencial: a velocidade com que o disco move um único arquivo grande quando muitas requisições estão em andamento ao mesmo tempo. Essa é a situação que sua máquina produz com menos frequência. A inicialização, a abertura de um aplicativo e a maioria das coisas que você realmente espera dependem de um número totalmente diferente.

Isso não o torna inútil. Faz dele uma afirmação estreita, sobre um único tipo de trabalho.

O que a velocidade sequencial e a aleatória realmente medem

Sequencial e aleatório não são duas velocidades da mesma coisa. Elas se expressam em unidades diferentes, porque o que as limita não é a mesma coisa.

A taxa sequencial se expressa em megabytes por segundo, e descreve uma única transferência longa levada de ponta a ponta. Os bytes por segundo são a unidade certa porque o trabalho é um objeto único de tamanho conhecido, e o tempo que ele leva é esse tamanho dividido pela taxa.

O desempenho aleatório se expressa em IOPS — operações de entrada/saída por segundo — em geral para requisições de 4 KB. Mova o mesmo total em pedaços de 4 KB e deixa de ser um objeto para virar milhões deles. As operações são a unidade certa porque os bytes deixam de contar. Cada requisição carrega um custo fixo: determinar onde os dados estão fisicamente, emitir o comando, devolver a resposta. A 4 KB, esse custo representa a maior parte do tempo gasto, de modo que o disco é limitado pelo número de requisições que consegue processar, e não pela largura do seu caminho até a flash.

Existe um terceiro número, que quase nada indica. A latência é o tempo que uma requisição leva quando nada mais está esperando. A taxa e os IOPS descrevem um disco sob carga; a latência o descreve quando você é o único a pedir, o que representa a maior parte da vida de um PC de mesa.

Que tipo de trabalho sua máquina realmente faz

Os números das fichas técnicas são obtidos sob uma carga que um PC de mesa raramente cria: vários processos emitindo requisições continuamente, mantendo cheias as filas do disco. O uso comum de um PC de mesa se apoia em algumas requisições, muitas vezes em uma só.

A profundidade de fila é o número de requisições entregues ao disco e ainda não atendidas. É aí que as interfaces de fato diferem, mas não da forma como isso costuma ser apresentado. O SATA não trata uma requisição por vez: o enfileiramento nativo de comandos lhe dá uma fila única capaz de conter até 32 comandos. O que o NVMe acrescenta são muitas filas em vez de uma só, cada uma bem mais profunda, com menos trabalho para o host por comando. Isso vale muitíssimo para um servidor. Vale bem menos para uma única sessão de mesa.

Se um PC de mesa não consegue encher essas filas, é porque suas pequenas leituras dependem umas das outras. Abrir um aplicativo lê um arquivo que designa o próximo arquivo a ler. A inicialização percorre uma longa cadeia dessas leituras. Cada etapa precisa terminar antes que a seguinte seja conhecida, de modo que elas não podem ser emitidas em paralelo por mais filas que estejam disponíveis, e o total é uma soma de latências, e não uma divisão pela largura de banda. É por isso que um disco que exibe várias vezes o número de outro não abre seu cliente de e-mail várias vezes mais rápido.

Por que o número da caixa é a leitura sequencial

Os fabricantes imprimem a leitura sequencial porque é o número que se comporta melhor na medição. É estável de um teste para outro, praticamente igual em um disco cheio e em um disco vazio, e limitado pela interface — por isso progride de forma limpa a cada geração e dá ao disco deste ano um número visivelmente maior para imprimir do que o do ano passado.

É também a afirmação menos custosa de sustentar. O desempenho aleatório depende de como o disco é usado, do quanto está cheio e do que ele fazia um minuto antes. A leitura sequencial em um disco novo é quase uma propriedade do hardware.

Por que a velocidade de escrita cai no meio de uma cópia grande

A velocidade de escrita não é um único número. Quase todos os discos recebem os dados que chegam em uma zona de cache rápida, depois os dobram em sua forma permanente mais lenta: há, portanto, uma taxa em cache e uma taxa nativa por baixo, e a caixa anuncia a primeira. Essa zona é o cache SLC, flash operada a um bit por célula. Como escolher um SSD explica o que fixa a taxa por baixo, e SSD TLC, QLC e sem DRAM explica de onde vem o cache e por que escrever nele custa ao disco uma segunda escrita mais tarde.

O que importa aqui é a forma da curva. Uma cópia começa na taxa em cache, mantém-na enquanto o cache dura, depois cai — às vezes um pouco, às vezes até uma fração dessa taxa — e permanece baixa pelo resto da transferência. Duas coisas decidem se você encontra essa queda: a quantidade que você escreve de uma só vez, e a quantidade de cache de que o disco dispõe naquele instante.

É por isso que um teste que escreve apenas um gigabyte ou dois lhe ensina pouca coisa. Na maioria dos discos, essa quantidade cai inteiramente no cache, de modo que o resultado é a taxa em cache por mais lento que o disco seja por baixo. Um teste que fosse até esgotar o cache relataria duas taxas e o ponto em que a primeira vira a segunda. Quase nenhum o faz, e nenhuma ficha técnica o faz.

O cache também precisa de tempo livre para se esvaziar. Inicie uma segunda cópia grande logo depois da primeira e ela pode começar mais lenta, porque o disco ainda está processando a primeira. Qual capacidade de SSD escolher trata do lado do espaço livre da questão, a outra alavanca sobre a quantidade de cache de que você dispõe.

Como ler uma velocidade anunciada sem se enganar

Trate o valor anunciado como um marcador de faixa, e não como uma nota. Ele agrupa os discos em categorias grosseiras, e dentro de uma categoria diz muito pouco. A diferença entre dois números não sobrevive ao contato com o seu uso: um disco anunciado como duas vezes mais rápido não é duas vezes mais rápido em nada além de uma cópia de arquivos grandes.

Um valor anunciado é um teto em condições favoráveis, não um piso. Ele foi medido em um disco vazio, frio, com as filas mantidas cheias. Seu disco não está em nenhum desses estados durante a maior parte de sua vida.

Leia o número de escrita ao lado do número de leitura, e não isoladamente. E quando dois discos são separados por um múltiplo em vez de uma margem, em geral é a geração da interface que fala, e isso é uma questão de compatibilidade antes de ser uma questão de velocidade. NVMe ou SATA explica qual a sua máquina aceita.

No que comparamos, e o que não conseguimos ver

Comparamos os SSD por três números: a capacidade, a leitura sequencial e a escrita sequencial. Quanto maior, melhor em cada um deles, e é tudo o que a nossa comparação sabe sobre velocidade.

Usamos a leitura sequencial sabendo que é o número mais fraco da caixa. Ficamos com ela porque é o único número que praticamente todas as fichas técnicas indicam, em todas as faixas de preço. Os números aleatórios e a latência lhe diriam mais, mas só são indicados por alguns fabricantes em alguns discos, e uma comparação que só funcionasse com os discos generosamente documentados deixaria de lado a metade mais barata do mercado. Isso não é uma comparação. É uma lista restrita de discos com boa documentação.

O compromisso é o mesmo nos dois sentidos: um número mais fraco que cobre tudo vale mais do que um melhor que cobre só um terço, desde que digamos qual usamos.

Os IOPS de leitura aleatória e de escrita aleatória são campos que mantemos em um SSD, mas são opcionais, e a maioria dos anúncios que coletamos nunca os indica. Nenhum dos dois é um critério pelo qual comparamos os discos, e também não filtramos por eles. Essa ausência é a do mercado, e não um juízo de que esses números não teriam importância.

Cada SSD do nosso catálogo está em uma única página.

Perguntas frequentes

Uma leitura sequencial mais alta faz meu PC parecer mais rápido?
Raramente. A inicialização e a abertura de aplicativos são feitas de muitas pequenas leituras dispersas, que dependem do desempenho aleatório e da latência. A velocidade sequencial aparece na cópia de arquivos grandes.
O que é o cache SLC, e por que a velocidade de escrita cai?
A maioria dos discos escreve primeiro os dados que chegam em uma zona de cache rápida, depois os move para um armazenamento permanente mais lento. Escreva dados suficientes de uma só vez para encher esse cache e a velocidade cai para a taxa nativa do disco.

Guias desta categoria