Dicas
- Dicas
- Acessos: 649
Surpresa de armazenamento: por que a latência é mais importante do que a largura de banda
Como você convence os clientes em potencial a comprar? Pinte uma imagem atraente. A motivação supera a precisão.
Vender armazenamento complementar fazendo com que os clientes se concentrem em um número impressionante de largura de banda elimina a ansiedade de muitos clientes. A verdade é diferente.
A largura de banda é um número simples que as pessoas pensam que entendem. Quanto maior for o número, mais rápido será o armazenamento.
Não.
Deixando de lado que muitos números de largura de banda do consumidor são falsos - a velocidade do link não é a velocidade de armazenamento - o desempenho real raramente depende da largura de banda pura.
A largura de banda é uma métrica conveniente, facilmente medida, mas não o fator crítico no desempenho do armazenamento. O que a maioria das ferramentas de desempenho de armazenamento mede é a largura de banda com grandes solicitações. Por quê? Porque pequenas solicitações não usam muita largura de banda.
O gráfico a seguir, produzido com uma ferramenta de armazenamento ATTO, ilustra isso. No eixo X está a largura de banda e no eixo Y está o tamanho do acesso. A correlação é óbvia: pequenas solicitações não usam muita largura de banda.
Referência de unidade em um SSD PCIe interno rápido.
Robin Harris
Mas por que a CPU não emite mais solicitações de E / S para absorver a largura de banda não utilizada? Porque cada I / O leva tempo e recursos - mudanças de contexto, gerenciamento de memória e atualizações de metadados e muito mais - para ser concluído.
Existem muitos pedidos pequenos, mesmo se você estiver editando arquivos de vídeo enormes. Isso porque, nos bastidores, a Unidade de Gerenciamento de Memória (MMU) da CPU está constantemente trocando as páginas menos usadas e trocando quaisquer dados ou segmentos de programa que sua carga de trabalho requer.
O tamanho dessas páginas é fixo em 4 KB para Windows e 16 KB para versões recentes do macOS. Se você tiver muita memória física, inicialmente haverá menos paginação após uma reinicialização, mas com o tempo, conforme você executa mais programas e abre mais guias, a memória física se enche e a troca começa.
Portanto, grande parte do tráfego de E / S para o armazenamento não está sob seu controle direto. Nem requer muita largura de banda.
O QUE É REALMENTE IMPORTANTE?
Latência. Com que rapidez um dispositivo de armazenamento atende a uma solicitação.
Há uma razão óbvia para a importância da latência e outra razão sutil - mas quase tão importante.
Vamos começar com o óbvio.
Digamos que você tenha um dispositivo de armazenamento com largura de banda infinita, mas cada acesso leva 10 milissegundos. Esse dispositivo pode lidar com 100 acessos por segundo (1000ms / 10ms = 100). Se o acesso médio fosse de 16K, você teria uma largura de banda total de 1.600.000 KB por segundo - menos do que as ofertas USB 2.0 nominais de 500 Mbits / s - desperdiçando uma quantidade quase infinita de largura de banda.
Um acesso de 10 ms é em torno do que o disco rígido médio suporta, razão pela qual os fornecedores de armazenamento empacotaram centenas, até milhares, de HDDs para maximizar o acesso. Mas isso foi nos velhos tempos ruins.
Os SSDs de alto desempenho de hoje têm latências bem na faixa de microssegundos, o que significa que podem lidar com tantos I / Os quanto um storage array de um milhão de dólares fazia 15 anos atrás. Somente se você tivesse acesso infinito de 16 KB, você seria limitado pela largura de banda da conexão.
A razão sutil para a importância da latência é mais complicada. Digamos que você tenha 100 dispositivos de armazenamento com um tempo de acesso de 10 ms e sua CPU esteja emitindo 10.000 I / Os por segundo (IOPS).
Seus 100 dispositivos de armazenamento podem lidar com 10.000 IOPS, então não há problema, certo? Errado. Como cada I / O leva 10 ms, sua CPU está fazendo malabarismos com 100 I / Os incompletos. Reduza a latência para 1 ms e a CPU terá apenas 10 E / S incompletas.
Se houver um estouro de I / O, o número de I / Os incompletos pode fazer com que o mapa de página exceda a memória on-board disponível e forçá-lo a iniciar a paginação. O que, como a paginação já é lenta, é uma coisa ruim.
THE TAKE
O problema da latência como métrica de desempenho é duplo: não é fácil de medir; e poucos entendem sua importância. Mas as pessoas vêm comprando e usando interfaces de baixa latência há décadas, provavelmente sem saber por que eram melhores do que interfaces mais baratas e, nominalmente, mais rápidas.
Por exemplo, a vantagem do FireWire sobre o USB 2, embora os números de largura de banda fossem aproximadamente comparáveis, era a latência. USB 2 - 500 Mbits / s - usado um protocolo de acesso de polling com latência mais alta. Uma unidade FireWire sempre pareceria mais rápida do que a mesma unidade via USB, por causa do protocolo de baixa latência. Você poderia inicializar um Mac a partir de uma unidade USB 2, mas a execução de aplicativos era lenta demais.
Da mesma forma, o Thunderbolt sempre foi otimizado para latência, o que é um dos motivos pelos quais ele custa mais.
Comentários são bem-vindos. Esta é uma preparação para outra peça onde eu examino as unidades USB 3.0 e Thunderbolt. Fique atento.
Fonte: ZDNet