From 61859cf57e7c0adfccd141ccb0cca45944111a03 Mon Sep 17 00:00:00 2001 From: etotmeni Date: Thu, 24 Dec 2020 07:35:35 -0600 Subject: [PATCH 1/5] Fix tests for enable use pytest --- .../tests/test_controllable_fallback.py | 9 ++- numba_dppy/tests/test_dpnp_functions.py | 78 +++++++++---------- numba_dppy/tests/test_dppy_fallback.py | 11 ++- numba_dppy/tests/test_math_functions.py | 26 +++---- 4 files changed, 62 insertions(+), 62 deletions(-) diff --git a/numba_dppy/tests/test_controllable_fallback.py b/numba_dppy/tests/test_controllable_fallback.py index 357f0b5e20..1211be1aeb 100644 --- a/numba_dppy/tests/test_controllable_fallback.py +++ b/numba_dppy/tests/test_controllable_fallback.py @@ -5,6 +5,7 @@ from numba_dppy.testing import unittest from numba.tests.support import captured_stderr import dpctl +import warnings @unittest.skipUnless(dpctl.has_gpu_queues(), 'test only on GPU system') @@ -24,7 +25,7 @@ def inner_call_fallback(): return a numba_dppy.compiler.DEBUG = 1 - with captured_stderr() as msg_fallback_true: + with warnings.catch_warnings(record=True) as w: with dpctl.device_context("opencl:gpu") as gpu_queue: dppy = numba.njit(parallel=True)(inner_call_fallback) dppy_fallback_true = dppy() @@ -33,7 +34,7 @@ def inner_call_fallback(): numba_dppy.compiler.DEBUG = 0 np.testing.assert_array_equal(dppy_fallback_true, ref_result) - self.assertTrue('Failed to lower parfor on DPPY-device' in msg_fallback_true.getvalue()) + assert 'Failed to lower parfor on DPPY-device' in str(w[-1].message) @unittest.expectedFailure def test_dppy_fallback_false(self): @@ -53,7 +54,7 @@ def inner_call_fallback(): try: numba_dppy.compiler.DEBUG = 1 numba_dppy.config.FALLBACK_ON_CPU = 0 - with captured_stderr() as msg_fallback_true: + with warnings.catch_warnings(record=True) as w: with dpctl.device_context("opencl:gpu") as gpu_queue: dppy = numba.njit(parallel=True)(inner_call_fallback) dppy_fallback_false = dppy() @@ -64,7 +65,7 @@ def inner_call_fallback(): numba_dppy.compiler.DEBUG = 0 not np.testing.assert_array_equal(dppy_fallback_false, ref_result) - not self.assertTrue('Failed to lower parfor on DPPY-device' in msg_fallback_true.getvalue()) + assert not 'Failed to lower parfor on DPPY-device' in str(w[-1].message) if __name__ == '__main__': diff --git a/numba_dppy/tests/test_dpnp_functions.py b/numba_dppy/tests/test_dpnp_functions.py index 166937c275..0e8d6b67fd 100644 --- a/numba_dppy/tests/test_dpnp_functions.py +++ b/numba_dppy/tests/test_dpnp_functions.py @@ -13,7 +13,7 @@ import dpctl -def test_for_different_datatypes(fn, test_fn, dims, arg_count, tys, np_all=False, matrix=None): +def case_for_different_datatypes(fn, test_fn, dims, arg_count, tys, np_all=False, matrix=None): if arg_count == 1: for ty in tys: if matrix and matrix[0]: @@ -60,7 +60,7 @@ def test_for_different_datatypes(fn, test_fn, dims, arg_count, tys, np_all=False return True -def test_for_dimensions(fn, test_fn, dims, tys, np_all=False): +def case_for_dimensions(fn, test_fn, dims, tys, np_all=False): total_size = 1 for d in dims: total_size *= d @@ -271,10 +271,10 @@ def f(a): c = np.sum(a) return c - self.assertTrue(test_for_different_datatypes( + self.assertTrue(case_for_different_datatypes( f, np.sum, [10], 1, self.tys)) - self.assertTrue(test_for_dimensions(f, np.sum, [10, 2], self.tys)) - self.assertTrue(test_for_dimensions(f, np.sum, [10, 2, 3], self.tys)) + self.assertTrue(case_for_dimensions(f, np.sum, [10, 2], self.tys)) + self.assertTrue(case_for_dimensions(f, np.sum, [10, 2, 3], self.tys)) def test_prod(self): @njit @@ -282,10 +282,10 @@ def f(a): c = np.prod(a) return c - self.assertTrue(test_for_different_datatypes( + self.assertTrue(case_for_different_datatypes( f, np.prod, [10], 1, self.tys)) - self.assertTrue(test_for_dimensions(f, np.prod, [10, 2], self.tys)) - self.assertTrue(test_for_dimensions(f, np.prod, [10, 2, 3], self.tys)) + self.assertTrue(case_for_dimensions(f, np.prod, [10, 2], self.tys)) + self.assertTrue(case_for_dimensions(f, np.prod, [10, 2, 3], self.tys)) def test_argmax(self): @njit @@ -293,10 +293,10 @@ def f(a): c = np.argmax(a) return c - self.assertTrue(test_for_different_datatypes( + self.assertTrue(case_for_different_datatypes( f, np.argmax, [10], 1, self.tys)) - self.assertTrue(test_for_dimensions(f, np.argmax, [10, 2], self.tys)) - self.assertTrue(test_for_dimensions( + self.assertTrue(case_for_dimensions(f, np.argmax, [10, 2], self.tys)) + self.assertTrue(case_for_dimensions( f, np.argmax, [10, 2, 3], self.tys)) def test_max(self): @@ -305,10 +305,10 @@ def f(a): c = np.max(a) return c - self.assertTrue(test_for_different_datatypes( + self.assertTrue(case_for_different_datatypes( f, np.max, [10], 1, self.tys)) - self.assertTrue(test_for_dimensions(f, np.max, [10, 2], self.tys)) - self.assertTrue(test_for_dimensions(f, np.max, [10, 2, 3], self.tys)) + self.assertTrue(case_for_dimensions(f, np.max, [10, 2], self.tys)) + self.assertTrue(case_for_dimensions(f, np.max, [10, 2, 3], self.tys)) def test_amax(self): @njit @@ -316,10 +316,10 @@ def f(a): c = np.amax(a) return c - self.assertTrue(test_for_different_datatypes( + self.assertTrue(case_for_different_datatypes( f, np.amax, [10], 1, self.tys)) - self.assertTrue(test_for_dimensions(f, np.amax, [10, 2], self.tys)) - self.assertTrue(test_for_dimensions(f, np.amax, [10, 2, 3], self.tys)) + self.assertTrue(case_for_dimensions(f, np.amax, [10, 2], self.tys)) + self.assertTrue(case_for_dimensions(f, np.amax, [10, 2, 3], self.tys)) def test_argmin(self): @@ -328,10 +328,10 @@ def f(a): c = np.argmin(a) return c - self.assertTrue(test_for_different_datatypes( + self.assertTrue(case_for_different_datatypes( f, np.argmin, [10], 1, self.tys)) - self.assertTrue(test_for_dimensions(f, np.argmin, [10, 2], self.tys)) - self.assertTrue(test_for_dimensions( + self.assertTrue(case_for_dimensions(f, np.argmin, [10, 2], self.tys)) + self.assertTrue(case_for_dimensions( f, np.argmin, [10, 2, 3], self.tys)) def test_min(self): @@ -340,10 +340,10 @@ def f(a): c = np.min(a) return c - self.assertTrue(test_for_different_datatypes( + self.assertTrue(case_for_different_datatypes( f, np.min, [10], 1, self.tys)) - self.assertTrue(test_for_dimensions(f, np.min, [10, 2], self.tys)) - self.assertTrue(test_for_dimensions(f, np.min, [10, 2, 3], self.tys)) + self.assertTrue(case_for_dimensions(f, np.min, [10, 2], self.tys)) + self.assertTrue(case_for_dimensions(f, np.min, [10, 2, 3], self.tys)) def test_amin(self): @njit @@ -351,10 +351,10 @@ def f(a): c = np.amin(a) return c - self.assertTrue(test_for_different_datatypes( + self.assertTrue(case_for_different_datatypes( f, np.min, [10], 1, self.tys)) - self.assertTrue(test_for_dimensions(f, np.min, [10, 2], self.tys)) - self.assertTrue(test_for_dimensions(f, np.min, [10, 2, 3], self.tys)) + self.assertTrue(case_for_dimensions(f, np.min, [10, 2], self.tys)) + self.assertTrue(case_for_dimensions(f, np.min, [10, 2, 3], self.tys)) def test_argsort(self): @njit @@ -362,7 +362,7 @@ def f(a): c = np.argsort(a) return c - self.assertTrue(test_for_different_datatypes( + self.assertTrue(case_for_different_datatypes( f, np.argmin, [10], 1, self.tys, np_all=True)) def test_median(self): @@ -371,10 +371,10 @@ def f(a): c = np.median(a) return c - self.assertTrue(test_for_different_datatypes( + self.assertTrue(case_for_different_datatypes( f, np.median, [10], 1, self.tys)) - self.assertTrue(test_for_dimensions(f, np.median, [10, 2], self.tys)) - self.assertTrue(test_for_dimensions( + self.assertTrue(case_for_dimensions(f, np.median, [10, 2], self.tys)) + self.assertTrue(case_for_dimensions( f, np.median, [10, 2, 3], self.tys)) def test_mean(self): @@ -383,10 +383,10 @@ def f(a): c = np.mean(a) return c - self.assertTrue(test_for_different_datatypes( + self.assertTrue(case_for_different_datatypes( f, np.mean, [10], 1, self.tys)) - self.assertTrue(test_for_dimensions(f, np.mean, [10, 2], self.tys)) - self.assertTrue(test_for_dimensions(f, np.mean, [10, 2, 3], self.tys)) + self.assertTrue(case_for_dimensions(f, np.mean, [10, 2], self.tys)) + self.assertTrue(case_for_dimensions(f, np.mean, [10, 2, 3], self.tys)) def test_matmul(self): @njit @@ -394,7 +394,7 @@ def f(a, b): c = np.matmul(a, b) return c - self.assertTrue(test_for_different_datatypes(f, np.matmul, [10, 5, 5, 10], 2, [ + self.assertTrue(case_for_different_datatypes(f, np.matmul, [10, 5, 5, 10], 2, [ np.float, np.double], np_all=True, matrix=[True, True])) def test_dot(self): @@ -403,13 +403,13 @@ def f(a, b): c = np.dot(a, b) return c - self.assertTrue(test_for_different_datatypes( + self.assertTrue(case_for_different_datatypes( f, np.dot, [10, 1, 10, 1], 2, [np.float, np.double])) - self.assertTrue(test_for_different_datatypes(f, np.dot, [10, 1, 10, 2], 2, [ + self.assertTrue(case_for_different_datatypes(f, np.dot, [10, 1, 10, 2], 2, [ np.float, np.double], matrix=[False, True], np_all=True)) - self.assertTrue(test_for_different_datatypes(f, np.dot, [2, 10, 10, 1], 2, [ + self.assertTrue(case_for_different_datatypes(f, np.dot, [2, 10, 10, 1], 2, [ np.float, np.double], matrix=[True, False], np_all=True)) - self.assertTrue(test_for_different_datatypes(f, np.dot, [10, 2, 2, 10], 2, [ + self.assertTrue(case_for_different_datatypes(f, np.dot, [10, 2, 2, 10], 2, [ np.float, np.double], matrix=[True, True], np_all=True)) def test_cov(self): @@ -418,7 +418,7 @@ def f(a): c = np.cov(a) return c - self.assertTrue(test_for_different_datatypes( + self.assertTrue(case_for_different_datatypes( f, np.cov, [10, 7], 1, self.tys, matrix=[True], np_all=True)) def test_dpnp_interacting_with_parfor(self): diff --git a/numba_dppy/tests/test_dppy_fallback.py b/numba_dppy/tests/test_dppy_fallback.py index dd05bbdc84..1e4b69c7b5 100644 --- a/numba_dppy/tests/test_dppy_fallback.py +++ b/numba_dppy/tests/test_dppy_fallback.py @@ -4,6 +4,7 @@ import unittest from numba.tests.support import captured_stderr import dpctl +import warnings @unittest.skipUnless(dpctl.has_gpu_queues(), 'test only on GPU system') @@ -22,15 +23,14 @@ def inner_call_fallback(): return a - with captured_stderr() as msg, dpctl.device_context("opencl:gpu"): + with warnings.catch_warnings(record=True) as w, dpctl.device_context("opencl:gpu"): dppy = numba.njit(inner_call_fallback) dppy_result = dppy() ref_result = inner_call_fallback() np.testing.assert_array_equal(dppy_result, ref_result) - self.assertTrue( - 'Failed to lower parfor on DPPY-device' in msg.getvalue()) + assert 'Failed to lower parfor on DPPY-device' in str(w[-1].message) def test_dppy_fallback_reductions(self): def reduction(a): @@ -40,15 +40,14 @@ def reduction(a): return b a = np.ones(10) - with captured_stderr() as msg, dpctl.device_context("opencl:gpu"): + with warnings.catch_warnings(record=True) as w, dpctl.device_context("opencl:gpu"): dppy = numba.njit(reduction) dppy_result = dppy(a) ref_result = reduction(a) np.testing.assert_array_equal(dppy_result, ref_result) - self.assertTrue( - 'Failed to lower parfor on DPPY-device' in msg.getvalue()) + assert 'Failed to lower parfor on DPPY-device' in str(w[-1].message) if __name__ == '__main__': diff --git a/numba_dppy/tests/test_math_functions.py b/numba_dppy/tests/test_math_functions.py index 6336c63759..1afa04fafc 100644 --- a/numba_dppy/tests/test_math_functions.py +++ b/numba_dppy/tests/test_math_functions.py @@ -52,7 +52,7 @@ def driver(a, jitfunc): return b -def test_driver(input_arr, device_ty, jitfunc): +def case_driver(input_arr, device_ty, jitfunc): out_actual = None if device_ty == "GPU": with dpctl.device_context("opencl:gpu") as gpu_queue: @@ -70,32 +70,32 @@ def test_driver(input_arr, device_ty, jitfunc): @unittest.skipUnless(dpctl.has_cpu_queues(), 'test only on CPU system') class TestDPPYMathFunctionsCPU(unittest.TestCase): def test_fabs_cpu(self): - b_actual = test_driver(a, "CPU", dppy_fabs) + b_actual = case_driver(a, "CPU", dppy_fabs) b_expected = np.fabs(a) self.assertTrue(np.all(b_actual == b_expected)) def test_sin_cpu(self): - b_actual = test_driver(a, "CPU", dppy_sin) + b_actual = case_driver(a, "CPU", dppy_sin) b_expected = np.sin(a) self.assertTrue(np.allclose(b_actual,b_expected)) def test_cos_cpu(self): - b_actual = test_driver(a, "CPU", dppy_cos) + b_actual = case_driver(a, "CPU", dppy_cos) b_expected = np.cos(a) self.assertTrue(np.allclose(b_actual,b_expected)) def test_exp_cpu(self): - b_actual = test_driver(a, "CPU", dppy_exp) + b_actual = case_driver(a, "CPU", dppy_exp) b_expected = np.exp(a) self.assertTrue(np.allclose(b_actual,b_expected)) def test_sqrt_cpu(self): - b_actual = test_driver(a, "CPU", dppy_sqrt) + b_actual = case_driver(a, "CPU", dppy_sqrt) b_expected = np.sqrt(a) self.assertTrue(np.allclose(b_actual,b_expected)) def test_log_cpu(self): - b_actual = test_driver(a, "CPU", dppy_log) + b_actual = case_driver(a, "CPU", dppy_log) b_expected = np.log(a) self.assertTrue(np.allclose(b_actual,b_expected)) @@ -103,32 +103,32 @@ def test_log_cpu(self): @unittest.skipUnless(dpctl.has_gpu_queues(), 'test only on GPU system') class TestDPPYMathFunctionsGPU(unittest.TestCase): def test_fabs_gpu(self): - b_actual = test_driver(a, "GPU", dppy_fabs) + b_actual = case_driver(a, "GPU", dppy_fabs) b_expected = np.fabs(a) self.assertTrue(np.all(b_actual == b_expected)) def test_sin_gpu(self): - b_actual = test_driver(a, "GPU", dppy_sin) + b_actual = case_driver(a, "GPU", dppy_sin) b_expected = np.sin(a) self.assertTrue(np.allclose(b_actual,b_expected)) def test_cos_gpu(self): - b_actual = test_driver(a, "GPU", dppy_cos) + b_actual = case_driver(a, "GPU", dppy_cos) b_expected = np.cos(a) self.assertTrue(np.allclose(b_actual,b_expected)) def test_exp_gpu(self): - b_actual = test_driver(a, "GPU", dppy_exp) + b_actual = case_driver(a, "GPU", dppy_exp) b_expected = np.exp(a) self.assertTrue(np.allclose(b_actual,b_expected)) def test_sqrt_gpu(self): - b_actual = test_driver(a, "GPU", dppy_sqrt) + b_actual = case_driver(a, "GPU", dppy_sqrt) b_expected = np.sqrt(a) self.assertTrue(np.allclose(b_actual,b_expected)) def test_log_gpu(self): - b_actual = test_driver(a, "GPU", dppy_log) + b_actual = case_driver(a, "GPU", dppy_log) b_expected = np.log(a) self.assertTrue(np.allclose(b_actual,b_expected)) From 78facc96a5608ccb5263369189668bee68a08b61 Mon Sep 17 00:00:00 2001 From: etotmeni Date: Tue, 12 Jan 2021 07:19:57 -0600 Subject: [PATCH 2/5] fix black --- .../tests/test_controllable_fallback.py | 6 +- numba_dppy/tests/test_dpnp_functions.py | 115 +++++++++++------- numba_dppy/tests/test_dppy_fallback.py | 12 +- 3 files changed, 85 insertions(+), 48 deletions(-) diff --git a/numba_dppy/tests/test_controllable_fallback.py b/numba_dppy/tests/test_controllable_fallback.py index 00f676fc45..faec2890f8 100644 --- a/numba_dppy/tests/test_controllable_fallback.py +++ b/numba_dppy/tests/test_controllable_fallback.py @@ -34,7 +34,7 @@ def inner_call_fallback(): numba_dppy.compiler.DEBUG = 0 np.testing.assert_array_equal(dppy_fallback_true, ref_result) - assert 'Failed to lower parfor on DPPY-device' in str(w[-1].message) + assert "Failed to lower parfor on DPPY-device" in str(w[-1].message) @unittest.expectedFailure def test_dppy_fallback_false(self): @@ -53,7 +53,7 @@ def inner_call_fallback(): try: numba_dppy.compiler.DEBUG = 1 - numba_dppy.config.FALLBACK_ON_CPU = 0 + numba_dppy.config.FALLBACK_ON_CPU = 0 with warnings.catch_warnings(record=True) as w: with dpctl.device_context("opencl:gpu") as gpu_queue: dppy = numba.njit(parallel=True)(inner_call_fallback) @@ -65,7 +65,7 @@ def inner_call_fallback(): numba_dppy.compiler.DEBUG = 0 not np.testing.assert_array_equal(dppy_fallback_false, ref_result) - assert not 'Failed to lower parfor on DPPY-device' in str(w[-1].message) + assert not "Failed to lower parfor on DPPY-device" in str(w[-1].message) if __name__ == "__main__": diff --git a/numba_dppy/tests/test_dpnp_functions.py b/numba_dppy/tests/test_dpnp_functions.py index d07ec36d77..ed5081991b 100644 --- a/numba_dppy/tests/test_dpnp_functions.py +++ b/numba_dppy/tests/test_dpnp_functions.py @@ -13,7 +13,10 @@ import dpctl -def case_for_different_datatypes(fn, test_fn, dims, arg_count, tys, np_all=False, matrix=None): + +def case_for_different_datatypes( + fn, test_fn, dims, arg_count, tys, np_all=False, matrix=None +): if arg_count == 1: for ty in tys: if matrix and matrix[0]: @@ -280,8 +283,7 @@ def f(a): c = np.sum(a) return c - self.assertTrue(case_for_different_datatypes( - f, np.sum, [10], 1, self.tys)) + self.assertTrue(case_for_different_datatypes(f, np.sum, [10], 1, self.tys)) self.assertTrue(case_for_dimensions(f, np.sum, [10, 2], self.tys)) self.assertTrue(case_for_dimensions(f, np.sum, [10, 2, 3], self.tys)) @@ -291,8 +293,7 @@ def f(a): c = np.prod(a) return c - self.assertTrue(case_for_different_datatypes( - f, np.prod, [10], 1, self.tys)) + self.assertTrue(case_for_different_datatypes(f, np.prod, [10], 1, self.tys)) self.assertTrue(case_for_dimensions(f, np.prod, [10, 2], self.tys)) self.assertTrue(case_for_dimensions(f, np.prod, [10, 2, 3], self.tys)) @@ -302,11 +303,9 @@ def f(a): c = np.argmax(a) return c - self.assertTrue(case_for_different_datatypes( - f, np.argmax, [10], 1, self.tys)) + self.assertTrue(case_for_different_datatypes(f, np.argmax, [10], 1, self.tys)) self.assertTrue(case_for_dimensions(f, np.argmax, [10, 2], self.tys)) - self.assertTrue(case_for_dimensions( - f, np.argmax, [10, 2, 3], self.tys)) + self.assertTrue(case_for_dimensions(f, np.argmax, [10, 2, 3], self.tys)) def test_max(self): @njit @@ -314,8 +313,7 @@ def f(a): c = np.max(a) return c - self.assertTrue(case_for_different_datatypes( - f, np.max, [10], 1, self.tys)) + self.assertTrue(case_for_different_datatypes(f, np.max, [10], 1, self.tys)) self.assertTrue(case_for_dimensions(f, np.max, [10, 2], self.tys)) self.assertTrue(case_for_dimensions(f, np.max, [10, 2, 3], self.tys)) @@ -325,8 +323,7 @@ def f(a): c = np.amax(a) return c - self.assertTrue(case_for_different_datatypes( - f, np.amax, [10], 1, self.tys)) + self.assertTrue(case_for_different_datatypes(f, np.amax, [10], 1, self.tys)) self.assertTrue(case_for_dimensions(f, np.amax, [10, 2], self.tys)) self.assertTrue(case_for_dimensions(f, np.amax, [10, 2, 3], self.tys)) @@ -336,11 +333,9 @@ def f(a): c = np.argmin(a) return c - self.assertTrue(case_for_different_datatypes( - f, np.argmin, [10], 1, self.tys)) + self.assertTrue(case_for_different_datatypes(f, np.argmin, [10], 1, self.tys)) self.assertTrue(case_for_dimensions(f, np.argmin, [10, 2], self.tys)) - self.assertTrue(case_for_dimensions( - f, np.argmin, [10, 2, 3], self.tys)) + self.assertTrue(case_for_dimensions(f, np.argmin, [10, 2, 3], self.tys)) def test_min(self): @njit @@ -348,8 +343,7 @@ def f(a): c = np.min(a) return c - self.assertTrue(case_for_different_datatypes( - f, np.min, [10], 1, self.tys)) + self.assertTrue(case_for_different_datatypes(f, np.min, [10], 1, self.tys)) self.assertTrue(case_for_dimensions(f, np.min, [10, 2], self.tys)) self.assertTrue(case_for_dimensions(f, np.min, [10, 2, 3], self.tys)) @@ -359,8 +353,7 @@ def f(a): c = np.amin(a) return c - self.assertTrue(case_for_different_datatypes( - f, np.min, [10], 1, self.tys)) + self.assertTrue(case_for_different_datatypes(f, np.min, [10], 1, self.tys)) self.assertTrue(case_for_dimensions(f, np.min, [10, 2], self.tys)) self.assertTrue(case_for_dimensions(f, np.min, [10, 2, 3], self.tys)) @@ -370,8 +363,9 @@ def f(a): c = np.argsort(a) return c - self.assertTrue(case_for_different_datatypes( - f, np.argmin, [10], 1, self.tys, np_all=True)) + self.assertTrue( + case_for_different_datatypes(f, np.argmin, [10], 1, self.tys, np_all=True) + ) def test_median(self): @njit @@ -379,11 +373,9 @@ def f(a): c = np.median(a) return c - self.assertTrue(case_for_different_datatypes( - f, np.median, [10], 1, self.tys)) + self.assertTrue(case_for_different_datatypes(f, np.median, [10], 1, self.tys)) self.assertTrue(case_for_dimensions(f, np.median, [10, 2], self.tys)) - self.assertTrue(case_for_dimensions( - f, np.median, [10, 2, 3], self.tys)) + self.assertTrue(case_for_dimensions(f, np.median, [10, 2, 3], self.tys)) def test_mean(self): @njit @@ -391,8 +383,7 @@ def f(a): c = np.mean(a) return c - self.assertTrue(case_for_different_datatypes( - f, np.mean, [10], 1, self.tys)) + self.assertTrue(case_for_different_datatypes(f, np.mean, [10], 1, self.tys)) self.assertTrue(case_for_dimensions(f, np.mean, [10, 2], self.tys)) self.assertTrue(case_for_dimensions(f, np.mean, [10, 2, 3], self.tys)) @@ -402,8 +393,17 @@ def f(a, b): c = np.matmul(a, b) return c - self.assertTrue(case_for_different_datatypes(f, np.matmul, [10, 5, 5, 10], 2, [ - np.float, np.double], np_all=True, matrix=[True, True])) + self.assertTrue( + case_for_different_datatypes( + f, + np.matmul, + [10, 5, 5, 10], + 2, + [np.float, np.double], + np_all=True, + matrix=[True, True], + ) + ) def test_dot(self): @njit @@ -411,14 +411,44 @@ def f(a, b): c = np.dot(a, b) return c - self.assertTrue(case_for_different_datatypes( - f, np.dot, [10, 1, 10, 1], 2, [np.float, np.double])) - self.assertTrue(case_for_different_datatypes(f, np.dot, [10, 1, 10, 2], 2, [ - np.float, np.double], matrix=[False, True], np_all=True)) - self.assertTrue(case_for_different_datatypes(f, np.dot, [2, 10, 10, 1], 2, [ - np.float, np.double], matrix=[True, False], np_all=True)) - self.assertTrue(case_for_different_datatypes(f, np.dot, [10, 2, 2, 10], 2, [ - np.float, np.double], matrix=[True, True], np_all=True)) + self.assertTrue( + case_for_different_datatypes( + f, np.dot, [10, 1, 10, 1], 2, [np.float, np.double] + ) + ) + self.assertTrue( + case_for_different_datatypes( + f, + np.dot, + [10, 1, 10, 2], + 2, + [np.float, np.double], + matrix=[False, True], + np_all=True, + ) + ) + self.assertTrue( + case_for_different_datatypes( + f, + np.dot, + [2, 10, 10, 1], + 2, + [np.float, np.double], + matrix=[True, False], + np_all=True, + ) + ) + self.assertTrue( + case_for_different_datatypes( + f, + np.dot, + [10, 2, 2, 10], + 2, + [np.float, np.double], + matrix=[True, True], + np_all=True, + ) + ) def test_cov(self): @njit @@ -426,8 +456,11 @@ def f(a): c = np.cov(a) return c - self.assertTrue(case_for_different_datatypes( - f, np.cov, [10, 7], 1, self.tys, matrix=[True], np_all=True)) + self.assertTrue( + case_for_different_datatypes( + f, np.cov, [10, 7], 1, self.tys, matrix=[True], np_all=True + ) + ) def test_dpnp_interacting_with_parfor(self): @njit diff --git a/numba_dppy/tests/test_dppy_fallback.py b/numba_dppy/tests/test_dppy_fallback.py index 6f430c0e89..3f56d24ea8 100644 --- a/numba_dppy/tests/test_dppy_fallback.py +++ b/numba_dppy/tests/test_dppy_fallback.py @@ -23,14 +23,16 @@ def inner_call_fallback(): return a - with warnings.catch_warnings(record=True) as w, dpctl.device_context("opencl:gpu"): + with warnings.catch_warnings(record=True) as w, dpctl.device_context( + "opencl:gpu" + ): dppy = numba.njit(inner_call_fallback) dppy_result = dppy() ref_result = inner_call_fallback() np.testing.assert_array_equal(dppy_result, ref_result) - assert 'Failed to lower parfor on DPPY-device' in str(w[-1].message) + assert "Failed to lower parfor on DPPY-device" in str(w[-1].message) def test_dppy_fallback_reductions(self): def reduction(a): @@ -40,14 +42,16 @@ def reduction(a): return b a = np.ones(10) - with warnings.catch_warnings(record=True) as w, dpctl.device_context("opencl:gpu"): + with warnings.catch_warnings(record=True) as w, dpctl.device_context( + "opencl:gpu" + ): dppy = numba.njit(reduction) dppy_result = dppy(a) ref_result = reduction(a) np.testing.assert_array_equal(dppy_result, ref_result) - assert 'Failed to lower parfor on DPPY-device' in str(w[-1].message) + assert "Failed to lower parfor on DPPY-device" in str(w[-1].message) if __name__ == "__main__": From 7839ddf685308c9d7118720a8529932d812fa9e2 Mon Sep 17 00:00:00 2001 From: etotmeni Date: Fri, 29 Jan 2021 09:26:28 -0600 Subject: [PATCH 3/5] Small fixes --- numba_dppy/tests/test_dppy_fallback.py | 5 ++--- numba_dppy/tests/test_math_functions.py | 26 ++++++++++++------------- 2 files changed, 15 insertions(+), 16 deletions(-) diff --git a/numba_dppy/tests/test_dppy_fallback.py b/numba_dppy/tests/test_dppy_fallback.py index 3f56d24ea8..b68ea54512 100644 --- a/numba_dppy/tests/test_dppy_fallback.py +++ b/numba_dppy/tests/test_dppy_fallback.py @@ -2,7 +2,6 @@ import numba import unittest -from numba.tests.support import captured_stderr import dpctl import warnings @@ -32,7 +31,7 @@ def inner_call_fallback(): ref_result = inner_call_fallback() np.testing.assert_array_equal(dppy_result, ref_result) - assert "Failed to lower parfor on DPPY-device" in str(w[-1].message) + self.assertIn("Failed to lower parfor on DPPY-device", str(w[-1].message)) def test_dppy_fallback_reductions(self): def reduction(a): @@ -51,7 +50,7 @@ def reduction(a): ref_result = reduction(a) np.testing.assert_array_equal(dppy_result, ref_result) - assert "Failed to lower parfor on DPPY-device" in str(w[-1].message) + self.assertIn("Failed to lower parfor on DPPY-device", str(w[-1].message)) if __name__ == "__main__": diff --git a/numba_dppy/tests/test_math_functions.py b/numba_dppy/tests/test_math_functions.py index 8c414b6af1..73b92951db 100644 --- a/numba_dppy/tests/test_math_functions.py +++ b/numba_dppy/tests/test_math_functions.py @@ -61,7 +61,7 @@ def driver(a, jitfunc): return b -def case_driver(input_arr, device_ty, jitfunc): +def check_driver(input_arr, device_ty, jitfunc): out_actual = None if device_ty == "GPU": with dpctl.device_context("opencl:gpu") as gpu_queue: @@ -79,32 +79,32 @@ def case_driver(input_arr, device_ty, jitfunc): @unittest.skipUnless(dpctl.has_cpu_queues(), "test only on CPU system") class TestDPPYMathFunctionsCPU(unittest.TestCase): def test_fabs_cpu(self): - b_actual = case_driver(a, "CPU", dppy_fabs) + b_actual = check_driver(a, "CPU", dppy_fabs) b_expected = np.fabs(a) self.assertTrue(np.all(b_actual == b_expected)) def test_sin_cpu(self): - b_actual = case_driver(a, "CPU", dppy_sin) + b_actual = check_driver(a, "CPU", dppy_sin) b_expected = np.sin(a) self.assertTrue(np.allclose(b_actual, b_expected)) def test_cos_cpu(self): - b_actual = case_driver(a, "CPU", dppy_cos) + b_actual = check_driver(a, "CPU", dppy_cos) b_expected = np.cos(a) self.assertTrue(np.allclose(b_actual, b_expected)) def test_exp_cpu(self): - b_actual = case_driver(a, "CPU", dppy_exp) + b_actual = check_driver(a, "CPU", dppy_exp) b_expected = np.exp(a) self.assertTrue(np.allclose(b_actual, b_expected)) def test_sqrt_cpu(self): - b_actual = case_driver(a, "CPU", dppy_sqrt) + b_actual = check_driver(a, "CPU", dppy_sqrt) b_expected = np.sqrt(a) self.assertTrue(np.allclose(b_actual, b_expected)) def test_log_cpu(self): - b_actual = case_driver(a, "CPU", dppy_log) + b_actual = check_driver(a, "CPU", dppy_log) b_expected = np.log(a) self.assertTrue(np.allclose(b_actual, b_expected)) @@ -112,32 +112,32 @@ def test_log_cpu(self): @unittest.skipUnless(dpctl.has_gpu_queues(), "test only on GPU system") class TestDPPYMathFunctionsGPU(unittest.TestCase): def test_fabs_gpu(self): - b_actual = case_driver(a, "GPU", dppy_fabs) + b_actual = check_driver(a, "GPU", dppy_fabs) b_expected = np.fabs(a) self.assertTrue(np.all(b_actual == b_expected)) def test_sin_gpu(self): - b_actual = case_driver(a, "GPU", dppy_sin) + b_actual = check_driver(a, "GPU", dppy_sin) b_expected = np.sin(a) self.assertTrue(np.allclose(b_actual, b_expected)) def test_cos_gpu(self): - b_actual = case_driver(a, "GPU", dppy_cos) + b_actual = check_driver(a, "GPU", dppy_cos) b_expected = np.cos(a) self.assertTrue(np.allclose(b_actual, b_expected)) def test_exp_gpu(self): - b_actual = case_driver(a, "GPU", dppy_exp) + b_actual = check_driver(a, "GPU", dppy_exp) b_expected = np.exp(a) self.assertTrue(np.allclose(b_actual, b_expected)) def test_sqrt_gpu(self): - b_actual = case_driver(a, "GPU", dppy_sqrt) + b_actual = check_driver(a, "GPU", dppy_sqrt) b_expected = np.sqrt(a) self.assertTrue(np.allclose(b_actual, b_expected)) def test_log_gpu(self): - b_actual = case_driver(a, "GPU", dppy_log) + b_actual = check_driver(a, "GPU", dppy_log) b_expected = np.log(a) self.assertTrue(np.allclose(b_actual, b_expected)) From 162a004d724e7b098d370d053f81e5e696001ec8 Mon Sep 17 00:00:00 2001 From: etotmeni Date: Fri, 29 Jan 2021 10:16:24 -0600 Subject: [PATCH 4/5] Fixes --- numba_dppy/tests/test_controllable_fallback.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/numba_dppy/tests/test_controllable_fallback.py b/numba_dppy/tests/test_controllable_fallback.py index faec2890f8..97b2c1f57d 100644 --- a/numba_dppy/tests/test_controllable_fallback.py +++ b/numba_dppy/tests/test_controllable_fallback.py @@ -3,7 +3,6 @@ import numba import numba_dppy from numba_dppy.testing import unittest -from numba.tests.support import captured_stderr import dpctl import warnings @@ -34,7 +33,7 @@ def inner_call_fallback(): numba_dppy.compiler.DEBUG = 0 np.testing.assert_array_equal(dppy_fallback_true, ref_result) - assert "Failed to lower parfor on DPPY-device" in str(w[-1].message) + self.assertIn("Failed to lower parfor on DPPY-device", str(w[-1].message)) @unittest.expectedFailure def test_dppy_fallback_false(self): @@ -65,7 +64,7 @@ def inner_call_fallback(): numba_dppy.compiler.DEBUG = 0 not np.testing.assert_array_equal(dppy_fallback_false, ref_result) - assert not "Failed to lower parfor on DPPY-device" in str(w[-1].message) + self.assertNotIn("Failed to lower parfor on DPPY-device", str(w[-1].message)) if __name__ == "__main__": From 1babc739001285b68403fc2cb256d9b6736cb110 Mon Sep 17 00:00:00 2001 From: etotmeni Date: Fri, 29 Jan 2021 10:27:31 -0600 Subject: [PATCH 5/5] Fix black --- numba_dppy/tests/test_controllable_fallback.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/numba_dppy/tests/test_controllable_fallback.py b/numba_dppy/tests/test_controllable_fallback.py index 97b2c1f57d..4565b801ca 100644 --- a/numba_dppy/tests/test_controllable_fallback.py +++ b/numba_dppy/tests/test_controllable_fallback.py @@ -64,7 +64,9 @@ def inner_call_fallback(): numba_dppy.compiler.DEBUG = 0 not np.testing.assert_array_equal(dppy_fallback_false, ref_result) - self.assertNotIn("Failed to lower parfor on DPPY-device", str(w[-1].message)) + self.assertNotIn( + "Failed to lower parfor on DPPY-device", str(w[-1].message) + ) if __name__ == "__main__":