In 0.1.12 batch_norm is defined here 3. The corresponding C function is defined here 2.
I’ve compared the BatchNorm implementation for version 0.3.0 (code 2).
Between these versions there are some minor changes:


long was replaces by int64_t


THTensor_(resizeAs)(gradInput, input) was moved a bit up

You can find the current implementation of BatchNorm here 5.
Basically some conditions were added, since BatchNorm supports track_running_stats from version 0.4.0 on.
Are you sure the difference is due to the BatchNorm layers?