model.eval()
# list(model.children())[1] is the first BatchNorm2D layer
list(model.children())[1].training = True 

I could run hvp by the above modification.
However, it looks still to be an issue and strange.