Which batch size to use when Batch Normalization?
The fact that training size is not divisible by batch size does not matter (primarily)
main reasons for batch training is it requires less memory. Since you train the network using fewer samples, the overall training procedure requires less memory, also speed. Typically networks train faster with mini-batches. That's because we update the weights after each propagation.
What you have left in the last iteration will just be propagated even though its not divisible.