Fondamenta di sistemi e GPU

Prima di ottimizzare un serving engine devi sapere cosa succede dentro una GPU: dove vivono i dati, quanto costa spostarli e come migliaia di thread vengono schedulati sullo stesso chip.

Perché questo stageNon puoi ottimizzare ciò che non capisci a livello di silicio. Ogni tecnica dei prossimi stage (PagedAttention, FlashAttention, quantizzazione, tensor parallelism) è una risposta a un vincolo fisico che incontri qui.
C++ / Rust host, runtime, server CUDA kernel grid · block · thread SM + warp scheduler, registri Memoria (HBM, L2, SMEM) Interconnessioni (PCIe, NVLink)
Il percorso dello stage: dal linguaggio host al kernel, dal kernel all'hardware che lo esegue.

Le lezioni

Cosa saprai fare alla fine

Strumenti

CUDA Toolkit 12.x

nvcc, librerie (cuBLAS, cuDNN), header e runtime.

Nsight Compute

ncu: profilazione per singolo kernel, roofline, metriche di memoria.

Nsight Systems

nsys: timeline dell'intero processo, CPU e GPU insieme.

Rust + cargo

Toolchain stabile, tokio, cudarc per binding CUDA.