-
Notifications
You must be signed in to change notification settings - Fork 6.8k
[MXNET-261]Update MKLDNN & Add CPP Test #10365
Conversation
Should we update MKLDNN to the latest commit in its master branch? or should we always attach it to a certain version tag? What rule should we follow? |
I'd vote for using a stable version instead of the latest master. @xinyu-intel @pengzhao-intel what's the stability of the master branch? |
are you sure this is a MKL problem? it fails in all configurations. |
|
||
TEST(MKLDNN_UTIL_FUNC, MemFormat) { | ||
// Check whether the number of format is correct. | ||
CHECK_EQ(mkldnn_format_last, 56); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is mkldnn_format_last an enum or constant? If so, you can use static_assert<> somewhere in the code and it doesn't have to be a unit test.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, it's an enum. This request is from @marcoabreu. Please refer #9918 (comment) and jira#98 for the background of this. Thanks.
@zheng-da will double check. The tests in python2/3 MKLDNN-CPU passed. |
I think the failure of this ut test may be related to this old version of mklml. |
@xinyu-intel I guess you mean mklml? |
@zheng-da yes, I've made a mistake. It's mklml not mkldnn:) |
I have tried the following four tests with seed(1): First two passed: exe1 = y1.simple_bind(mx.cpu(), x=shape) Others failed: exe1 = y1.simple_bind(mx.gpu(), x=shape) (mismatch 94.4444444444%) exe1 = y1.simple_bind(mx.gpu(), x=shape) (mismatch 94.4444444444%) It seems that this test cannot pass when using GPU to compute exe1. |
@marcoabreu @cjolivier01 @zheng-da I think the conclusion (based on @xinyu-intel 's analysis) is latest MKL-DNN fixed the problem but the GPU results of @marcoabreu Regarding MKL-DNN, there's release version we can use. But the MXNET development progress is very fast so more new features (or bugfix) are needed. Thus, I think it's OK to select the master branch (based on a commit id). Each CI in MKL-DNN is fully verified and tested. BTW, as we see enabling all test cases would be a great practice to improve the quality. |
I'm indifferent about this one, at least for CI. My only concern is when we make a release with MXNet, we're unable to expect our users to use a (potentially) unstable master commit - usually people prefer to use a stable release. This means that users could run into problems because we're validating against a version of MKLDNN which is not even out yet. We have to consider this fact and have to find a solution - e.g. Intel making more frequent releases of the library, back-porting these fixes or something else along those lines. In the end, we don't want to make a release of MXNet that requires a dependency which is not even out yet.
Definitely! I appreciate efforts in that direction by a lot! Thanks a lot everybody for all your efforts! |
@xinyu-intel @pengzhao-intel could you describe what is the root of this problem? |
ping @nihui |
@xinyu-intel hello I just played with the latest code f3c01d5 build with cuda 8.0.61, and without mkl I uncomment the skip line and remove all testcase except the depth_wise_conv one
|
@nihui Thanks. A bit confused. I just tested on Tesla P100 and got the same error as before. |
@nihui Can you please help double check base on the following code in incubator-mxnet/tests/python/unittest/test_operator.py:
And I got error as follow:
Thank you! |
@xinyu-intel issue reproduced on another machine .. investigating ... |
#10578 |
Thanks, I will retrigger unit test of this pr as soon as #10578 been merged. |
All commits have been merged with #10578 , close this pr. |
Description
This pr aims to fix bugs in #8712 by update MKLDNN to the newest. CPP tests are added to monitor data format change of MKL-DNN MXNET-98
@pengzhao-intel
Checklist
Essentials
Please feel free to remove inapplicable items for your PR.
Changes