Avançado 15 minllama.cpp

Compilar llama.cpp com CUDA: guia de build passo a passo

Ollama e LM Studio encapsulam o llama.cpp — mas geralmente ainda têm 1 ou 2 versões atrasadas, com flags conservadores. Compilar o llama.cpp sozinho é recuperar 20 a 40% de velocidade em uma RTX recente e ter acesso a funcionalidades que só acabaram de sair. Este guia cobre Windows, Linux e o build CUDA.

Por Mohamed Meguedmi·Atualização 2026-03-05·Testado no Windows, macOS e Linux

#Por que compilar você mesmo

Funcionalidades em primeira mão
Novas quantizações (IQ4_NL, Q2_K_S), novos modelos (Mamba, DeepSeek), flags experimentais.
Desempenho ótimo
Compilação otimizada para seu CPU específico (AVX-512, AMX) e sua geração CUDA (sm_89 para RTX 40, sm_90 para RTX 50).
Ferramentas de baixo nível
llama-bench para executar benchmarks, llama-cli para usar em scripts, llama-server para um endpoint básico (sem UI nem dependências).
i
Quem deveria compilar?
Se você é desenvolvedor, curioso sobre desempenho, ou se trabalha com Mamba/Jamba não suportado por Ollama: sim. Caso contrário, Ollama faz 95% do trabalho sem compilação.

#Pré-requisitos

CUDA Toolkit 12.x
Disponível para download em developer.nvidia.com. Não confundir com os drivers — o Toolkit inclui nvcc, o compilador.
CMake 3.21+
apt install cmake no Linux, via chocolatey no Windows.
Compilador C++
gcc 11+ no Linux, MSVC 2022 Build Tools no Windows.
Git
Para clonar e atualizar.

#1. Clonar o repositório

Terminal
git clone https://github.com/ggerganov/llama.cpp.git
cd llama.cpp

#2. Build com CUDA

Linux / macOS
cmake -B build -DGGML_CUDA=ON -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release -j $(nproc)
Windows (PowerShell)
cmake -B build -DGGML_CUDA=ON -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release -j

A compilação leva de 3 a 10 minutos, dependendo do seu processador. Os binários ficam em build/bin/ (Linux) ou build/bin/Release/ (Windows).

O kit IA Local

Seu ChatGPT privado e gratuito na sua máquina em 1 hora — LM Studio, Ollama, Open WebUI, seus documentos, sem nuvem.

  • Espaço online vitalício
  • PDF + arquivos
  • Atualizações vitalícias
→
Build otimizado para sua GPU
Adicione -DCMAKE_CUDA_ARCHITECTURES=89 para compilar apenas para RTX 40 (ou 90 para RTX 50). O binário fica menor e a compilação, mais rápida.

#3. Testar

Download de um GGUF
# Via Hugging Face CLI
pip install huggingface_hub
huggingface-cli download \
  TheBloke/Mistral-7B-Instruct-v0.2-GGUF \
  mistral-7b-instruct-v0.2.Q4_K_M.gguf \
  --local-dir ./models
Inferência
./build/bin/llama-cli \
  -m ./models/mistral-7b-instruct-v0.2.Q4_K_M.gguf \
  -p "Explique ce qu'est un LLM en 3 phrases." \
  -n 256 \
  -ngl 99  # nombre de couches sur GPU
Servidor HTTP compatível com OpenAI
./build/bin/llama-server \
  -m ./models/mistral-7b-instruct-v0.2.Q4_K_M.gguf \
  --port 8080 \
  -ngl 99 \
  -c 8192

#4. Flags de otimização

-ngl N
Quantidade de camadas carregadas no GPU. Use 99 (ou mais) para carregar tudo, desde que a VRAM permita.
-fa
Flash Attention. Aumento de 20–30% na velocidade e redução da VRAM usada pelo contexto. Ative sempre se a sua GPU for Ampere+ (RTX 30xx ou posterior).
-c N
Comprimento do contexto. Não use mais do que o necessário: o KV cache consome a VRAM.
-b N / -ub N
Tamanho do lote e micro-lote. 512/512 por padrão. 1024/512 para acelerar o processamento do prompt.
--no-mmap
Desativa o mmap. Testar se o carregamento inicial estiver lento em determinados SSDs.

#5. Manter-se atualizado

Update
cd llama.cpp
git pull
cmake --build build --config Release -j

llama.cpp lança vários commits por dia. Um git pull semanal é um bom ritmo. Caso haja regressão, use git checkout em uma tag específica (ex: b4400).

#Solução de problemas

nvcc not found
O CUDA Toolkit não está no PATH. No Linux: export PATH=/usr/local/cuda/bin:$PATH.
Desalinhamento de versão CUDA
Drivers NVIDIA mais antigos que o Toolkit. Atualize os drivers (é necessária uma versão igual ou superior à exigida por cada Toolkit).
Erro de vinculação com cuBLAS
LD_LIBRARY_PATH incorreto. Adicione /usr/local/cuda/lib64.
Build falha com MSVC
Abra um 'x64 Native Tools Command Prompt for VS 2022', não o PowerShell. Caso contrário, algumas ferramentas cmake não encontram cl.exe.
Este guia ajudou você?

Um comentário, um erro ou uma observação? Avise-nos; isso ajuda a melhorar o guia para todos.