ArtificialGuyBR

Home / Blog / Fixing things

Redução de VRAM no Windows: HAGS, Paginação, Sobrecarga

O que libera VRAM para cargas de IA no Windows — configurações, mecanismos e estimativas da comunidade.

8 sources cited Fixing things

Reduzindo o Uso de VRAM no Windows: Agendamento de GPU Acelerado por Hardware, Tamanho do Arquivo de Paginação, Sobrecarga do Navegador e da Área de Trabalho

TL;DR

  • O agendamento de GPU acelerado por hardware (HAGS) reduz a latência do agendamento da GPU, mas não reduz o uso de VRAM — a equipe do Microsoft DirectX o documenta apenas como uma mudança de agendamento.
  • O compositor da área de trabalho do Windows (dwm.exe) e os navegadores consomem memória de GPU compartilhada; o artigo da fonte (Civitai 8085) estima que isso pode chegar a 2 GB. Desativar transparência, reduzir a resolução e desligar a aceleração de hardware do navegador podem diminuir o pool compartilhado, mas não o pool de computação de IA.
  • Nenhuma documentação da Microsoft ou da NVIDIA vincula o tamanho do arquivo de paginação à disponibilidade de VRAM para cargas de trabalho CUDA — o arquivo de paginação afeta a troca de RAM do sistema, não a VRAM da GPU.

Se o problema real é que a placa é muito pequena para o modelo, nosso requisitos de VRAM por modelo cobre o que cabe onde.

O Que VRAM Realmente Significa no Windows

O Windows relata duas categorias de memória de GPU no Gerenciador de Tarefas: Memória de GPU dedicada (a VRAM física na sua GPU discreta) e Memória de GPU compartilhada (uma porção da RAM do sistema que o OS pode mapear no espaço de endereço da GPU). Frameworks de IA (PyTorch, Stable Diffusion WebUI, ComfyUI) alocam do pool dedicado via CUDA ou DirectML. O compositor da área de trabalho, navegadores e o Windows Terminal usam o pool compartilhado via DirectX/DirectWrite. Os dois pools são distintos em GPUs discretas — reduzir o pool compartilhado não aumenta o pool dedicado disponível para CUDA.

Para ver a divisão, abra o Gerenciador de Tarefas → Detalhes → clique com o botão direito nos cabeçalhos das colunas → ative Memória de GPU dedicada e Memória de GPU compartilhada. Isso mostra a memória de GPU por processo dividida por pool. Microsoft Learn: descrição do utilitário Autoruns (verifica a ferramenta usada para auditar programas de inicialização que podem iniciar apps que usam GPU).

Introduzido com a atualização de maio de 2020 do Windows 10, o HAGS move o agendador de GPU de uma thread de CPU de alta prioridade para um processador de agendamento dedicado na própria GPU. O Blog do Desenvolvedor DirectX afirma: "O Windows agora pode descarregar a maior parte do agendamento da GPU para um processador de agendamento baseado em GPU dedicado" e "A página de configurações pode ser acessada através de Configurações → Sistema → Vídeo → Configurações de Gráficos." Blog do Desenvolvedor DirectX: Agendamento de GPU Acelerado por Hardware

O que o HAGS muda: ritmo de frames, justiça de GPU entre múltiplas aplicações e latência de submissão. O agendador WDDM antigo rodava na CPU; o HAGS roda em um bloco de função fixa dentro da GPU.

O que o HAGS não muda: alocação de VRAM, memória de contexto CUDA ou pegada de pesos do modelo. O blog diz explicitamente que "a maioria das aplicações foi projetada para ocultar custos de agendamento através de buffer" e "Não esperamos que os clientes experimentem regressões de desempenho." Ele não faz nenhuma reivindicação sobre redução de VRAM. Ativar o HAGS é recomendado para compartilhamento de GPU entre múltiplos apps mais suave, não para liberar VRAM.

ConfiguraçãoLocalizaçãoEfeito na VRAMFonte
Agendamento de GPU acelerado por hardwareConfigurações → Sistema → Vídeo → Configurações de GráficosNenhum — apenas agendamentoBlog do Desenvolvedor DirectX
Opt-in padrãoDesligado por padrão (Windows 10 maio de 2020+)N/ABlog do Desenvolvedor DirectX

Tamanho do Arquivo de Paginação e VRAM: Nenhum Vínculo Documentado

O arquivo de paginação do Windows (pagefile.sys) faz backup da memória do sistema comprometida quando a RAM física se esgota. Nem a documentação da Microsoft nem a documentação do driver da NVIDIA descrevem um mecanismo onde o tamanho do arquivo de paginação influencia a VRAM dedicada da GPU disponível para cargas de trabalho CUDA/DirectML. O arquivo de paginação opera na camada de RAM do sistema; a VRAM é gerenciada pelo driver WDDM e pelo agendador da GPU independentemente.

Se a sua RAM do sistema é insuficiente para a carga de trabalho, aumentar o arquivo de paginação evita kills por OOM, mas adiciona latência de swap — não cria VRAM adicional. Para cargas de trabalho de IA que cabem na RAM do sistema mas excedem a VRAM, o gargalo é a transferência PCIe e o controlador de memória da própria GPU, não o arquivo de paginação.

AlegaçãoVerificada?Notas
Arquivo de paginação maior = mais VRAM para IANãoNenhuma fonte primária apoia isso
Arquivo de paginação afeta memória de GPU compartilhadaIndiretamenteMemória de GPU compartilhada usa commit de RAM do sistema; arquivo de paginação faz backup do commit de RAM do sistema
Windows gerencia automaticamente memória de GPU compartilhadaSim — WDDM gerencia alocação dinamicamenteNenhuma fonte primária quantifica o limite do pool compartilhadoBlog do Desenvolvedor DirectX menciona WDDM mas não limites de pool

Para o lado do alocador do mesmo problema, veja ajuste do alocador CUDA do PyTorch.

Sobrecarga da Área de Trabalho: O Que Realmente Usa Memória de GPU

Compositor do Windows (dwm.exe)

O Gerenciador de Janelas da Área de Trabalho compõe a área de trabalho, janelas e efeitos usando DirectX. Ele aloca superfícies do pool de memória de GPU compartilhada, não do pool de VRAM dedicada usado por CUDA. O artigo da comunidade Civitai afirma que "Uma média do windows (wdm.exe), navegador e etc. usam até 2GB de VRAM em segundo plano" — esse número é uma estimativa da comunidade sem metodologia de medição publicada. Artigo Civitai 8085

Efeitos Visuais e Transparência

  • Efeitos de transparência (Configurações → Personalização → Efeitos de transparência → Desligado): Força o dwm.exe a usar superfícies opacas, reduzindo o consumo de memória de GPU compartilhada. Nenhum benchmark público da Microsoft quantifica a economia em MB.
  • Efeitos visuais → Ajustar para melhor desempenho (Propriedades do Sistema → Avançado → Desempenho): Desativa animações, sombras e efeitos de vidro. Reduz a contagem de superfícies do compositor.
  • Resolução e taxa de atualização do display menores: Menos pixels por quadro reduzem a memória de superfície do compositor. Relação direta entre contagem de pixels e memória de superfície; impacto exato na VRAM não é quantificado. Artigo Civitai 8085 lista isso como recomendação sem medição.

Windows Terminal

O Windows Terminal usa renderização de texto acelerada por GPU via DirectWrite/DirectX. A visão geral do Microsoft Learn afirma: "O Windows Terminal usa a GPU para renderizar seu texto, então ele fornece melhor desempenho que a experiência padrão de linha de comando do Windows." Microsoft Learn: visão geral do Windows Terminal Essa renderização usa o contexto de VRAM de gráficos/composição, não o contexto de computação CUDA. Desativar a aceleração de GPU do Terminal (via configurações do Terminal → Perfil → Aparência → "Usar aceleração de hardware" = Desligado) reduz a memória do atlas de glifos no pool compartilhado, mas não libera VRAM dedicada para cargas de trabalho de IA.

AçãoPool AfetadoEconomia EstimadaVerificação
Desativar efeitos de transparênciaMemória de GPU compartilhadaNão quantificadaApenas relatos da comunidade
"Ajustar para melhor desempenho"Memória de GPU compartilhadaNão quantificadaNenhum benchmark da Microsoft
Reduzir resolução (4K → 1080p)Memória de GPU compartilhadaReduz memória de superfície (MB exatos não quantificados)Nenhuma medição primária encontrada
Desativar aceleração de hardware do TerminalMemória de GPU compartilhadaMemória do atlas de glifos (não quantificada)Docs do Microsoft Terminal confirma renderização acelerada por GPU, não a economia de desativá-la

Em uma placa de 8GB especificamente, o guia FLUX em 8GB mostra qual quantização faz o modelo carregar.

Sobrecarga do Navegador

Aceleração de Hardware

Navegadores (Chrome, Edge, Firefox) ativam aceleração de GPU por padrão para composição, decodificação de vídeo e WebGL/WebGPU. Isso aloca texturas e buffers de comando no pool de memória de GPU compartilhada. Desativá-lo (Configurações → Sistema → "Usar aceleração de gráficos quando disponível" → Desligado) força renderização por software, movendo essas alocações para a RAM do sistema.

Configuração do NavegadorPool AfetadoMecanismoImpacto Verificado na VRAM
Desativar aceleração de hardwareMemória de GPU compartilhadaRasterização por softwareApenas relatos da comunidade
chrome://gpucleanMemória de GPU compartilhadaNão documentadoNenhuma fonte primária
Economizador de memória → MáximoMemória de GPU compartilhadaDescarte de abasNenhuma medição publicada
Fechar abas não usadasMemória de GPU compartilhadaTérmino de processoDireto (processo morre)

Programas de Inicialização e Apps em Segundo Plano

O Autoruns (Sysinternals) enumera todos os locais de auto-inicialização: chaves Run/RunOnce, add-ons do Explorer, Browser Helper Objects, AppInit DLLs, notificações Winlogon, serviços e tarefas agendadas. Microsoft Learn: Autoruns Desativar entradas de inicialização desnecessárias reduz o número de processos que podem inicializar contextos de GPU (ex.: launchers de jogos, ferramentas de overlay, verificadores de atualização). A economia de VRAM depende inteiramente de quais programas você desativa — não existe figura genérica.

Instalação do Driver NVIDIA: NVCleanstall vs. Instalador Padrão

O NVCleanstall remove componentes do pacote do driver GeForce: GeForce Experience, telemetria, driver de áudio HD, componentes do codificador NVENC, etc. TechPowerUp: downloads do NVCleanstall O driver restante ainda contém o runtime CUDA completo, ICD Vulkan e ICD OpenGL. O uso de VRAM em tempo de execução para cargas de trabalho de IA é idêntico — o NVCleanstall afeta a pegada de disco, tempo de instalação e serviços em segundo plano, não o alocador de memória CUDA.

InstaladorComponentes RemovidosDiferença de VRAM em Tempo de Execução
Padrão (GeForce Experience)NenhumLinha de base
NVCleanstallGFE, telemetria, áudio, Ansel, etc.Nenhum (mesmo runtime CUDA)

Variantes do Windows Debloatadas (AtlasOS, ReviOS, X-Lite, winutil)

Esses projetos da comunidade removem componentes, serviços e tarefas agendadas do Windows para reduzir o uso de recursos em segundo plano. AtlasOS se descreve como "uma versão otimizada do Windows, projetada para entusiastas e gamers." ReviOS afirma "recuperar o sistema que você merece — rápido, privado, estável." winutil é uma coleção de scripts PowerShell para debloat manual.

Impacto na VRAM: Nenhum desses projetos publica benchmarks de memória de GPU. Eles reduzem o uso de RAM do sistema e interrupções de CPU, o que pode reduzir indiretamente a pressão na memória de GPU compartilhada, mas nenhuma economia de VRAM dedicada é documentada.

Configuração de Dual-GPU (iGPU para Display, dGPU para IA)

Rotea a saída de vídeo através da GPU integrada enquanto reserva a GPU discreta para computação é uma arquitetura válida. No Windows com WDDM, o compositor roda na GPU que controla o display. Se a iGPU controla todos os monitores, o dwm.exe aloca suas superfícies da memória compartilhada da iGPU, deixando a VRAM dedicada da dGPU praticamente intocada pela área de trabalho.

Caveat: A alegação de que isso resulta em "0% de uso de VRAM da RTX 5090" é uma afirmação da comunidade Artigo Civitai 8085. Nenhuma documentação da NVIDIA ou Microsoft quantifica o consumo residual de VRAM da dGPU nessa configuração. Algumas versões de driver ainda podem alocar contextos mínimos na dGPU para inicialização CUDA ou gerenciamento de energia.

Erros comuns e correções

SintomaCausaCorreçãoFonte
HAGS ativado mas VRAM inalteradaHAGS otimiza agendamento, não memóriaUse HAGS para justiça entre múltiplos apps; não espere redução de VRAMBlog do Desenvolvedor DirectX
chrome://gpuclean não libera VRAMURL não documentada; pode apenas reiniciar processo de GPUFeche abas em vez disso; desative aceleração de hardware se necessárioNenhuma fonte primária
Arquivo de paginação aumentado, OOM persisteArquivo de paginação faz backup de RAM do sistema, não VRAMReduza batch size do modelo, ative CPU offload, ou adicione RAM físicaFato de arquitetura
Transparência desligada mas VRAM igualTransparência afeta pool compartilhado, não VRAM dedicadaVerifique coluna "Memória de GPU compartilhada" no Gerenciador de Tarefas para mudançaArquitetura de memória do Windows

FAQ

Desativar Efeitos de Transparência do Windows reduz VRAM? Reduz a memória de GPU compartilhada usada pelo compositor. VRAM dedicada disponível para CUDA/DirectML não é afetada. Verifique a coluna Memória de GPU compartilhada no Gerenciador de Tarefas para observar a diferença.

Quanta VRAM o dwm.exe usa no Windows com uma GPU discreta? Não existe figura oficial da Microsoft. Estimativas da comunidade variam de algumas centenas de MB a ~2 GB no pool de memória de GPU compartilhada, dependendo de resolução, taxa de atualização e número de monitores. O pool de VRAM dedicada é separado.

O chrome://gpuclean realmente libera memória de GPU ou apenas reinicia o contexto? Desconhecido — nenhuma documentação do Chromium descreve esse endpoint. Relatos da comunidade sugerem que ele reinicia o processo de GPU, o que liberaria suas alocações, mas isso não é verificado.

Por que o HAGS não reduz VRAM e o que ele realmente otimiza? O HAGS move o agendador de GPU de uma thread de CPU para um processador de agendamento dedicado na GPU. Ele melhora o ritmo de frames e reduz a latência de submissão entre aplicações compartilhando a GPU. Ele não gerencia alocação de VRAM. Blog do Desenvolvedor DirectX

O NVCleanstall muda o uso de VRAM no tempo de inferência? Não. O NVCleanstall remove componentes do instalador (GeForce Experience, telemetria, driver de áudio). O runtime CUDA instalado e o gerenciador de memória do driver são idênticos. TechPowerUp NVCleanstall

O tamanho do arquivo de paginação afeta a VRAM disponível para Stable Diffusion / ComfyUI? Não. O arquivo de paginação faz backup da memória do sistema comprometida. A VRAM é gerenciada pelo driver WDDM e pelo agendador da GPU independentemente. Se a RAM do sistema se esgotar, um arquivo de paginação maior evita kills de processo mas não aumenta a VRAM.

Qual a forma mais rápida de liberar memória de GPU compartilhada antes de uma execução de IA? Feche abas do navegador e apps acelerados por GPU (Discord, Steam, launchers de jogos). Desative efeitos de transparência. Reinicie o Windows Terminal se a aceleração de hardware estiver ativada. Isso reduz o pool compartilhado; o pool de VRAM dedicada para IA não muda.