Inherits Reference < Object
weight_mats: all trainable parameters adam_mats: corresponding Adam m/v Mats (2 per weight mat: m, v) Order: [w0_m, w0_v, w1_m, w1_v, ...]
Adam state lives at known offsets in the same buffer
Get Adam M pointer for a specific mat index
Get Adam V pointer for a specific mat index
Bulk Adam: gather gradients, then one kernel launch for all parameters
Download all weights back to CPU