Clustering NVIDIA DGX Spark + M3 Ultra Mac Studio pentru inferență LLM de 4 ori mai rapidă. DGX Scânteie: 128 GB @ 273 GB/s, 100 TFLOPS (fp16), 3.999 USD M3 Ultra: 256 GB @ 819 GB/s, 26 TFLOPS (fp16), 5.599 USD DGX Spark are de 3 ori mai puțină lățime de bandă de memorie decât M3 Ultra, dar de 4 ori mai mult FLOPS. Rulând preumplerea legată de calcul pe DGX Spark, decodarea legată de memorie pe M3 Ultra și transmiterea cache-ului KV peste 10GbE, putem obține tot ce este mai bun din ambele hardware cu accelerări masive. Scurtă explicație în acest subiect și link către postarea completă de mai jos.
Inferența LLM constă într-o etapă de precompletare și decodare. Precompletarea procesează promptul, construind un cache KV. Este legat de calcul, deci devine mai rapid cu mai multe FLOPS. Decodarea citește memoria cache KV și generează token-uri unul câte unul. Este legat de memorie, deci devine mai rapid cu mai multă lățime de bandă a memoriei.
Putem rula aceste două etape pe diferite dispozitive: Preumplere: DGX Spark (dispozitiv de calcul ridicat, calcul 4x) Decodare: M3 Ultra (dispozitiv cu lățime de bandă mare a memoriei, lățime de bandă a memoriei de 3x) Cu toate acestea, acum trebuie să transferăm memoria cache KV prin rețea (10GbE). Acest lucru introduce o întârziere.
Dar cache-ul KV este creat pentru fiecare strat de transformator. Prin trimiterea cache-ului KV al fiecărui strat după ce este calculat, suprapunem comunicarea cu calculul. Transmitem memoria cache KV și ascundem întârzierea rețelei. Obținem o viteză de 4x în preumplere și 3x în decodare, cu 0 întârziere de rețea.
Postare completă pe blog și mai multe detalii despre EXO 1.0: Mulțumim @NVIDIA pentru accesul timpuriu la două DGX Sparks. #SparkSomethingBig
439,63K