summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/matrix_test.cu5
-rw-r--r--tests/matrix_test.py14
2 files changed, 19 insertions, 0 deletions
diff --git a/tests/matrix_test.cu b/tests/matrix_test.cu
index 5c88a92..99e13dc 100644
--- a/tests/matrix_test.cu
+++ b/tests/matrix_test.cu
@@ -35,6 +35,11 @@ __global__ void inv(float *a, float *dest)
matrix2array(inv(m), dest);
}
+__global__ void minusmatrix(float *a, float *dest)
+{
+ matrix2array(-array2matrix(a), dest);
+}
+
__global__ void matrixadd(float *a, float *b, float *dest)
{
matrix2array(array2matrix(a)+array2matrix(b), dest);
diff --git a/tests/matrix_test.py b/tests/matrix_test.py
index 412acf9..bc4115e 100644
--- a/tests/matrix_test.py
+++ b/tests/matrix_test.py
@@ -34,6 +34,7 @@ matrixsubequalsfloat = mod.get_function('matrixsubequalsfloat')
matrixmulequalsfloat = mod.get_function('matrixmulequalsfloat')
matrixdivequalsfloat = mod.get_function('matrixdivequalsfloat')
outer = mod.get_function('outer')
+minusmatrix = mod.get_function('minusmatrix')
size = {'block': (1,1,1), 'grid': (1,1)}
@@ -308,3 +309,16 @@ for i in range(1):
print dest
else:
print 'success'
+
+ print 'testing minus matrix...',
+
+ dest = np.copy(a)
+
+ minusmatrix(cuda.In(a), cuda.Out(dest), **size)
+
+ if not np.allclose(-a, dest):
+ print 'fail'
+ print -a
+ print dest
+ else:
+ print 'success'