DEV Community

Cover image for Rodei Flux Schnell + LLM numa GPU de R$300. Sem CUDA. Sem cloud. Sem ROCm.
AIVisionsLab
AIVisionsLab

Posted on

Rodei Flux Schnell + LLM numa GPU de R$300. Sem CUDA. Sem cloud. Sem ROCm.

Todas as imagens deste artigo foram geradas localmente na RX 580 8GB descrita abaixo.

A narrativa era clara

Em 2026, todo guia diz a mesma coisa:

"Sua AMD RX 580 não roda IA. Compra uma GPU nova."

A AMD removeu suporte ROCm para Polaris/GCN4 na v5.x.
DirectML travava com erros de OpaqueTensorImpl.
OpenVINO falhava silenciosamente.

GPU de 8GB parada em 0% de uso enquanto o CPU respondia LLMs a 3 tokens por segundo.

A gente recusou comprar uma GPU nova.


A solução: Vulkan

O projeto ggml — engine base do llama.cpp e stable-diffusion.cpp — suporta Vulkan como backend de GPU. Vulkan é um padrão aberto que ainda suporta a RX 580 nativamente desde os drivers de 2017.

Sem CUDA. Sem ROCm. Sem DirectML. Só Vulkan.


Resultados reais (logs do terminal, não benchmarks sintéticos)

Workload Modelo Velocidade
LLM Mistral 7B Q4 15–16 tok/s
Geração de imagem DreamShaper 8 GGUF ~72s/imagem
FLUX.1 Schnell flux1-schnell-q4_k híbrido ~14 min @ 1024×1024

CPU sem GPU: 3–5 tok/s.
Ganho com Vulkan: 3–4× numa GPU que "não suporta IA".


Hardware

GPU:     AMD RX 580 2048SP — 8GB GDDR5 (Polaris / GCN4)
CPU:     Intel Xeon E5-2690 v3 — 12c/24t (2014)
RAM:     32GB DDR4 REG ECC
Storage: NVMe 1TB — 1.7–3.5 GB/s
OS:      Windows 10 Pro + WSL2 Ubuntu 22.04
Enter fullscreen mode Exit fullscreen mode

O NVMe sozinho reduziu o carregamento do FLUX de 25 minutos para 30 segundos.
Storage é tão crítico quanto a GPU.


Compilar llama.cpp com Vulkan

# Executar no Developer PowerShell do VS
cd E:\
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
cmake -B build -DGGML_VULKAN=ON -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release -j20
Enter fullscreen mode Exit fullscreen mode

Validação:

cd build\bin\Release
.\llama-cli.exe --list-devices
# Esperado: Vulkan0: AMD Radeon RX 580 2048SP ✅
Enter fullscreen mode Exit fullscreen mode

Compilar stable-diffusion.cpp com Vulkan

git clone --recursive https://github.com/leejet/stable-diffusion.cpp
cd stable-diffusion.cpp && mkdir build && cd build
cmake .. -DGGML_VULKAN=ON -DCMAKE_BUILD_TYPE=Release
cmake --build . --config Release -j20
Enter fullscreen mode Exit fullscreen mode

Subir o servidor

E:
cd "E:\stable-diffusion.cpp\build\bin\Release"
sd-server.exe --listen-ip 0.0.0.0 --listen-port 7860 ^
  -m "E:\models\dreamshaper_8.safetensors"
Enter fullscreen mode Exit fullscreen mode

No OpenWebUI → Admin → Imagens → Automatic1111 → http://SEU_IP_LOCAL:7860/


⚠️ Crítico: dois tipos de GGUF incompatíveis

Se você tentar rodar FLUX e receber new_sd_ctx_t failed — você baixou o GGUF errado.

Fonte Compatível com
city96 (HuggingFace) ComfyUI apenas
leejet (HuggingFace) stable-diffusion.cpp ✅

Sempre use: https://huggingface.co/leejet/FLUX.1-schnell-gguf


O que não funcionou (documentado com causa raiz)

Tentativa Erro Motivo
DirectML OpaqueTensorImpl Tensores MS incompatíveis com ComfyUI
ROCm Kernel panics GCN4 removido no v5.x — permanente
OpenVINO No module 'ldm' Extensão para arquitetura antiga A1111
CPU + HDD 19 min/imagem Zero GPU + gargalo de I/O mecânico

Documentação completa

📖 Guia master (PT/EN/ES/FR/AR) com diagramas, benchmarks, scripts de automação:
👉 setup-ia-local-rx580-vulkan.web.app

📦 GitHub (scripts + docs):
👉 github.com/aivisionslab-studios/rx580-local-ai-guide


O problema nunca foi a placa.

Top comments (0)