Windows 11, NVMe e BypassIO: Entenda a Nova Pilha de Storage e a Redução de Latência
O Windows 11 mudou a forma de falar com SSDs. Entenda o BypassIO, DirectStorage e como a remoção de camadas legadas na pilha de I/O reduz a latência real.
Temos drives NVMe Gen5 entregando 14 GB/s e milhões de IOPS, mas o tempo de boot do Windows e o carregamento de aplicações pesadas não escalaram na mesma proporção. A física do hardware mudou drasticamente, mas o software — especificamente a pilha de I/O do sistema operacional — permaneceu preso em abstrações desenhadas para discos rígidos que giravam a 7200 RPM.
Como engenheiros de performance, sabemos que adicionar largura de banda (throughput) não resolve problemas de latência. O gargalo saiu do meio físico (o NAND Flash) e migrou para a CPU e para a burocracia do Kernel. É aqui que entra o BypassIO no Windows 11: uma tentativa cirúrgica de remover a gordura acumulada em 30 anos de desenvolvimento do subsistema de armazenamento.
Neste artigo, vamos dissecar essa nova arquitetura, não com promessas de marketing, mas analisando o caminho do dado, como auditá-lo e quais os reais custos operacionais dessa mudança.
O que é BypassIO? BypassIO é um caminho de execução otimizado no subsistema de armazenamento do Windows 11 que permite que operações de leitura e escrita pulem a execução de drivers de filtro do sistema de arquivos (como antivírus, parsers e ferramentas de criptografia legadas). Ao reduzir a sobrecarga da CPU na pilha de I/O, ele diminui drasticamente a latência e é o pré-requisito fundamental para tecnologias como DirectStorage.
O Gargalo da Pilha de Storage Clássica (Win32) e NVMe
Para entender a solução, precisamos quantificar o problema. Na pilha de armazenamento tradicional do Windows (a rota Win32 clássica), uma solicitação de leitura de um arquivo não vai direto do seu programa para o SSD. Ela passa por uma longa cadeia de comando:
System Calls: Transição de User Mode para Kernel Mode.
Gerenciador de I/O e Sistema de Arquivos (NTFS): Onde reside a lógica de onde os dados estão.
Pilha de Filtros (Filter Stack): O grande vilão da latência moderna. Drivers de antivírus, agentes de DLP, drivers de backup e criptografia interceptam cada pacote de I/O para inspecioná-lo.
Camada de Tradução (Storport): Muitas vezes, comandos precisam ser traduzidos ou encapsulados, tratando um dispositivo NVMe como se fosse um dispositivo SCSI legado para manter compatibilidade.
Em um HDD com latência de 8 milissegundos (ms), perder 30 microssegundos (µs) na CPU para processar esses filtros é irrelevante. É erro de arredondamento.
Porém, em um SSD NVMe moderno com latência de hardware de 50µs, gastar 30µs na pilha de software significa que o sistema operacional é responsável por quase 40% da latência total da operação. Você comprou um hardware de Ferrari, mas o Windows colocou quebra-molas a cada 10 metros.
Figura: Comparativo da Pilha de I/O: O caminho padrão vs. a rota otimizada do BypassIO no Windows 11.
BypassIO Explicado: Pulando a Taxa de Filtros
O BypassIO não é mágica; é uma negociação. Quando um arquivo é aberto com a flag de BypassIO, o sistema operacional pergunta a todos os drivers na pilha de filtros: "Vocês realmente precisam ver os dados deste arquivo?".
Se a resposta for "não", o I/O subsequente ignora esses filtros e vai quase diretamente do Subsistema de I/O para o driver do disco.
A redução de latência vem da eliminação de:
Alocações de memória desnecessárias.
Cópias de buffer (Buffer Copies).
Ciclos de CPU gastos em drivers que não fazem nada com aquele I/O específico.
Isso muda o perfil de carga. Em testes sintéticos, a pilha clássica pode consumir 100% de um núcleo de CPU para empurrar 5 GB/s. Com BypassIO, a utilização da CPU cai drasticamente, liberando o processador para o que realmente importa (renderizar frames de um jogo ou processar dados de uma aplicação).
Tabela Comparativa: Win32 Clássico vs. BypassIO
| Característica | Pilha Win32 Clássica | Pilha BypassIO |
|---|---|---|
| Caminho do I/O | Atravessa todos os filtros (AV, Criptografia, Logs) | Pula filtros não essenciais |
| Custo de CPU | Alto (overhead por pacote I/O) | Baixo (foco no hardware) |
| Latência (End-to-End) | Variável (depende da carga dos filtros) | Determinística e próxima do hardware |
| Principal Caso de Uso | Uso geral, SO, Arquivos de Produtividade | Games (DirectStorage), Streaming de Assets |
| Segurança | Inspeção profunda padrão | Inspeção seletiva (risco calculado) |
DirectStorage além do Hype: A Conexão com a GPU
É crucial diferenciar o transporte da carga. BypassIO é a estrada expressa. DirectStorage é o veículo.
Muitos confundem os termos. O DirectStorage é uma API (parte do DirectX) que utiliza o BypassIO para buscar dados rapidamente. Mas a "mágica" completa acontece quando unimos isso à descompressão via GPU.
Historicamente, o fluxo de carregamento de um jogo é:
Ler dados comprimidos do disco para a RAM (CPU alta via Win32).
CPU descomprime os dados (Gargalo de thread única).
CPU copia dados descomprimidos para a VRAM da GPU.
Com BypassIO + DirectStorage + GPU Decompression:
Dados comprimidos voam do NVMe para a RAM do sistema (via BypassIO, baixo custo de CPU).
Dados são transferidos para a VRAM.
A GPU (que é massivamente paralela) descomprime os dados instantaneamente.
Isso só é possível porque o BypassIO garante que o fluxo de dados seja rápido o suficiente para alimentar a fome da GPU. Sem o BypassIO, a GPU ficaria ociosa esperando a pilha de software do Windows processar interrupções.
Auditando sua Máquina com fsutil
Como engenheiros, não assumimos que funciona; nós verificamos. O Windows 11 traz ferramentas nativas para diagnosticar se o seu armazenamento suporta BypassIO e, mais importante, qual driver está bloqueando a funcionalidade.
O comando chave é o fsutil bypassIo. Ele permite consultar o estado da unidade.
Execute o seguinte comando em um terminal com privilégios de Administrador:
fsutil bypassIo state c:
A saída irá listar detalhadamente o status. O que você procura é a seção "Storage Driver" e a lista de filtros.
Figura: Auditoria de Storage: Usando o fsutil para identificar gargalos na implementação do BypassIO.
Interpretando o Resultado
Storage Driver: Se aqui disser "Not Supported", seu driver NVMe é antigo ou genérico demais. Atualize para o driver do fabricante (Samsung, WD, etc.) ou garanta que o driver padrão da Microsoft esteja atualizado.
Filter Drivers: Esta é a parte crítica. Você verá uma lista de drivers.
- Supported: O driver sabe lidar com BypassIO e sairá do caminho.
- Not Supported: O driver não aceita ser ignorado. Se houver UM único driver "Not Supported" na pilha, o BypassIO é desativado para todo o volume.
É comum encontrar antivírus de terceiros ou ferramentas de "otimização" antigas bloqueando o BypassIO. A solução técnica é atualizar o software ou removê-lo em favor de soluções compatíveis.
A Realidade da Performance e Trade-offs de Segurança
Onde essa redução de latência aparece nos gráficos? Não olhe para a taxa de transferência sequencial máxima (os famosos 7000 MB/s). Isso é métrica de caixa de produto.
O ganho real do BypassIO está na Leitura Aleatória 4K com Queue Depth (QD) baixa.
O Cenário Real: O carregamento de texturas em mundos abertos ou a leitura de bancos de dados vetoriais não são um único arquivo gigante; são milhares de pequenas leituras.
O Impacto: Ao remover o overhead de software, o tempo de serviço de cada pequena leitura cai. Isso melhora o "pacing" de frames em jogos e a responsividade de aplicações pesadas.
O Dilema da Segurança
O trade-off existe. Ao usar BypassIO, você está, por definição, dizendo que o Antivírus não deve inspecionar aquele fluxo de dados em tempo real.
A Microsoft mitiga isso limitando o escopo. O BypassIO não é ativado para o sistema inteiro o tempo todo. Ele é ativado por arquivo (file handle). Um jogo solicita BypassIO para seus arquivos de dados (.pak, .bin), mas o executável do jogo (.exe) e downloads da internet continuam passando pela pilha de filtros completa.
Veredito Operacional: Para máquinas de alta performance e workstations, garantir que o drive de "Assets" ou "Games" esteja limpo de filtros legados é essencial. Para o drive de boot (C:), a compatibilidade total pode ser mais difícil devido a ferramentas corporativas de segurança (EDR/XDR), e tentar forçar o BypassIO ali pode não valer o risco de desativar sensores de segurança.
Pense certo: BypassIO não é um botão turbo genérico, é uma rota expressa para cargas de trabalho específicas que sabem pedir passagem.
Referências & Leitura Complementar
Microsoft Learn: BypassIO for Filter Drivers – Documentação técnica sobre a implementação de drivers compatíveis.
NVM Express Base Specification 2.0: Detalhes sobre os comandos NVMe e filas de submissão que beneficiam o paralelismo.
DirectStorage API Specs: Documentação do DirectX detalhando a integração com a pilha de I/O.
WinHEC (Windows Hardware Engineering Community): Apresentações sobre "Storage Stack Optimizations in Windows 11".
Roberto Holanda
Guru de Sistemas de Arquivos (ZFS/Btrfs)
"Dedico minha carreira à integridade dos dados. Para mim, o bit rot é o inimigo e o Copy-on-Write é a salvação. Exploro a fundo ZFS, Btrfs e a beleza dos checksums."