Ollama agora suporta placas gráficas AMD
Significado do suporte da AMD e impacto na Nvidia
- Muitos veem o suporte da AMD no Ollama como enfraquecendo o fosso da CUDA da Nvidia, pelo menos no lado da inferência.
- O treinamento ainda é visto como dominado pela Nvidia, mas a inferência tem mais a ver com custo por token e VRAM, onde a AMD pode competir.
- O entusiasmo por LLMs locais está impulsionando a demanda por opções que não sejam Nvidia devido a preço e disponibilidade.
Desempenho, custo e trade-offs de VRAM
- Vários comentários observam que as placas AMD geralmente ficam atrás da RTX 4090 em desempenho bruto, mas são mais baratas por GB de VRAM.
- Para muitos usuários, poder executar modelos maiores/melhores com uma taxa de tokens por segundo ligeiramente menor é preferível a placas Nvidia mais rápidas, mas limitadas por VRAM.
- Alguns relatam números concretos (por exemplo, ~35 tokens/s no Mistral 7B Q6 em uma GPU AMD de médio porte), mas benchmarks sistemáticos são em grande parte “pouco claros”.
Detalhes de implementação: ROCm, Vulkan, OpenCL, HIP
- O suporte da AMD no Ollama é construído em cima do llama.cpp, usando ROCm; um commit vinculado confirma a integração com ROCm.
- Backends Vulkan e OpenCL existem no llama.cpp para GPUs AMD mais antigas; o desempenho é descrito como pior que CUDA/ROCm, mas utilizável.
- HIP é mencionado como uma camada de portabilidade semelhante à CUDA para AMD, embora confiabilidade e estabilidade sejam debatidas.
- OpenCL é amplamente descrito como “vivo, mas de segunda classe” e menos agradável de usar do que stacks específicos do fornecedor.
Compatibilidade de hardware e contornos
- As listas oficiais de suporte se concentram nas GPUs RDNA2/3 mais recentes; muitos usuários relatam sucesso “não oficial” em mais placas por meio de variáveis de ambiente (por exemplo,
HSA_OVERRIDE_GFX_VERSION=10.3.0). - Algumas placas (notavelmente a 5700XT) não têm suporte ROCm, frustrando usuários que atualizaram a partir de placas Nvidia mais antigas.
- O suporte a Radeon/APU integrado ainda não está disponível; links de issues indicam que essa é uma limitação conhecida.
Ollama vs. llama.cpp e outras ferramentas
- Há amplo consenso de que o Ollama é essencialmente um wrapper amigável ao usuário em torno do llama.cpp, adicionando um registry, uma CLI simples e configuração automática baseada em VRAM.
- Vários usuários dizem que tiveram dificuldade para compilar o llama.cpp (especialmente com CUDA/ROCm), mas acharam o Ollama fácil em “um comando”.
- Outros preferem o llama.cpp direto, koboldcpp ou outras UIs para ter mais controle, ajuste de desempenho, concorrência ou múltiplos modelos.
Debate entre produção e experimentação
- Alguns argumentam que o Ollama é principalmente para experimentação local e uso pessoal, sem concorrência e sem serviço multi-modelo, portanto não é ideal para uso empresarial/de produção.
- Outros relatam usar o Ollama em fluxos de trabalho pessoais ou de pequena escala “semelhantes a produção” (RAG, extração local de conhecimento, ferramentas on-prem) e valorizam sua simplicidade.
- Há preocupação de que o llama.cpp faça a maior parte do trabalho pesado de otimização enquanto o Ollama captura muito mais atenção, e discussão sobre se o Ollama credita suficientemente sua dependência e cumpre o licenciamento.