If you’re strongly dataloader bound in the DDP case, any Amp speedup may be negligible/not observable.
One simple thing you can try is, don’t use the dataloader at all.  In each DDP process, create a single dummy batch of data and use that through all the timing iterations.
First try it without amp, which gives an idea how strongly dataloader bound you are overall.  For example, if switching to dummy data gives a 2X speedup right away, you know the dataloader is a big bottleneck.
Then try it with amp, and see if you observe a speedup relative to the above dummy data+no amp case, which gives an idea if Amp is working.