El código CUDA se ejecuta en la GPU Apple M3 Pro con un aumento de velocidad de 10x

icon MarsBit
Compartir
AI summary iconResumen
Los informes sobre noticias en la cadena indican que un programa computacional basado en CUDA se ejecutó con éxito en un dispositivo Apple M3 Pro con cambios mínimos en el código. El programa, que manejó una simulación real de fluidos 3D, funcionó aproximadamente 10 veces más rápido en la GPU Metal de Apple que en la CPU. La configuración utilizó una canalización de conversión que involucró Clang/HIP, SPIR-V, Vulkan y MoltenVK, evitando APIs específicas de Metal. GPT-5.6 Sol ayudó a resolver problemas de compatibilidad. La prueba mostró un alto uso de la GPU y precisión, demostrando que los algoritmos tipo CUDA/HIP pueden funcionar en Apple Silicon. Las noticias sobre activos del mundo real (RWA) resaltan el potencial de herramientas computacionales multiplataforma.

Un programa de cálculo originalmente diseñado para NVIDIA CUDA se ejecutó directamente en un dispositivo Apple con M3 Pro, sin necesidad de modificar casi ningún código del kernel.

CUDA

Este es un avance anunciado ayer por el usuario de X @Abhinav. Lo más sorprendente es que no se trata de una simple demostración de «suma, resta, multiplicación y división de vectores», sino que logró un aumento de velocidad de aproximadamente 10 veces en una tarea real de simulación de fluidos tridimensionales.

CUDA

Detrás de esto, hay un participante especial: GPT-5.6 Sol.

El evento ocurrió en la plataforma de cálculo científico de código abierto OpenFPM. Los investigadores han estado realizando una tarea que muchas personas consideran «imposible»: hacer que programas de cómputo de alto rendimiento diseñados originalmente para GPU CUDA/HIP funcionen más allá de las barreras de plataforma, en la arquitectura Metal GPU propia de Apple.

¿Por qué es tan difícil? Durante las últimas décadas, el campo del cálculo GPU ha sido altamente fragmentado: NVIDIA tiene CUDA, AMD tiene HIP, y Apple tiene Metal. Estos ecosistemas son como idiomas diferentes, incompatibles entre sí. Un programa escrito en CUDA generalmente requiere una reescritura extensa para ejecutarse en otras plataformas.

Pero esta vez, los desarrolladores no optaron por desarrollar una versión Metal desde cero, sino que crearon un canal de conversión: el programa primero se procesa a través de Clang/HIP, luego pasa por capas intermedias como SPIR-V, Vulkan y MoltenVK, permitiendo finalmente que la GPU Metal de Apple lo entienda y ejecute de manera eficiente.

Más importante aún, no agregaron ningún API de partículas específico para Metal. La capa de aplicación conserva las llamadas de kernel con estilo CUDA/HIP, logrando una verdadera transparencia de hardware.

Durante este proceso, GPT-5.6 Sol desempeñó un papel clave, ayudando a construir la disposición de memoria en el dispositivo, identificando problemas de compatibilidad en MoltenVK y SPIR-V en aproximadamente 6 horas, y diseñando soluciones alternativas correspondientes.

CUDA

Enlace al proyecto: https://github.com/mosaic-group/openfpm/pull/18

La verdadera prueba de este trabajo es un caso de prueba complejo: la simulación de la ruptura de una presa SPH tridimensional. Esta tarea requiere manejar simultáneamente múltiples módulos complejos, como escaneo, clasificación y reordenamiento, construcción de celdas y listas de vecinos, intercambio de partículas fantasma, operaciones de reducción y operaciones atómicas; cualquier fallo en uno de estos componentes provocará una disminución del rendimiento o un desvío en los resultados físicos.

Pero los resultados de la prueba superaron las expectativas: en dispositivos Apple con el chip M3 Pro, ejecutado con Metal GPU, se completó en aproximadamente 6 segundos; con cálculo secuencial por CPU, se completó en aproximadamente 60 segundos. Es decir, el mismo programa, al cambiar simplemente el hardware de cálculo, logró un aumento de velocidad de aproximadamente 10 veces, con una utilización de la GPU cercana al 100% (lo que indica una alta eficiencia de conversión).

Más importante aún, el aumento de velocidad no se logró a expensas de la precisión. Los desarrolladores revisaron más a fondo los resultados de la simulación y descubrieron que los resultados físicos finales obtenidos con la versión de GPU de Apple y la versión de cálculo original eran coherentes, con parámetros clave y trayectorias de simulación altamente similares. Esto significa que la GPU de Apple no solo se ejecutó, sino que realmente completó con éxito la tarea de cálculo científico.

Los desarrolladores señalaron adicionalmente que el almacenamiento de partículas crece linealmente con el número de partículas N, mientras que el trabajo de búsqueda de vecinos es aproximadamente O(N·k) (donde k es el número de vecinos bajo una densidad fija). El aceleramiento de 10 veces mostrado actualmente es el resultado de una comparación de backend en una sola máquina. En el futuro, con la tecnología RDMA admitida por Apple Thunderbolt, se podrá lograr un equilibrio de carga dinámico entre múltiples máquinas, permitiendo que la simulación se extienda a varios dispositivos.

Por supuesto, este avance aún está lejos de transformar toda la industria de las GPU. Actualmente, una de las mayores limitaciones de las GPU Metal de Apple es la insuficiente compatibilidad con cálculos de punto flotante de alta precisión, y muchos campos de cálculo científico profesional dependen de operaciones de doble precisión. Por lo tanto, en escenarios de supercómputo como la predicción del clima y la simulación aeroespacial, las GPU profesionales de NVIDIA aún mantienen una ventaja.

Sin embargo, algunos cuestionan el sentido de esta exploración; un usuario de internet comentó: «En el mercado ya hay muchos sistemas mucho más adecuados, ¿qué sentido tiene ejecutar esta pequeña simulación en una Mac?». Implícitamente, sugiere que, por muy rápida que sea la GPU de una MacBook, no está diseñada para cálculos científicos, y esto parece más bien un show de destreza.

La respuesta del desarrollador fue bastante sincera: «La mayor utilidad es que es divertido y hace el trabajo más fácil». Explicó que la simulación a gran escala del equipo ya se ejecutaba en un clúster, y que lograr que funcionara en la arquitectura de Apple validó precisamente que el diseño de la capa de abstracción de dispositivos era correcto. Un motivo más práctico se encuentra en el desarrollo diario: antes de ejecutar una simulación grande, siempre se debe probar primero con una pequeña, y depurar localmente con la CPU es demasiado lento; los resultados de la simulación suelen ser de varios GB, lo que hace imposible transferirlos por SSH, y el escritorio remoto es pesado y difícil de usar, por lo que es mejor ejecutarla directamente en local. Lo más brillante es que el código que funciona correctamente en la laptop se puede transferir sin cambios al clúster de GPU y escalar automáticamente.

CUDA

Esta exploración también demostró que el mismo conjunto de algoritmos con estilo CUDA/HIP puede ejecutarse de manera relativamente transparente en diferentes backends de hardware, como Apple Silicon. En el futuro, los desarrolladores de software tal vez ya no estén atados a un único ecosistema de GPU.

CUDA

Además, esto demuestra que la IA (GPT-5.6 Sol) está avanzando hacia una nueva etapa en la que participa en el diseño de sistemas subyacentes, optimización y depuración de ingeniería entre plataformas, más allá de simplemente ayudar a escribir código.

Esta vez, la GPU de Apple supera el abismo de CUDA, y podría ser solo el comienzo.

Enlace de referencia: https://x.com/Abhinavsns/status/2079774018748694696

Este artículo proviene del canal de WeChat "Machine Heart" (ID: almosthuman2014), autor: Machine Heart

Descargo de responsabilidad: La información contenida en esta página puede proceder de terceros y no refleja necesariamente los puntos de vista u opiniones de KuCoin. Este contenido se proporciona solo con fines informativos generales, sin ninguna representación o garantía de ningún tipo, y tampoco debe interpretarse como asesoramiento financiero o de inversión. KuCoin no es responsable de ningún error u omisión, ni de ningún resultado derivado del uso de esta información. Las inversiones en activos digitales pueden ser arriesgadas. Evalúa con cuidado los riesgos de un producto y tu tolerancia al riesgo en función de tus propias circunstancias financieras. Para más información, consulta nuestras Condiciones de uso y la Declaración de riesgos.