提交 0d80e16f authored 作者: Olivier Breuleux's avatar Olivier Breuleux

a

上级 5d254523
...@@ -800,6 +800,11 @@ class log(elemwise): ...@@ -800,6 +800,11 @@ class log(elemwise):
impl = numpy.log impl = numpy.log
def c_foreach((x_i, ), (z_i, )): def c_foreach((x_i, ), (z_i, )):
return "z_i = log(x_i);" return "z_i = log(x_i);"
class log2(elemwise):
impl = numpy.log2
def c_foreach((x_i, ), (z_i, )):
return "z_i = log(x_i);"
## Element-wise division ## ## Element-wise division ##
...@@ -1023,6 +1028,7 @@ class dot(omega_op): ...@@ -1023,6 +1028,7 @@ class dot(omega_op):
return dot(gz, transpose(y)), dot(transpose(x), gz) return dot(gz, transpose(y)), dot(transpose(x), gz)
def specs(x, y): def specs(x, y):
# todo: handle all tensors! # todo: handle all tensors!
assert x[2][1] == y[2][0]
shape = (x[2][0], y[2][1]) shape = (x[2][0], y[2][1])
return (numpy.ndarray, upcast(x[1], y[1]), shape) return (numpy.ndarray, upcast(x[1], y[1]), shape)
def c_headers(self): def c_headers(self):
......
...@@ -223,8 +223,8 @@ class PythonOp(Op): ...@@ -223,8 +223,8 @@ class PythonOp(Op):
def _perform(self): def _perform(self):
results = self._impl() results = self._impl()
if self.nout == 1: if self.nout == 1:
#self.out.set_value(results) self.out.set_value(results)
self.outputs[0].data = results # self.outputs[0].data = results
else: else:
assert self.nout == len(results) assert self.nout == len(results)
for result, output in zip(results, self.outputs): for result, output in zip(results, self.outputs):
......
def perform_linker(env, target = None): def perform_linker(env, target = None):
order = env.toposort()
thunks = [op.perform for op in order]
def ret():
for thunk in thunks:
thunk()
if not target:
return ret
else:
raise NotImplementedError("Cannot write thunk representation to a file.")
def perform_linker_nochecks(env, target = None):
order = env.toposort() order = env.toposort()
thunks = [op._perform for op in order] thunks = [op._perform for op in order]
def ret(): def ret():
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论