提交 c3f6a4c5 authored 作者: Frederic's avatar Frederic

[MAIN]Remove python 3 version of pickled file and use the good unpickler instead.

上级 c75f7892
...@@ -96,9 +96,9 @@ def load_reduce(self): ...@@ -96,9 +96,9 @@ def load_reduce(self):
except Exception: except Exception:
pass pass
if self.is_verbose: # if self.is_verbose:
print(sys.exc_info()) # print(sys.exc_info())
print(func, args) # print(func, args)
raise raise
......
...@@ -6,6 +6,8 @@ from nose.tools import assert_raises ...@@ -6,6 +6,8 @@ from nose.tools import assert_raises
import numpy import numpy
from theano import config from theano import config
from theano.compat import PY3
from theano.misc.pkl_utils import CompatUnpickler
from theano.sandbox.cuda import cuda_available from theano.sandbox.cuda import cuda_available
if cuda_available: if cuda_available:
...@@ -30,16 +32,18 @@ def test_unpickle_cudandarray_as_numpy_ndarray_flag0(): ...@@ -30,16 +32,18 @@ def test_unpickle_cudandarray_as_numpy_ndarray_flag0():
try: try:
testfile_dir = os.path.dirname(os.path.realpath(__file__)) testfile_dir = os.path.dirname(os.path.realpath(__file__))
fname = 'CudaNdarray.pkl' fname = 'CudaNdarray.pkl'
if sys.version_info[0] == 3:
fname = 'CudaNdarray_py3.pkl'
with open(os.path.join(testfile_dir, fname), 'rb') as fp: with open(os.path.join(testfile_dir, fname), 'rb') as fp:
if PY3:
u = CompatUnpickler(fp, encoding="latin1")
else:
u = CompatUnpickler(fp)
if cuda_available: if cuda_available:
mat = cPickle.load(fp) mat = u.load()
assert isinstance(mat, CudaNdarray) assert isinstance(mat, CudaNdarray)
assert numpy.asarray(mat)[0] == -42.0 assert numpy.asarray(mat)[0] == -42.0
else: else:
assert_raises(ImportError, cPickle.load, fp) assert_raises(ImportError, u.load)
finally: finally:
config.experimental.unpickle_gpu_on_cpu = oldflag config.experimental.unpickle_gpu_on_cpu = oldflag
...@@ -52,11 +56,13 @@ def test_unpickle_cudandarray_as_numpy_ndarray_flag1(): ...@@ -52,11 +56,13 @@ def test_unpickle_cudandarray_as_numpy_ndarray_flag1():
try: try:
testfile_dir = os.path.dirname(os.path.realpath(__file__)) testfile_dir = os.path.dirname(os.path.realpath(__file__))
fname = 'CudaNdarray.pkl' fname = 'CudaNdarray.pkl'
if sys.version_info[0] == 3:
fname = 'CudaNdarray_py3.pkl'
with open(os.path.join(testfile_dir, fname), 'rb') as fp: with open(os.path.join(testfile_dir, fname), 'rb') as fp:
mat = cPickle.load(fp) if PY3:
u = CompatUnpickler(fp, encoding="latin1")
else:
u = CompatUnpickler(fp)
mat = u.load()
assert isinstance(mat, numpy.ndarray) assert isinstance(mat, numpy.ndarray)
assert mat[0] == -42.0 assert mat[0] == -42.0
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论