Agrupación en clústeres NVIDIA DGX Spark + M3 Ultra Mac Studio para una inferencia de LLM 4 veces más rápida. DGX Spark: 128 GB @ 273 GB/s, 100 TFLOPS (fp16), $ 3,999 M3 Ultra: 256 GB @ 819 GB/s, 26 TFLOPS (fp16), $ 5,599 El DGX Spark tiene 3 veces menos ancho de banda de memoria que el M3 Ultra, pero 4 veces más FLOPS. Al ejecutar el relleno previo vinculado a la computación en el DGX Spark, la decodificación vinculada a la memoria en el M3 Ultra y la transmisión de la caché de KV a través de 10 GbE, podemos obtener lo mejor de ambos hardware con aceleraciones masivas. Breve explicación en este hilo y enlace a la publicación completa del blog a continuación.
La inferencia de LLM consiste en una etapa de prellenado y decodificación. El relleno previo procesa el mensaje, creando una caché de KV. Está vinculado a la computación, por lo que se vuelve más rápido con más FLOPS. Decode lee la caché de KV y genera tokens uno por uno. Está vinculado a la memoria, por lo que se vuelve más rápido con más ancho de banda de memoria.
Podemos ejecutar estas dos etapas en diferentes dispositivos: Relleno previo: DGX Spark (dispositivo de alto proceso, 4 veces el proceso) Decodificar: M3 Ultra (dispositivo de alto ancho de banda de memoria, ancho de banda de memoria 3x) Sin embargo, ahora necesitamos transferir la caché de KV a través de la red (10GbE). Esto introduce un retraso.
Pero la caché de KV se crea para cada capa de transformador. Al enviar la caché de KV de cada capa después de que se calcula, superponemos la comunicación con el cálculo. Transmitimos la caché de KV y ocultamos el retraso de la red. Logramos una aceleración de 4x en prellenado y 3x en decodificación, con 0 retardo de red.
Publicación de blog completa y más detalles sobre EXO 1.0: Gracias @NVIDIA por el acceso anticipado a dos DGX Sparks. #SparkSomethingBig
439.63K