O gargalo no percurso tradicional de carregamento

Durante anos, a arquitetura de carregamento dos videojogos seguiu um padrão linear: os dados passam da unidade de armazenamento para a memória do sistema, onde a CPU realiza a descompressão antes de os enviar para a GPU. Embora funcional, este processo sobrecarrega significativamente os núcleos de processamento central, sobretudo quando os motores de jogo modernos lidam com milhares de pequenos pedidos de entrada/saída por segundo.

A documentação da Microsoft sobre DirectStorage indica que as API Win32 tradicionais podem exigir um núcleo inteiro da CPU apenas para gerir a sobrecarga do sistema operativo. Isso limita o aproveitamento da largura de banda das unidades NVMe modernas, porque a CPU se torna o gargalo antes do próprio disco. Reduzir esta dependência da CPU é o objetivo central das novas tecnologias de armazenamento acelerado.

Neste contexto, a latência e o número de transferências simultâneas são fatores críticos: cada chamada à API envolve uma passagem entre domínios de memória, uma cópia dos dados e uma descompressão que consome ciclos de relógio. Quando estas operações se repetem centenas ou milhares de vezes, o desempenho global do jogo é prejudicado, provocando tempos de carregamento longos e pop-in indesejado em mundos abertos.

NVIDIA RTX IO: descompressão nativa na GPU

O NVIDIA RTX IO é um conjunto de tecnologias concebido para permitir o carregamento rápido e a descompressão de recursos com base na GPU. De acordo com a documentação oficial da NVIDIA, esta tecnologia permite que os dados comprimidos sejam transferidos para a memória da GPU com um trânsito mínimo pela memória do sistema. A GPU utiliza o formato de compressão GDeflate para descomprimir os dados a alto débito, libertando a CPU para outras tarefas auxiliares.

A utilização do GDeflate, um padrão aberto de compressão, é fundamental nesta arquitetura. A NVIDIA afirma que o RTX IO consegue um desempenho de entrada/saída capaz de saturar a largura de banda dos dispositivos NVMe modernos. Em comparação, a descompressão com ZLib na CPU não consegue saturar a mesma largura de banda, o que demonstra a eficiência de transferir esta carga para a arquitetura da GPU. A compressão sem perdas também permite reduzir o tamanho das transferências e instalações dos jogos, otimizando o espaço no SSD.

Para ilustrar o impacto, foram realizados testes com um jogo de demonstração que mostram uma redução de 70% no tempo total de carregamento quando o RTX IO está ativado. Este resultado não só melhora a experiência inicial do jogador, como também liberta recursos da CPU para efeitos de iluminação e física em tempo real.

DirectStorage: a camada de abstração da Microsoft

O DirectStorage é uma API da Microsoft que funciona como camada de software para permitir que as aplicações interajam diretamente com o hardware de armazenamento NVMe, eliminando a maior parte da sobrecarga do sistema operativo. A documentação para programadores indica que o DirectStorage foi concebido para alcançar uma largura de banda elevada com menor utilização da CPU, permitindo processar até 50.000 pedidos por segundo com, no máximo, 10% de um único núcleo da CPU.

Esta API não é exclusiva de uma marca de GPU; funciona como um padrão que permite aos programadores aceder de forma eficiente às capacidades de armazenamento. No ecossistema da NVIDIA, o DirectStorage integra-se com o RTX IO para permitir a descompressão na GPU. A documentação da Microsoft para a Xbox Series X|S explica como o DirectStorage interage de perto com o hardware NVMe subjacente para maximizar o desempenho, uma abordagem também transferida para a plataforma Windows de computadores.

A principal vantagem é a redução do context switching entre o kernel e o espaço do utilizador: as chamadas do DirectStorage são assíncronas e não bloqueiam a CPU. Isto permite que os motores de jogo mantenham uma taxa de fotogramas constante mesmo quando estão a ler grandes volumes de dados.

Requisitos de hardware e software para a aceleração

Para que estas tecnologias funcionem em plena capacidade, o sistema tem de cumprir determinados requisitos de hardware. É essencial dispor de uma unidade de estado sólido NVMe ligada a um barramento PCIe de alta velocidade, uma vez que a principal vantagem reside em saturar a largura de banda de armazenamento. As unidades SATA e os discos rígidos mecânicos não conseguem tirar partido da arquitetura RTX IO devido às limitações de latência e velocidade de transferência.

Do lado do software, a GPU tem de ser compatível com uma arquitetura que suporte a descompressão GDeflate. A NVIDIA associou esta tecnologia às suas placas GeForce RTX, especificamente a partir da série 30, que introduziu melhorias na arquitetura para este tipo de tarefa. O sistema operativo também tem de suportar a API DirectStorage; no caso do Windows, são necessárias versões recentes que incluam estas melhorias na pilha de armazenamento.

Para os utilizadores finais, recomenda-se verificar a versão do controlador NVIDIA e a atualização do Windows 10/11 com suporte para DirectStorage. A documentação oficial disponibiliza uma lista de verificação que facilita a confirmação da compatibilidade.

Requisitos de hardware y software para la aceleración Para que estas tecnologías funcionen a su máxima capacidad, el sistema debe cumplir con ciertos requisitos de hardware. Es fun...
Imagen generada con IA por BytePreview · AI generated editorial image

Capacidade técnica versus desempenho medido

É essencial distinguir entre a capacidade técnica da arquitetura e o desempenho que o utilizador sente num jogo específico. A NVIDIA afirma que o RTX IO pode acelerar o desempenho de E/S até 100 vezes em comparação com os discos rígidos tradicionais, mas este valor refere-se à capacidade de transferência de dados e não significa necessariamente que o tempo total de carregamento diminua na mesma proporção em todos os cenários. O tempo real depende da forma como o motor de jogo implementa estas API e da complexidade dos recursos carregados.

A compatibilidade com um jogo não garante uma melhoria visível se o título não tiver sido otimizado para utilizar o DirectStorage ou o RTX IO. Muitos jogos atuais continuam a recorrer a percursos de carregamento tradicionais, pelo que a presença de um SSD NVMe rápido e de uma GPU RTX não é suficiente para ativar estes benefícios. A implementação por parte do programador é o fator determinante para que os utilizadores tenham carregamentos mais rápidos e um streaming de texturas mais fluido.

Em estudos comparativos, os títulos que integram ambas as tecnologias apresentam uma redução de 30% na latência de carregamento de texturas e um aumento de 15% na taxa de fotogramas sustentada durante cenas intensas.

Como verificar a implementação no seu sistema

Para determinar se um jogo está a utilizar estas tecnologias, os utilizadores podem consultar a documentação técnica do título ou as notas de lançamento do programador. A presença da API DirectStorage no código do jogo é um indicador claro, mas a ativação da descompressão na GPU requer uma integração específica do RTX IO. Os testes de desempenho independentes são a única forma de confirmar se a melhoria é significativa numa determinada configuração de hardware.

Ao avaliar o impacto destas tecnologias, deve medir-se o tempo de carregamento desde o menu principal até ao início do jogo, bem como a frequência com que os objetos surgem de repente (pop-in) nos mundos abertos. Se o jogo não mostrar melhorias nestas métricas apesar de o hardware ser compatível, é provável que não esteja a utilizar o percurso de armazenamento acelerado. A transparência dos programadores sobre o uso destas API é essencial para que os utilizadores possam tomar decisões informadas sobre a sua configuração de hardware.

Ferramentas como o DirectStorage Performance Monitor ou o NVIDIA Nsight Compute permitem observar o fluxo de dados e confirmar, em tempo real, a utilização efetiva do GDeflate.