Apple Silicon: GPU y WebAssembly comparten memoria

Fuentes: Apple Silicon Enables Zero-Copy GPU Inference with WebAssembly

Apple ha habilitado una innovadora técnica de inferencia de GPU sin copia en sus chips Silicon, permitiendo que los módulos WebAssembly (Wasm) compartan directamente su memoria lineal con la GPU. Tradicionalmente, la comunicación entre Wasm y la GPU implicaba costosas copias de datos a través de un bus, pero la arquitectura de memoria unificada de Apple Silicon elimina esta barrera. Esta nueva técnica, que el autor ha denominado 'Driftwood', permite que la CPU y la GPU accedan a la misma memoria física, reduciendo significativamente la latencia y el consumo de memoria. El proceso se compone de tres enlaces: asignación de memoria alineada, uso de Metal para acceder a la memoria sin copia y el uso de Wasmtime para controlar la asignación de memoria. Las pruebas con una multiplicación de matrices de 128x128 mostraron latencias equivalentes con y sin copia, pero una reducción drástica en el uso de memoria (de 16.78 MB a 0.03 MB). Esta innovación facilita la ejecución de modelos de inteligencia artificial como Llama 3.2, permitiendo incluso la serialización y restauración de cachés de clave-valor (KV) para mantener el contexto de la conversación entre sesiones, lo que mejora significativamente la eficiencia y la portabilidad.