I don’t know how large the performance difference between SparseAdam and Adam for which workload is, unfortunately. 
Let us know, how your experiments go and if you are seeing a major bottleneck in the embedding layer.