Cua libera un shim que acelera Metal en VMs macOS sobre Apple Silicon

Fuentes: Cua releases a Metal capability shim that speeds up macOS VMs on Apple Silicon

Cua, el equipo detrás de la pila de virtualización Lume para macOS, ha publicado como 'research release' una pequeña capa de compatibilidad, limitada a un proceso, que desbloquea rutas modernas de Metal dentro de una máquina virtual macOS invitada ejecutada sobre Apple Virtualization.framework. La capa intercepta consultas de capacidades del dispositivo gráfico virtual y devuelve valores de una familia Apple más reciente y un límite de memoria de threadgroup mayor (de 32 KB a 64 KB), permitiendo que aplicaciones como llama.cpp seleccionen kernels optimizados.

En un Apple M1 Ultra con macOS Tahoe, la ejecución de TinyLlama 1.1B mediante llama.cpp pasó de 431,86 a 4.786,70 tokens/s en procesamiento de prompts (11,08× más rápido) y de 12,63 a 206,60 tokens/s en generación de tokens (16,36×), alcanzando el 98,25% del rendimiento del host en la primera métrica. Con el modelo Gemma 4 12B QAT Q4_0, la mejora fue de 7,20× en prompts y 14,54× en generación, llegando al 99,59% y 94,82% del bare-metal respectivamente.

El trabajo no constituye asignación física de GPU ni passthrough PCI/VFIO: la carga sigue ejecutándose en el dispositivo gráfico paravirtualizado de Apple sobre la GPU física del host. Los autores insisten en que cada API de Metal adicional requiere validación separada y publican el código, los scripts de compilación y los registros brutos de las pruebas para permitir su reproducción. La motivación coincide con un problema abierto en Tart, otra CLI basada en Virtualization.framework, sobre la imposibilidad de obtener rendimiento gráfico y de inferencia aceptable en invitados macOS.