提交 5fba2f7c authored 作者: Pascal Lamblin's avatar Pascal Lamblin

merge

import time, atexit, copy import time, atexit, copy
from theano.gof.link import WrapLinkerMany from theano.gof.link import WrapLinker
from theano.gof.cutils import run_cthunk from theano.gof.cutils import run_cthunk
from theano.compile.mode import Mode, register_mode, predefined_modes, predefined_linkers, predefined_optimizers, default_linker, default_optimizer from theano.compile.mode import Mode, register_mode, predefined_modes, predefined_linkers, predefined_optimizers, default_linker, default_optimizer
from theano.gof.cc import OpWiseCLinker from theano.gof.cc import OpWiseCLinker
...@@ -84,7 +84,7 @@ class ProfileMode(Mode): ...@@ -84,7 +84,7 @@ class ProfileMode(Mode):
if isinstance(linker, str) or linker is None: if isinstance(linker, str) or linker is None:
linker = predefined_linkers[linker] linker = predefined_linkers[linker]
linker = WrapLinkerMany([linker], [blah]) linker = WrapLinker([linker], blah)
self.linker = linker self.linker = linker
if isinstance(optimizer, str) or optimizer is None: if isinstance(optimizer, str) or optimizer is None:
......
...@@ -18,18 +18,22 @@ def _asarray(a, dtype=None, order=None): ...@@ -18,18 +18,22 @@ def _asarray(a, dtype=None, order=None):
Currently, this issue has only been causing trouble when the target Currently, this issue has only been causing trouble when the target
data type is 'int32', on some computers. As a result, this is the only data type is 'int32', on some computers. As a result, this is the only
situation where we do more than a simple call to ``numpy.asarray``. If it situation where we may do more than a simple call to ``numpy.asarray``. If
turns out that a similar problem can occur for more data type, this it turns out that a similar problem can occur for more data type, this
function should be updated accordingly. function should be updated accordingly.
This function's name starts with a '_' to indicate that it is meant to be This function's name starts with a '_' to indicate that it is meant to be
used internally. It is imported so as to be available directly through used internally. It is imported so as to be available directly through
theano._asarray theano._asarray
""" """
dtype = numpy.dtype(dtype) # Convert into dtype object.
rval = numpy.asarray(a, dtype=dtype, order=order) rval = numpy.asarray(a, dtype=dtype, order=order)
if dtype is numpy.int32 or dtype == 'int32': numpy_int32 = numpy.dtype(numpy.int32)
# Make sure the type is properly set to the correct type. if (dtype is numpy_int32 and rval.dtype is not numpy_int32):
return rval.view(dtype=numpy.int32) # Enfore the numpy.int32 dtype.
return rval.view(dtype=numpy_int32)
else: else:
# Using ``numpy.asarray`` should work just fine. # Using ``numpy.asarray`` should work just fine.
# Debug assert if we want to detect other failure cases (untested):
# assert rval.dtype is dtype
return rval return rval
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论