Un parche al backend CUDA de llama.cpp soluciona un fallo en la predicción multi-tokeno (MTP) en GPUs anteriores a Ampere añadiendo comprobaciones robustas de capacidad. La actualización asegura que BF16 se use solo cuando sea compatible, recurriendo a FP16 o FP32 para arquitecturas más antiguas como Kepler.

  • Corrige los fallos de cuBLAS causados por la selección incorrecta de cómputo BF16 en hardware no compatible.
  • Implementa una cadena de respaldo: BF16 si es compatible, FP16 si es rápido, de lo contrario FP32.
  • Probado con Qwen3.6 35B A3B q4xl en cuatro GPUs Tesla K40c (Kepler).
  • El rendimiento con MTP habilitado alcanzó ~25 tok/s frente a ~22 tok/s en la versión original y ~17.5 tok/s con MTP deshabilitado.

Este cambio permite que la decodificación MTP funcione correctamente en tarjetas antiguas sin afectar a las GPUs más recientes.