@John_Grabner To be honest, I have no idea. Maybe someone with a deeper knowledge of the implementation will reply to this.
If I would have to guess, I would say that this is optimized. After all, this is kind of the purpose of an embedding layer compared to a general linaer layer: exploiting the knowledge that just one index/row is affected – or multiple indices/rows in case multiple inputs.
Just don’t quote me on this