, - , float32.
:
import numpy
import theano
import theano.tensor as tt
x = theano.shared(numpy.arange(9 * 10).reshape((9, 10)).astype(numpy.float32))
y = theano.shared(numpy.arange(10 * 11).reshape((10, 11)).astype(numpy.float32))
z = theano.dot(tt.cast(x, 'int32'), tt.cast(y, 'int32'))
f = theano.function([], outputs=z)
theano.printing.debugprint(f)
:
dot [@A] '' 4
|Elemwise{Cast{int32}} [@B] '' 3
| |HostFromGpu [@C] '' 1
| |<CudaNdarrayType(float32, matrix)> [@D]
|Elemwise{Cast{int32}} [@E] '' 2
|HostFromGpu [@F] '' 0
|<CudaNdarrayType(float32, matrix)> [@G]
, GPU ( CudaNdarrayType s), ( CPU/ ) ( HostFromGpu), , int dot.
,
HostFromGpu [@A] '' 1
|GpuDot22 [@B] '' 0
|<CudaNdarrayType(float32, matrix)> [@C]
|<CudaNdarrayType(float32, matrix)> [@D]
, GPU ( GpuDot22), , .