Is the size of outputs3 significantly different from the size of outputs1 and outputs2?  Also are you using CPU or GPU for your computations?  (And is there any reason you’re passing in labels1.float() instead of just labels1?)
You could also try running torch.utils.bottleneck 4 on your code to see where exactly the slowdown is happening.