From 9ff6cd75474d95dc0d1dd2f2f52640fa86b412e9 Mon Sep 17 00:00:00 2001 From: Cedric Nugteren Date: Thu, 15 Mar 2018 20:37:48 +0100 Subject: [PATCH] Added queue-finish commands to PyCLBlast samples and tests --- src/pyclblast/samples/saxpy.py | 1 + src/pyclblast/samples/sgemm.py | 1 + src/pyclblast/samples/sgemv.py | 1 + src/pyclblast/test/test_pyclblast.py | 4 ++++ 4 files changed, 7 insertions(+) diff --git a/src/pyclblast/samples/saxpy.py b/src/pyclblast/samples/saxpy.py index 098e44d5..96b9f766 100644 --- a/src/pyclblast/samples/saxpy.py +++ b/src/pyclblast/samples/saxpy.py @@ -32,5 +32,6 @@ cly.set(y) print("# Example level-1 operation: AXPY") pyclblast.axpy(queue, n, clx, cly, alpha=alpha) +queue.finish() print("# Result for vector y: %s" % cly.get()) print("# Expected result: %s" % (alpha * x + y)) diff --git a/src/pyclblast/samples/sgemm.py b/src/pyclblast/samples/sgemm.py index c872553f..c233cb6b 100644 --- a/src/pyclblast/samples/sgemm.py +++ b/src/pyclblast/samples/sgemm.py @@ -34,5 +34,6 @@ clc.set(c) print("# Example level-3 operation: GEMM") pyclblast.gemm(queue, m, n, k, cla, clb, clc, a_ld=k, b_ld=n, c_ld=n) +queue.finish() print("# Matrix C result: %s" % clc.get()) print("# Expected result: %s" % (np.dot(a, b))) diff --git a/src/pyclblast/samples/sgemv.py b/src/pyclblast/samples/sgemv.py index 196c838d..b7514dbd 100644 --- a/src/pyclblast/samples/sgemv.py +++ b/src/pyclblast/samples/sgemv.py @@ -36,5 +36,6 @@ cly.set(y) print("# Example level-2 operation: GEMV") pyclblast.gemv(queue, m, n, cla, clx, cly, a_ld=n, alpha=alpha, beta=beta) +queue.finish() print("# Result for vector y: %s" % cly.get()) print("# Expected result: %s" % (alpha * np.dot(a, x) + beta * y)) diff --git a/src/pyclblast/test/test_pyclblast.py b/src/pyclblast/test/test_pyclblast.py index 9f2e2b47..aa055d1a 100644 --- a/src/pyclblast/test/test_pyclblast.py +++ b/src/pyclblast/test/test_pyclblast.py @@ -32,6 +32,7 @@ class TestPyCLBlast(unittest.TestCase): opencl_array.set(numpy_array) host_arrays.append(numpy_array) device_arrays.append(opencl_array) + queue.finish() return queue, host_arrays, device_arrays def test_axpy(self): @@ -40,6 +41,7 @@ class TestPyCLBlast(unittest.TestCase): for n in [1, 7, 32]: queue, h, d = self.setup([(n,), (n,)], dtype=dtype) pyclblast.axpy(queue, n, d[0], d[1], alpha=alpha) + queue.finish() result = d[1].get() reference = alpha * h[0] + h[1] for i in range(n): @@ -54,6 +56,7 @@ class TestPyCLBlast(unittest.TestCase): queue, h, d = self.setup([(m, n), (n,), (m,)], dtype=dtype) pyclblast.gemv(queue, m, n, d[0], d[1], d[2], a_ld=n, alpha=alpha, beta=beta) + queue.finish() result = d[2].get() reference = alpha * np.dot(h[0], h[1]) + beta * h[2] for i in range(m): @@ -69,6 +72,7 @@ class TestPyCLBlast(unittest.TestCase): queue, h, d = self.setup([(m, k), (k, n), (m, n)], dtype=dtype) pyclblast.gemm(queue, m, n, k, d[0], d[1], d[2], a_ld=k, b_ld=n, c_ld=n, alpha=alpha, beta=beta) + queue.finish() result = d[2].get() reference = alpha * np.dot(h[0], h[1]) + beta * h[2] for i in range(m):