Motore di inferenza MoE: cuda-nn

Un nuovo motore di inferenza, denominato cuda-nn, è stato sviluppato utilizzando Rust, Go e CUDA. Questo motore è specificamente progettato per l'inferenza di modelli MoE (Mixture of Experts) e si distingue per la sua capacità di operare senza dipendere da PyTorch.

Caratteristiche principali

  • Linguaggi: Implementato in Rust, Go, con binding Python per i kernel CUDA condivisi.
  • Architettura: Supporta MoE (Mixture of Experts) e MQA.
  • Prestazioni: Kernel CUDA ottimizzati (GEMM, RoPE, SwiGLU) sviluppati manualmente per massimizzare l'efficienza.
  • Parametri: Gestisce modelli con un massimo di 6,9 miliardi di parametri.

Questo progetto rappresenta un'alternativa interessante per chi cerca di ottimizzare l'inferenza di modelli di grandi dimensioni, sfruttando la potenza di CUDA e la flessibilità di Rust e Go. L'approccio di sviluppare manualmente i kernel CUDA consente un controllo più preciso sulle prestazioni, potenzialmente superando le prestazioni ottenibili con framework più generici.