Estratificação de memória para inferência de grandes modelos de linguagem em ambientes limitados a CPU
Carregando...
Data
Autores
Orientador
Coorientador
Pós-graduação
Ciência da Computação - FC/FCT/IBILCE/IGCE
Curso de graduação
Título da Revista
ISSN da Revista
Título de Volume
Editor
Universidade Estadual Paulista (UNESP)
Tipo
Dissertação de mestrado
Direito de acesso
Acesso aberto

Resumo
Resumo (português)
Grandes Modelos de Linguagem (LLMs) têm sido cada vez mais implantados em ambientes de CPU sem aceleradores, motivados pelo custo elevado e pela disponibilidade restrita de GPUs. Nesse cenário, o crescimento contínuo do tamanho dos modelos e a expansão das janelas de contexto tornam a capacidade de memória DRAM o principal fator limitante de custo e viabilidade para a execução de modelos de grande escala. Contornar essa restrição sem recorrer a hardware especializado é um desafio de crescente relevância prática, sobretudo em infraestruturas econômicas. As arquiteturas de memória heterogênea, que combinam DRAM com camadas de maior capacidade e maior latência, apresentam-se como uma estratégia promissora, porém carecem de uma caracterização sistemática que indique quais componentes de um LLM podem ser realocados para a memória lenta sem comprometer o desempenho. Diante dessa lacuna, esta dissertação investiga a alocação seletiva dos componentes internos do modelo (pesos de Atenção, pesos da FFN e KV-Cache) entre a DRAM e uma camada de memória de maior capacidade, sob uma abordagem de estratificação explícita. Para tanto, a metodologia instrumentou o framework llama.cpp para mapear seletivamente esses componentes entre a DRAM e uma camada de memória lenta (Intel Optane DC via acesso direto/DAX). A avaliação experimental cobriu 8 configurações de alocação e 5 cenários operacionais (prompts de 64 a 7.000 tokens), utilizando os modelos LLaMA 2 (7B, Multi-Head Attention, MHA) e LLaMA 3 (8B, Grouped-Query Attention, GQA) quantizados em Q4_K_M. Os resultados demonstram que a degradação de desempenho é governada por um único mecanismo: o volume de bytes relidos a cada passo de geração. Em contextos curtos, a alocação da KV-Cache na memória lenta causa impacto negligenciável (apenas −2, 3% na vazão), enquanto mover a FFN reduz o desempenho em até 59, 1%. Em contextos longos, a sensibilidade se inverte: a KV-Cache sofre perdas de até −52, 7%, ao passo que os pesos de Atenção sob arquitetura GQA (LLaMA 3) mostram-se altamente tolerantes, caindo apenas −5, 5% (contra −21, 5% no MHA). Por fim, a formalização do problema como uma otimização bi-objetivo (DRAM liberada versus vazão de inferência) comprovou a viabilidade de liberar mais de 4 GB de DRAM mantendo a vazão acima do limite de aceitabilidade interativa (3, 0 tokens/s), culminando em diretrizes práticas para decisões de alocação conscientes do regime operacional.
Resumo (inglês)
Large Language Models (LLMs) have been increasingly deployed in CPU-only environments without accelerators, driven by the high cost and limited availability of GPUs. In this scenario, the continuous growth in model size and the expansion of context windows make DRAM capacity the main limiting factor for the cost and feasibility of running large-scale models. Overcoming this constraint without resorting to specialized hardware is a challenge of growing practical relevance, particularly in cost-constrained infrastructures. Heterogeneous memory architectures, which combine DRAM with higher-capacity, higher-latency tiers, emerge as a promising strategy; however, they lack a systematic characterization indicating which components of an LLM can be offloaded to the slow memory without compromising performance. Motivated by this gap, this dissertation investigates the selective allocation of the model’s internal components (Attention weights, FFN weights, and KV-Cache) between DRAM and a higher-capacity memory tier, under an explicit tiering approach. To this end, the methodology instrumented the llama.cpp framework to selectively map these components between DRAM and a slow memory tier (Intel Optane DC via direct access/DAX). The experimental evaluation covered 8 allocation configurations and 5 operational scenarios (prompts ranging from 64 to 7,000 tokens), using the LLaMA 2 (7B, Multi-Head Attention) and LLaMA 3 (8B, Grouped-Query Attention) models quantized in Q4_K_M. The results show that performance degradation is governed by a single mechanism: the volume of bytes reread at each generation step. Under short contexts, allocating the KV-Cache to slow memory has a negligible impact (only −2.3% in throughput), whereas moving the FFN reduces performance by up to 59.1%. Under long contexts, the sensitivity reverses: the KV-Cache suffers losses of up to −52.7%, while the Attention weights under the GQA architecture (LLaMA 3) prove highly tolerant, dropping by only −5.5% (compared to −21.5% in MHA). Finally, formalizing the problem as a bi-objective optimization (freed DRAM versus inference throughput) demonstrated the feasibility of freeing more than 4 GB of DRAM while keeping throughput above the interactive acceptability threshold (3.0 tokens/s), culminating in practical guidelines for regime-aware allocation decisions.
Descrição
Idioma
Português
Citação
CATTAI, Luísa Leona. Estratificação de memória para inferência de grandes modelos de linguagem em ambientes limitados a CPU. 2026. Dissertação (Mestrado em Ciência da Computação) – Instituto de Geociências e Ciências Exatas, Universidade Estadual Paulista (UNESP), Rio Claro, 2026.



