CUDA en Fedora: monta una estación de IA local con Ollama o llama.cpp en una tarde
Al terminar este artículo tu máquina con Fedora ejecutará modelos de lenguaje en su GPU NVIDIA: primero con Ollama (el camino de cinco minutos) y después, si lo quieres, con un llama.cpp compilado por ti con el toolkit CUDA. El hardware más barato con el que funciona: cualquier PC con una GeForce de 2017 en adelante, incluida una RTX 3060 de 12 GB de segunda mano.
Primero la honestidad. Verificamos cada comando contra los documentos oficiales el 09-09-2026, pero no los ejecutamos en una máquina con Fedora: nuestra estación de trabajo corre Ubuntu 24.04 en ARM con CUDA 13. Cuando mostramos una salida esperada, decimos de quién es.
Qué necesitas
- Fedora Workstation o un escritorio Fedora Atomic (Silverblue, Kinoite) con una GPU NVIDIA. Las instrucciones del driver salen de la guía de NVIDIA de RPM Fusion; las del toolkit, de la guía para Fedora del propio llama.cpp y de la guía de CUDA de RPM Fusion.
- Secure Boot desactivado, o tu propia clave de firma registrada. RPM Fusion es claro: con Secure Boot activo “debes firmar el kmod de nvidia”.
- Unos 10 GB de disco para el toolkit y un modelo. 15 minutos para el camino A y otros 30 a 45 para el camino B.
- Ninguna cuenta ni clave de API. Todo es software libre más el toolkit redistribuible de NVIDIA.
Paso 1: instala el driver de NVIDIA desde RPM Fusion
Activa el repositorio nonfree de RPM Fusion (su página de configuración tiene el dnf install de una línea) y después:
sudo dnf update -y
sudo dnf install akmod-nvidia
sudo dnf install xorg-x11-drv-nvidia-cuda
akmod-nvidia compila el módulo del kernel en tu máquina; xorg-x11-drv-nvidia-cuda añade las bibliotecas CUDA de espacio de usuario que necesitan Ollama y llama.cpp. Y ahora, espera. RPM Fusion indica que la compilación puede tardar hasta cinco minutos, y da la comprobación:
modinfo -F version nvidia
Una cadena de versión como 595.58.03 significa que el módulo está listo. Un error significa que sigue compilando o que falló; reinicia una vez antes de investigar. Las tarjetas anteriores a 2017 necesitan un paquete legado (akmod-nvidia-580xx para las series GTX 800/900/10, akmod-nvidia-470xx para las 600/700).
Una regla de la página de CUDA de RPM Fusion que conviene recordar: no mezcles los paquetes nvidia-driver de NVIDIA con el driver de RPM Fusion. Usa RPM Fusion para el driver y el repositorio de NVIDIA solo para el toolkit.
Paso 2 (camino A): Ollama en la GPU en cinco minutos
curl -fsSL https://ollama.com/install.sh | sh
ollama -v
ollama run llama3.1:8b "Resume en una frase: Fedora instala el driver y Ollama hace el resto."
La página oficial de instalación en Linux documenta el script, ollama -v para la versión y journalctl -e -u ollama para los registros. La línea que buscas en el registro menciona CUDA y tu tarjeta:
journalctl -u ollama --no-pager | grep -i -E "cuda|nvidia" | tail -5
Si Ollama dice que está en CPU, la causa habitual es que el paso 1 no había terminado cuando arrancó el servicio: sudo systemctl restart ollama una vez cargado el módulo del kernel. Para actualizar más adelante, vuelve a ejecutar el script; para fijar una versión, antepón OLLAMA_VERSION=X.X.X.
Para la mayoría de equipos pequeños, aquí termina el trabajo. Ollama expone una API en el puerto 11434 que Open WebUI, n8n y cualquier SDK compatible con OpenAI pueden usar.
Paso 3 (camino B): instala el toolkit CUDA
Solo lo necesitas para compilar llama.cpp tú mismo o para trabajar con PyTorch. Dos rutas.
En Fedora Workstation (dnf5, Fedora 43 y posteriores), según la página de CUDA de RPM Fusion:
sudo dnf config-manager addrepo \
--from-repofile=https://developer.download.nvidia.com/compute/cuda/repos/fedora43/$(uname -m)/cuda-fedora43.repo
sudo dnf -y install cuda-toolkit xorg-x11-drv-nvidia-cuda
Si NVIDIA aún no publica repositorio para tu versión de Fedora, el consejo de la página es usar el más reciente que exista. Si nvcc se queja de que tu gcc es demasiado nuevo, RPM Fusion remite a los paquetes cuda-gcc y cuda-gcc-c++ de COPR y a export HOST_COMPILER=cuda-g++.
En un escritorio Atomic, la guía de llama.cpp mantiene el sistema limpio y lo hace todo dentro de un toolbox:
toolbox create --image registry.fedoraproject.org/fedora-toolbox:41 --container fedora-toolbox-41-cuda
toolbox enter --container fedora-toolbox-41-cuda
sudo dnf distro-sync
sudo dnf install @c-development @development-tools cmake
sudo dnf config-manager addrepo \
--from-repofile=https://developer.download.nvidia.com/compute/cuda/repos/fedora41/x86_64/cuda-fedora41.repo
ls -la /usr/lib64/libcuda.so.1
Si ese último ls muestra el archivo, el sistema anfitrión ya aporta la biblioteca del driver y solo debes registrar los paquetes en la base de datos RPM (sudo dnf download --destdir=/tmp/nvidia-driver-libs --resolve --arch x86_64 nvidia-driver-cuda nvidia-driver-libs nvidia-driver-cuda-libs nvidia-persistenced seguido de sudo rpm --install --verbose --hash --justdb /tmp/nvidia-driver-libs/*). Si no existe, instala esos cuatro paquetes de forma normal. Después:
sudo dnf install cuda
sudo sh -c 'echo "export PATH=\$PATH:/usr/local/cuda/bin" >> /etc/profile.d/cuda.sh'
sudo chmod +x /etc/profile.d/cuda.sh
source /etc/profile.d/cuda.sh
nvcc --version
La guía espera CUDA 12.8 o superior. En nuestra máquina con Ubuntu el mismo comando devuelve Cuda compilation tools, release 13.0, V13.0.88, para que sepas qué forma tiene una respuesta correcta. Si la GPU desaparece dentro del toolbox tras actualizar el driver, la solución de la guía es podman container restart --all.
Paso 4: compila llama.cpp con CUDA y demuestra que usa la GPU
De la guía de compilación de llama.cpp:
git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp
cmake -B build -DGGML_CUDA=ON
cmake --build build --config Release
./build/bin/llama-cli -m models/Llama-3.1-8B-Instruct-Q4_K_M.gguf \
-p "Hola, ¿qué tal?" -ngl 99
Si nvcc no detecta la capacidad de cómputo de tu tarjeta, indícala a mano, por ejemplo -DCMAKE_CUDA_ARCHITECTURES="86;89" (8.6 es una RTX 3080 Ti o una 3060; 8.9, una RTX 4090). La cabecera de arranque de llama-cli lista el dispositivo CUDA y cuántas capas se han descargado; -ngl 99 significa todas.
Qué esperar y qué hemos medido
No hemos medido una máquina con Fedora. Para la tarjeta con la que empezará la mayoría, terceros publican lo siguiente; en Fedora el driver es el mismo binario, así que las cifras se trasladan.
| Hardware | Modelo | Velocidad | Fuente |
|---|---|---|---|
| RTX 3060 12 GB (usada, ~250-278 USD) | Llama 3.1 8B Q4_K_M | 52 a 65 tok/s (tyolab 64,5; LocalScore 52,2); otra guía indica 42 a 48 | SpecPicks, CraftRigs, precios en GPUDojo |
| Nuestra estación NVIDIA GB10 (Ubuntu 24.04, CUDA 13.0, driver 580.173.02) | Llama 3.1 8B Q4_K_M | 37,8 tok/s, medido el 08-09-2026 | nuestra propia ejecución con ollama; una máquina compartida, no una recomendación |
Dos comandos de verificación que deberías ejecutar en tu máquina y pegar en tus notas: nvidia-smi (versión del driver, versión de CUDA, memoria en uso con un modelo cargado) y ollama ps, que muestra si el modelo está al 100% GPU.
Dónde encaja y límites honestos
Una estación con Fedora y una tarjeta de 12 GB ejecuta modelos de 7B y 8B con velocidad suficiente para el uso diario de un equipo: borradores, resúmenes, clasificación, ayuda con código. Sustituye la factura por token en esa parte rutinaria del trabajo y deja los documentos en la máquina.
Límites: Fedora avanza rápido y una actualización del kernel puede llegar antes de que akmod-nvidia tenga compilación para ella; si el escritorio vuelve al driver abierto tras actualizar, espera a la recompilación del akmod o arranca con el kernel anterior. Secure Boot añade un paso de firma que este artículo no cubre. Y una tarjeta de 12 GB se queda en unos 14B parámetros en Q4; para modelos de clase 70B necesitas más de 40 GB repartidos en una o varias GPU.
Siguientes pasos
- Elige e instala el resto de la pila: Cómo implementar IA en una empresa española.
- Comprueba si la tarjeta se amortiza: Nube o local: tu punto de equilibrio en 15 minutos.
- Mete modelos mayores en 12 GB: La cuantización explicada.
Trabaja con nosotros
Montamos la inferencia local en el hardware que el cliente ya tiene antes de recomendar nada nuevo, y dejamos un manual de operación por escrito. Si quieres que lo hagamos en tus máquinas con Fedora, escríbenos o lee cómo trabajamos en consultoría.