# Conflict between model.eval() and .train() with multiprocess training and evaluation

**URL:** <https://discuss.pytorch.org/t/conflict-between-model-eval-and-train-with-multiprocess-training-and-evaluation/21380>\
**Category:** Uncategorized\
**Created:** [July 19, 2018, 10:58am UTC](https://discuss.pytorch.org/t/conflict-between-model-eval-and-train-with-multiprocess-training-and-evaluation/21380 "2018-07-19T10:58:55Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![Felix\_Lessange](https://discuss.pytorch.org/user_avatar/discuss.pytorch.org/felix_lessange/32/8959_2.png) [@Felix\_Lessange](https://discuss.pytorch.org/u/Felix_Lessange)\
**Post date:** [August 21, 2018, 1:27pm UTC](https://discuss.pytorch.org/t/conflict-between-model-eval-and-train-with-multiprocess-training-and-evaluation/21380/2 "2018-08-21T13:27:47Z")

</div>

Turns out this is related to : [Performance highly degraded when eval() is activated in the test phase](https://discuss.pytorch.org/t/performance-highly-degraded-when-eval-is-activated-in-the-test-phase/3323/16)

It’s a bug in pytorch’s definition of batchnorm according to those guys : [https://github.com/pytorch/pytorch/blob/master/torch/nn/modules/batchnorm.py](https://github.com/pytorch/pytorch/blob/master/torch/nn/modules/batchnorm.py)

Their solution only partially solved my discrepancy.

---

_[View the full topic](https://discuss.pytorch.org/t/conflict-between-model-eval-and-train-with-multiprocess-training-and-evaluation/21380)._
