提交 e8a6267e authored 作者: notoraptor's avatar notoraptor 提交者: GitHub

Update

Commented code removed, and assertion added to check that call to sys.getrefcount does nots changes the refcount.
上级 27f49908
...@@ -86,7 +86,7 @@ def test_pycuda_memory_to_theano(): ...@@ -86,7 +86,7 @@ def test_pycuda_memory_to_theano():
initial_refcount = sys.getrefcount(y) 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)
...@@ -101,18 +101,15 @@ def test_pycuda_memory_to_theano(): ...@@ -101,18 +101,15 @@ 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 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 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 assert sys.getrefcount(y) == initial_refcount + 1
cuda_ones = cuda_ndarray.CudaNdarray(numpy.asarray([[[1]]], cuda_ones = cuda_ndarray.CudaNdarray(numpy.asarray([[[1]]],
...@@ -131,5 +128,4 @@ def test_pycuda_memory_to_theano(): ...@@ -131,5 +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 assert sys.getrefcount(y) == initial_refcount
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论