However, if that machine is processing requests for 10k users right now, they'll all need different experts, and the machine will end up reading every weight anyway.
I was expecting big providers to split the work between machines, such that machine 1 processes experts 1-100, machine 2 does experts 101-200 etc. Each request would be sent to the specific machines for the experts needed, and results collected again ready for the next layer (on another set of machines).
However I don't see code for any of that.
Missed optimization, or am I wrong about the best way to slice the math into the hardware?