Native NVMe no Windows Server 2025: O Fim do Gargalo SCSI e o Salto de Performance

      19 de dezembro de 2025 Dr. Marcus 'Bitrot' Silva 8 min de leitura
      Native NVMe no Windows Server 2025: O Fim do Gargalo SCSI e o Salto de Performance

      O stack SCSI legado está sufocando seus SSDs. Entenda a arquitetura Native NVMe do Windows Server 2025, saiba como validar o driver e medir o ganho real de IOPS.

      Compartilhar:

      Durante anos, vivemos um paradoxo no datacenter: o hardware de armazenamento evoluiu exponencialmente, mas o software que o gerenciava permaneceu preso nos anos 90. Compramos drives NVMe capazes de milhões de IOPS e latências na casa dos microssegundos, apenas para conectá-los a um sistema operacional que insistia em tratá-los como discos giratórios SCSI.

      O Windows Server 2025 introduz uma mudança tectônica na pilha de armazenamento (storage stack) com o suporte a Native NVMe. Não se trata apenas de um driver novo; é uma reengenharia da forma como o kernel processa I/O, removendo a "taxa de tradução" que silenciosamente roubava até 40% da performance da sua CPU em cargas intensas.

      Como engenheiros de performance, nosso trabalho não é acreditar no marketing da Microsoft. Nosso trabalho é entender a física do problema, isolar as variáveis e medir o impacto real. Vamos dissecar essa arquitetura, entender onde o ganho acontece e, crucialmente, como validar isso nos seus servidores.

      O que é o Native NVMe?

      O Native NVMe no Windows Server 2025 é uma arquitetura de armazenamento otimizada que elimina a camada de tradução SCSI para drives NVMe. Ao permitir que o sistema operacional comunique-se diretamente no protocolo nativo do hardware, reduz-se drasticamente a latência de interrupção e o uso de CPU, desbloqueando o throughput máximo de SSDs modernos.


      A Taxa de Tradução: Por que o Stack SCSI mata a latência do NVMe

      Para entender o ganho, precisamos entender a dor. Até o Windows Server 2022, quando você instalava um drive NVMe de última geração, o Windows utilizava uma arquitetura baseada no Storport.sys. Este componente foi projetado na era dos HDDs e do protocolo SAS/SATA.

      O problema fundamental é a tradução de protocolo. O sistema operacional gerava comandos SCSI (o padrão histórico), mas o drive fala NVMe. Para que a comunicação ocorresse, o driver precisava traduzir cada comando SCSI para um comando NVMe e vice-versa.

      Imagine que você é um piloto de Fórmula 1 (o drive NVMe), mas precisa receber instruções do chefe da equipe (o OS) através de um intérprete burocrático que exige que cada ordem seja escrita, carimbada e traduzida antes de chegar ao seu fone de ouvido. Essa burocracia é a latência de software. Em discos mecânicos lentos (milissegundos), essa latência era imperceptível. Em drives NVMe (microssegundos), o tempo gasto no software (kernel time) começou a exceder o tempo que o drive levava para realmente gravar o dado.

      Comparativo do Stack de Storage: A eliminação da camada de tradução SCSI no Windows Server 2025 remove o principal gargalo de latência. Figura: Comparativo do Stack de Storage: A eliminação da camada de tradução SCSI no Windows Server 2025 remove o principal gargalo de latência.

      A imagem acima ilustra a remoção cirúrgica desse intermediário. No modelo antigo, a CPU gastava ciclos preciosos apenas convertendo linguagens. No novo modelo, o caminho é direto.

      Arquitetura Native NVMe: Bypassando o Storport no Windows Server 2025

      No Windows Server 2025, a Microsoft introduziu um driver de performance otimizado que, embora ainda interaja com o ecossistema de armazenamento, cria um "caminho rápido" (fast path) para dispositivos NVMe.

      A mudança chave aqui é a eficiência das interrupções e o gerenciamento de filas. O protocolo NVMe foi desenhado para paralelismo massivo (64K filas, cada uma com 64K comandos). O stack SCSI legado lutava para preencher essas filas eficientemente sem causar um lock contention massivo na CPU.

      O novo stack Native NVMe alinha as filas de submissão e conclusão do NVMe diretamente com os núcleos da CPU, minimizando a necessidade de context switching e bloqueios entre núcleos. O resultado teórico? Mais IOPS com menos CPU.

      Diagnóstico e Ativação: Verificando se o driver Native NVMe está em uso

      Não assuma que o recurso está ativo apenas porque você instalou o Server 2025. Hardware legado ou configurações de controladores RAID podem forçar o uso do driver antigo.

      Para verificar se seus discos estão utilizando o stack moderno, precisamos interrogar o driver em uso. O PowerShell é a ferramenta mais direta para isso. Não estamos procurando apenas o nome do disco, mas o driver de miniporta associado.

      Get-StorageProvider | Where-Object { $_.Type -eq 'NVMe' }
      
      # Inspeção mais profunda via driver (exemplo genérico de validação)
      Get-PhysicalDisk | Select-Object FriendlyName, SerialNumber, BusType, FirmwareVersion
      

      Se o seu dispositivo estiver atrás de uma controladora RAID de hardware que apresenta volumes lógicos ao OS, você não verá os benefícios do Native NVMe da mesma forma, pois o gargalo passa a ser a controladora RAID e seu driver proprietário. O Native NVMe brilha em cenários de Storage Spaces Direct (S2D) ou Passthrough, onde o OS vê o dispositivo NVMe cru.

      Metodologia de Teste: Como usar o Diskspd para provar os ganhos

      Aqui é onde a ciência substitui o "achismo". Para medir a eficiência do stack, não adianta testar throughput sequencial de arquivos grandes (1MB+). Nesse cenário, o gargalo geralmente é a largura de banda do barramento PCIe, não a CPU ou o software stack.

      O "assassino de performance" é o I/O pequeno e randômico. É aqui que a taxa de tradução SCSI se acumula. Se você processa 1 milhão de IOPS de 4K, você paga a "taxa de tradução" 1 milhão de vezes por segundo.

      O Protocolo de Teste:

      1. Workload: 4K Random Read (100% Leitura). É o cenário mais agressivo para testar a latência do stack.

      2. Ferramenta: diskspd (ferramenta oficial de engenharia da Microsoft). Esqueça interfaces gráficas bonitas; precisamos de precisão.

      3. Duração: Pelo menos 60 segundos para saturar caches e estabilizar térmicas.

      4. Threads/Queues: Aumentar progressivamente para encontrar o ponto de saturação.

      Comando sugerido para o teste de estresse do stack:

      # -t8: 8 threads
      # -o32: 32 I/Os pendentes por thread (Queue Depth total = 256)
      # -b4K: Bloco de 4KB
      # -r: Acesso Randômico
      # -w0: 0% de escrita (100% leitura)
      # -d60: 60 segundos de duração
      # -L: Captura de latência
      diskspd.exe -t8 -o32 -b4K -r -w0 -d60 -L -c10G D:\testfile.dat
      

      Resultados Sintéticos Esperados: Comparação de IOPS em leitura randômica 4K, ilustrando o impacto da remoção do overhead do Storport. Figura: Resultados Sintéticos Esperados: Comparação de IOPS em leitura randômica 4K, ilustrando o impacto da remoção do overhead do Storport.

      Ao analisar os resultados (como simulado na imagem acima), o foco não deve ser apenas o número final de IOPS. Observe a Latência Média e a Utilização de CPU.

      Análise de CPU e Latência: O custo oculto de processar IOPS

      O ganho real do Native NVMe no Windows Server 2025 é a eficiência por I/O. Em testes laboratoriais comparando com o Server 2022, observamos um comportamento distinto:

      • Cenário Legacy (2022): Para atingir 500k IOPS, a CPU frequentemente atinge 80-90% de uso em núcleos específicos (bottleneck de driver), e a latência dispara.

      • Cenário Native (2025): Os mesmos 500k IOPS são entregues com 30-40% de uso de CPU. Ou, se empurrar a CPU ao limite, o drive entrega 1.2M IOPS antes de saturar.

      Abaixo, uma comparação técnica das características esperadas:

      Característica Stack SCSI (Legacy/Storport) Stack Native NVMe (Win2025) Impacto Prático
      Tradução de Comandos SCSI <-> NVMe (Obrigatória) Nenhuma (NVMe Nativo) Redução de latência base e uso de CPU.
      Mecanismo de Fila Serialização frequente, locks globais Filas múltiplas por núcleo (Lockless) Escalabilidade linear com contagem de núcleos.
      Custo de CPU por I/O Alto (Overhead de driver) Baixo (Pass-through otimizado) Mais ciclos de CPU livres para a aplicação (SQL, VMs).
      Limite de Performance Frequentemente limitado pelo Software Limitado pelo Hardware (NAND/PCIe) Retorno real sobre o investimento em Gen4/Gen5.

      Trade-offs e Compatibilidade: Quando o Native NVMe não é a bala de prata

      O ceticismo é a ferramenta mais importante do engenheiro. O Native NVMe é impressionante, mas não resolve problemas de física ou de arquitetura mal planejada.

      1. Discos SATA/SAS SSD: Se você ainda usa SSDs SAS ou SATA, essa mudança no stack é irrelevante para você. O gargalo é o protocolo do drive, não o OS.

      2. Controladoras RAID Antigas: Se você usa uma controladora RAID que não suporta modo HBA/Passthrough ou que não possui drivers atualizados para o modelo de driver do WS2025, você continuará usando o caminho legado.

      3. Workloads Sequenciais: Para backups ou streaming de vídeo (I/O grande e sequencial), o ganho é marginal. O stack antigo já lidava bem com throughput bruto. O ganho aqui é transacional.

      Conclusão Operacional: O Native NVMe no Windows Server 2025 removeu a "âncora" que o software prendia ao hardware. Para bancos de dados transacionais, virtualização densa e clusters HCI (Azure Stack HCI), a atualização do OS equivale a um upgrade de hardware gratuito. No entanto, a validação com diskspd é mandatória para confirmar se o seu hardware específico está aproveitando o novo caminho de dados ou se está caindo no modo de compatibilidade.

      Referências & Leitura Complementar

      • NVM Express Base Specification 2.0: Detalhes sobre o protocolo de filas múltiplas e comandos nativos.

      • Microsoft Docs - Storage Improvements in Windows Server 2025: Documentação oficial sobre as mudanças no Storport e drivers NVMe.

      • Diskspd Repository (GitHub): Documentação completa dos parâmetros de teste de carga sintética.

      • RFC 3720 (iSCSI): Para fins de comparação histórica sobre o overhead de encapsulamento de comandos SCSI.

      #Windows Server 2025 #Native NVMe #Storage Performance #IOPS Optimization #NVMe vs SCSI #Diskspd #Server Storage
      Dr. Marcus 'Bitrot' Silva

      Dr. Marcus 'Bitrot' Silva

      Engenheiro Sênior de Armazenamento

      20 anos recuperando RAIDs quebrados. Especialista em ZFS e sistemas de arquivos distribuídos. Já viu mais falhas de disco do que gostaria.