I arrived at the conclusion that there is no need to re-adjust the loss value since averaging gradients will produce an effect that is the same as using the global batch size.
This can be proven computing the loss for each local batch. This loss is sum(l)/batch_size, where l is the list containing the losses for each sample in the local batch. The gradient for the i-th parameter wi will be the gradient of sum(l) w.r.t. to wi scaled by the local batch size (e.g., 128). When we average all the gradients of the various processes we will divide by the n_proc which results in the scaling factor being multiplied by n_gpus (e.g., 2), thus resulting in a scaling factor equal to the global batch size (e.g., 256).