diff options
author | Yeoh Ee Peng <ee.peng.yeoh@intel.com> | 2020-01-21 13:56:00 +0800 |
---|---|---|
committer | Anuj Mittal <anuj.mittal@intel.com> | 2020-01-22 15:35:08 +0800 |
commit | 0c092dde58bb688dca787c653ee7a3282d58aeab (patch) | |
tree | 4b4685501a948328247620a3bc91b6134e0848d7 /lib/oeqa/runtime/cases | |
parent | f23e067e86a88fba9621063aa56f53aab81c8fc6 (diff) | |
download | meta-intel-0c092dde58bb688dca787c653ee7a3282d58aeab.tar.gz |
oeqa/runtime/mkl_dnn: Add mkldnn tests
Add automated tests that:
- test that mkl_dnn shared libraries and headers can be used to
compile mkl_dnn sample application and execute it
- test that mkl_dnn various api (eg. convolution, deconv, rnn, etc)
are executable
- add extra packages checking for test compiling mkldnn application
Signed-off-by: Yeoh Ee Peng <ee.peng.yeoh@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Diffstat (limited to 'lib/oeqa/runtime/cases')
-rw-r--r-- | lib/oeqa/runtime/cases/mkl_dnn.py | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/lib/oeqa/runtime/cases/mkl_dnn.py b/lib/oeqa/runtime/cases/mkl_dnn.py new file mode 100644 index 00000000..c7994b13 --- /dev/null +++ b/lib/oeqa/runtime/cases/mkl_dnn.py | |||
@@ -0,0 +1,67 @@ | |||
1 | from oeqa.runtime.case import OERuntimeTestCase | ||
2 | from oeqa.runtime.decorator.package import OEHasPackage | ||
3 | from oeqa.core.decorator.depends import OETestDepends | ||
4 | from oeqa.runtime.miutils.targets.oeqatarget import OEQATarget | ||
5 | from oeqa.runtime.miutils.tests.mkl_dnn_test import MkldnnTest | ||
6 | |||
7 | class MklDnn(OERuntimeTestCase): | ||
8 | |||
9 | @classmethod | ||
10 | def setUpClass(cls): | ||
11 | cls.mkldnntest = MkldnnTest(OEQATarget(cls.tc.target)) | ||
12 | |||
13 | @classmethod | ||
14 | def tearDownClass(cls): | ||
15 | cls.mkldnntest.tear_down() | ||
16 | |||
17 | @OEHasPackage(['libdnnl', 'libdnnl1']) | ||
18 | @OEHasPackage(['libdnnl-src']) | ||
19 | @OEHasPackage(['libdnnl-dev']) | ||
20 | @OEHasPackage(['gcc']) | ||
21 | @OEHasPackage(['gcc-symlinks']) | ||
22 | @OEHasPackage(['libstdc++-dev']) | ||
23 | @OEHasPackage(['binutils']) | ||
24 | def test_mkldnn_can_compile_and_execute(self): | ||
25 | (status, output) = self.mkldnntest.test_mkldnn_can_compile_and_execute() | ||
26 | self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output)) | ||
27 | |||
28 | @OEHasPackage(['mkl-dnn', 'libdnnl1']) | ||
29 | @OEHasPackage(['mkl-dnn-test', 'libdnnl-test']) | ||
30 | def test_mkldnn_benchdnn_package_available(self): | ||
31 | (status, output) = self.mkldnntest.test_mkldnn_benchdnn_package_available() | ||
32 | self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output)) | ||
33 | |||
34 | @OETestDepends(['mkl_dnn.MklDnn.test_mkldnn_benchdnn_package_available']) | ||
35 | def test_mkldnn_conv_api(self): | ||
36 | (status, output) = self.mkldnntest.test_mkldnn_conv_api() | ||
37 | self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output)) | ||
38 | |||
39 | @OETestDepends(['mkl_dnn.MklDnn.test_mkldnn_benchdnn_package_available']) | ||
40 | def test_mkldnn_bnorm_api(self): | ||
41 | (status, output) = self.mkldnntest.test_mkldnn_bnorm_api() | ||
42 | self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output)) | ||
43 | |||
44 | @OETestDepends(['mkl_dnn.MklDnn.test_mkldnn_benchdnn_package_available']) | ||
45 | def test_mkldnn_deconv_api(self): | ||
46 | (status, output) = self.mkldnntest.test_mkldnn_deconv_api() | ||
47 | self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output)) | ||
48 | |||
49 | @OETestDepends(['mkl_dnn.MklDnn.test_mkldnn_benchdnn_package_available']) | ||
50 | def test_mkldnn_ip_api(self): | ||
51 | (status, output) = self.mkldnntest.test_mkldnn_ip_api() | ||
52 | self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output)) | ||
53 | |||
54 | @OETestDepends(['mkl_dnn.MklDnn.test_mkldnn_benchdnn_package_available']) | ||
55 | def test_mkldnn_reorder_api(self): | ||
56 | (status, output) = self.mkldnntest.test_mkldnn_reorder_api() | ||
57 | self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output)) | ||
58 | |||
59 | @OETestDepends(['mkl_dnn.MklDnn.test_mkldnn_benchdnn_package_available']) | ||
60 | def test_mkldnn_rnn_api(self): | ||
61 | (status, output) = self.mkldnntest.test_mkldnn_rnn_api() | ||
62 | self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output)) | ||
63 | |||
64 | @OETestDepends(['mkl_dnn.MklDnn.test_mkldnn_benchdnn_package_available']) | ||
65 | def test_mkldnn_shuffle_api(self): | ||
66 | (status, output) = self.mkldnntest.test_mkldnn_shuffle_api() | ||
67 | self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output)) | ||