Ah I understand the confusion.  I am slicing a model output that is already on GPU, interpolating it on GPU and sending that GPU batch to another model on GPU.  I am not using any sort of dataloader in my pipeline, I get GPU batches as input directly from the server.  I only suggested a dataloader as a possible work around because it does single-gpu threading, but it is not efficient.  Think of it as an object detection + classification pipeline, where I need to crop&resize the detected objects,  and send them to a classification network.
Data-dependency is exactly my point, I cannot use batch operations because the slicing parameters are data-dependent.  So I need an efficient MPSG solution.