Vai al contenuto principale
ConfrontiIntermedio6 min di lettura

ML Drift: il motore GPU on-device open source di Google, e quando batte i generalisti

i
iaLocale Team
•
ML Drift: il motore GPU on-device open source di Google, e quando batte i generalisti

ML Drift è il motore di inferenza GPU on-device che Google ha reso open source. È la stessa tecnologia che fa girare i modelli dentro Chrome, YouTube, Photos e Meet, e da oggi puoi farla girare anche tu, sulla tua GPU, col codice Apache 2.0.

Pensa alla differenza tra un motore di Formula 1 e il motore di una normale utilitaria. Ollama e llama.cpp sono il motore dell'utilitaria: versatili, affidabili, in grado di far girare quasi qualunque modello quasi ovunque. ML Drift è il motore di F1: progettato per un contesto preciso — la GPU di uno smartphone, di un browser, di un edge device — dove ogni kilobyte di memoria e ogni millisecondo di latenza contano.

Cos'è ML Drift

ML Drift è un motore di calcolo GPU cross-platform, open source con licenza Apache 2.0. Lo ha sviluppato il team di Google che si occupa di IA on-device e lo colloca come successore del delegate GPU di TensorFlow Lite: quel delegate non riceverà più nuove funzionalità, e ML Drift è il percorso ufficiale per chi fa inferenza on-device su GPU.

Si integra con LiteRT, il toolkit di Google per l'IA on-device (l'evoluzione di TensorFlow Lite), e funziona su praticamente tutte le piattaforme che hanno una GPU:

PiattaformaBackend
AndroidOpenCL
iOS, iPadOS, macOSMetal
BrowserWebGPU (via Dawn)
Windows e Linuxvia Dawn — early preview
GPU legacyOpenGL ES 3.1+

Come funziona sotto il cofano

Quattro scelte tecniche spiegano la differenza con i motori generalisti:

1. Tensor virtualization. ML Drift astrae i tensori dal modello: invece di compilare ogni operazione per ogni GPU, il motore mappa i tensori su una vista virtuale che i backend eseguono nativamente. Il risultato è meno codice specializzato per piattaforma e modelli che si comportano più simili da un device all'altro.

2. Tensori 5D. I modelli di visione (YOLO 11n, MobileViT v2, Swin v2 nei casi d'uso del repo) lavorano su tensori a 5 dimensioni; ML Drift li gestisce in modo nativo, cosa che i motori pensati per gli LLM spesso fanno a pezzi.

3. KV cache stage-aware. Per i modelli generativi, prefill e decode hanno profili di memoria diversi: la fase di prefill è pesante sui dati in ingresso, la decode gira a bassa intensità. ML Drift gestisce i due stage con strategie di cache separate, invece di un'unica strategia a compromesso.

4. Precisioni multiple. FP16, INT8 e INT4: lo stesso modello può girare a tre livelli di quantizzazione a seconda di quanta VRAM ha il device e di quanta qualità ti serve.

ML Drift, Ollama, llama.cpp: dove vince ciascuno

Non sono competitor: stanno a livelli diversi.

ML DriftOllamallama.cpp
Cosa èmotore GPU on-deviceruntime LLM generalistaengine LLM generalista
Dove eccellelatenza e memoria su devicesemplicità: un comando per tuttoversatilità di hardware e modelli
FormatiFP16 / INT8 / INT4GGUF (tramite llama.cpp)GGUF, F16
Caso d'uso tipicomodelli piccoli su mobile e browsermodello conversazionale sul desktopbenchmark e ogni GPU esistente

Quando ML Drift batte i generalisti: quando il vincolo è la memoria o la latenza su un device. Quando invece ti serve girare un modello da 24-70B in desktop, o usare l'intero ecosistema GGUF, resti su Ollama e llama.cpp. Se vuoi capire come funzionano i due engine generalisti, parti da Ollama vs llama.cpp: sotto il cofano.

I numeri del rilascio

I numeri che Google riporta nell'annuncio, tutti su hardware di produzione:

  • Gemma: fino al 12% di overhead di memoria in meno rispetto al delegate legacy
  • YouTube Shorts: fino al 40% di latenza di frame in meno (Android e iOS)
  • Google Photos: fino a 2 secondi di velocizzazione rispetto al delegate precedente
  • Adobe Lightroom e Photoshop: fino al 30% di elaborazione on-device più veloce
  • Snap: 30% di latenza di modello in meno

Il repository dichiara un ordine di grandezza rispetto ai motori di inferenza GPU open source esistenti — dato del progetto, da prendere come tale finché non arrivano benchmark indipendenti. La tecnologia è documentata nel paper tecnico arXiv 2505.00232.

E i limiti?

  • Desktop in early preview. Windows e Linux girano via Dawn: il supporto c'è, ma Google lo dichiara in fase iniziale.
  • Modelli on-device. I benchmark mostrano la famiglia Gemma: ML Drift è tarato per modelli che stanno su un device, non per sostituire un cluster. Non è un vLLM.
  • Niente ecosistema GGUF. Con FP16/INT8/INT4 non ti porti dietro la libreria di modelli quantizzati che usi con Ollama: la selezione del modello è più stretta.
  • Il delegate TFLite GPU non evolve più. Se hai app basate su di esso, la migrazione verso ML Drift/LiteRT è il percorso che Google consiglia.

Come provarlo

Il repository è il punto di partenza: contiene esempi con tensori 5D (YOLO 11n, MobileViT v2, Swin v2), il framework per le operazioni custom e un SKILL.md pensato per far lavorare un agente IA sul codice del motore. L'integrazione nelle app passa da LiteRT; nel browser, da WebGPU via Dawn. Se non va: verifica che la tua GPU esponga un backend supportato (OpenCL, Metal, WebGPU) e che il modello sia convertito in uno dei formati a precisioni supportate — sono i due punti in cui i porting falliscono più spesso. Se ti interessa come si strappa velocità extra all'inferenza senza cambiare hardware, guarda Decodifica speculativa e MTP: velocità gratis.

Fonti

In sintesi

ML Drift è il motore GPU on-device di Google, open source Apache 2.0, successore del delegate GPU di TFLite: tensori virtualizzati, KV cache separata per prefill e decode, FP16/INT8/INT4. I numeri di produzione sono reali — fino al 40% di latenza in meno su YouTube, il 30% su Adobe e Snap — e il punto di forza è il device, non il datacenter. Desktop in early preview, ecosistema di modelli più stretto di GGUF, e non è un sostituto di Ollama, llama.cpp o vLLM: è un'altra macchina, fatta per un altro lavoro.

Articolo generato con IA

In questi percorsi

#google#gpu#inferenza#ml-drift#on-device
Condividi:

Ti è piaciuto questo articolo?

Iscriviti alla newsletter per ricevere nuovi tutorial e guide.

Dopo l'iscrizione ricevi una email di conferma (double opt-in). Senza conferma non inviamo nulla. Nessuno spam, ti promettiamo.

Articoli Correlati