提交 c75bd243 authored 作者: Frédéric Bastien's avatar Frédéric Bastien 提交者: GitHub

Merge pull request #5194 from Theano/notoraptor-patch-1

Update to fix python 3 error
...@@ -83,9 +83,10 @@ def test_pycuda_memory_to_theano(): ...@@ -83,9 +83,10 @@ def test_pycuda_memory_to_theano():
# This increase the ref count with never pycuda. Do pycuda also # This increase the ref count with never pycuda. Do pycuda also
# cache ndarray? # cache ndarray?
# print y.get() # print y.get()
initial_refcount = sys.getrefcount(y)
print("gpuarray ref count before creating a CudaNdarray", end=' ') print("gpuarray ref count before creating a CudaNdarray", end=' ')
print(sys.getrefcount(y)) print(sys.getrefcount(y))
assert sys.getrefcount(y) == 2 assert sys.getrefcount(y) == initial_refcount
rand = numpy.random.randn(*y.shape).astype(numpy.float32) rand = numpy.random.randn(*y.shape).astype(numpy.float32)
cuda_rand = cuda_ndarray.CudaNdarray(rand) cuda_rand = cuda_ndarray.CudaNdarray(rand)
...@@ -100,16 +101,16 @@ def test_pycuda_memory_to_theano(): ...@@ -100,16 +101,16 @@ def test_pycuda_memory_to_theano():
y_ptr = int(y.gpudata) y_ptr = int(y.gpudata)
z = cuda_ndarray.from_gpu_pointer(y_ptr, y.shape, strides, y) z = cuda_ndarray.from_gpu_pointer(y_ptr, y.shape, strides, y)
print("gpuarray ref count after creating a CudaNdarray", sys.getrefcount(y)) print("gpuarray ref count after creating a CudaNdarray", sys.getrefcount(y))
assert sys.getrefcount(y) == 3 assert sys.getrefcount(y) == initial_refcount + 1
assert (numpy.asarray(z) == 0).all() assert (numpy.asarray(z) == 0).all()
assert z.base is y assert z.base is y
# Test that we can take a view from this cuda view on pycuda memory # Test that we can take a view from this cuda view on pycuda memory
zz = z.view() zz = z.view()
assert sys.getrefcount(y) == 4 assert sys.getrefcount(y) == initial_refcount + 2
assert zz.base is y assert zz.base is y
del zz del zz
assert sys.getrefcount(y) == 3 assert sys.getrefcount(y) == initial_refcount + 1
cuda_ones = cuda_ndarray.CudaNdarray(numpy.asarray([[[1]]], cuda_ones = cuda_ndarray.CudaNdarray(numpy.asarray([[[1]]],
dtype='float32')) dtype='float32'))
...@@ -127,4 +128,4 @@ def test_pycuda_memory_to_theano(): ...@@ -127,4 +128,4 @@ def test_pycuda_memory_to_theano():
del z del z
print("gpuarray ref count after deleting the CudaNdarray", end=' ') print("gpuarray ref count after deleting the CudaNdarray", end=' ')
print(sys.getrefcount(y)) print(sys.getrefcount(y))
assert sys.getrefcount(y) == 2 assert sys.getrefcount(y) == initial_refcount
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论