fv = f(gv) assert numpy.all(fv == av) def gpu_alloc_expected(x, *shp): g = gpuarray.empty(shp, dtype=x.dtype, context=get_context(test_ctx_name)) g[:] = x return g GpuAllocTester = makeTester( name="GpuAllocTester", op=alloc, gpu_op=GpuAlloc(test_ctx_name), cases=dict( correct01=(rand(), numpy.int32(7)), # just gives a DeepCopyOp with possibly wrong results on the CPU # correct01_bcast=(rand(1), numpy.int32(7)), correct02=(rand(), numpy.int32(4), numpy.int32(7)), correct12=(rand(7), numpy.int32(4), numpy.int32(7)), correct13=(rand(7), numpy.int32(2), numpy.int32(4), numpy.int32(7)), correct23=(rand(4, 7), numpy.int32(2), numpy.int32(4), numpy.int32(7)), bad_shape12=(rand(7), numpy.int32(7), numpy.int32(5)), )) class TestAlloc(test_basic.TestAlloc): dtype = "float32" mode = mode_with_gpu shared = staticmethod(gpuarray_shared_constructor) allocs = [GpuAlloc(test_ctx_name), GpuAlloc(test_ctx_name), T.Alloc()]
fvs = f(gvs) assert cuda_ndarray.CudaNdarrayType.values_eq_approx(fvs, cvs) def gpu_alloc_expected(x, *shp): g = gpuarray.empty(shp, dtype=x.dtype) g[:] = x return g GpuAllocTester = makeTester( name="GpuAllocTester", op=alloc, gpu_op=gpu_alloc, cases=dict( correct01=(rand(), numpy.int32(7)), # just gives a DeepCopyOp with possibly wrong results on the CPU # correct01_bcast=(rand(1), numpy.int32(7)), correct02=(rand(), numpy.int32(4), numpy.int32(7)), correct12=(rand(7), numpy.int32(4), numpy.int32(7)), correct13=(rand(7), numpy.int32(2), numpy.int32(4), numpy.int32(7)), correct23=(rand(4, 7), numpy.int32(2), numpy.int32(4), numpy.int32(7)), bad_shape12=(rand(7), numpy.int32(7), numpy.int32(5)), ) ) class TestAlloc(test_basic.TestAlloc): dtype = "float32"