The problem is that DnnConv is not tagged properly for float16 support and
so its C code is disabled.  It doesn't have a python implementation so it
just crashes.

Try this diff:

index 6e7bc11..28fd96b 100644
--- a/theano/gpuarray/dnn.py
+++ b/theano/gpuarray/dnn.py
@@ -405,7 +405,7 @@ class GpuDnnConv(DnnBase):
         Default is the value of :attr:`config.dnn.conv.algo_fwd`.

     """
-
+    _f16_ok = True
     __props__ = ('algo', 'inplace')

     def __init__(self, algo=None, inplace=False):

2016-07-11 5:00 GMT-04:00 <[email protected]>:

> Hi Pascali,
> I tried what you suggested but nothing changed: id doesn't work with float
> 16.
> Did you asked to Arnaud Bergeron?
>
> Many Thanks
> Luca
>
>
>
>
> On Monday, July 4, 2016 at 10:19:49 AM UTC+2, [email protected] wrote:
>
>> Many thanks Pascal for your help.
>>
>>
>> On Saturday, July 2, 2016 at 4:34:28 AM UTC+2, Pascal Lamblin wrote:
>>
>> Thanks, it helps with formatting :)
>>
>> I am not sure what is happening with the Elemwise, Arnaud Bergeron would
>> be more qualified to answer, he should be back in a week or so.
>>
>> It may be possible that the cuDNN convolutions i or theyr gradient do
>> not support float16 yet.
>>
>> Two other remarks though:
>>
>> - Pooling and its gradient have limited GPU support when using
>> "ignore_border=False", which may explain why they are not transferred to
>> the GPU in your case
>>
>> - The default random sampling functions (available from
>> tensor.shared_randomstreams.RandomStreams) are executed in Python on
>> CPU, using NumPy. You can try theano.sandbox.MRG_RandomStreams instead,
>> which can actually sample on GPU.
>>
>> On Fri, Jul 01, 2016, [email protected] wrote:
>> > I attach the file with the result.
>> > Many Thanks
>> > Luca
>> >
>> > --
>> >
>> > ---
>> > You received this message because you are subscribed to the Google
>> Groups "theano-users" group.
>> > To unsubscribe from this group and stop receiving emails from it, send
>> an email to [email protected].
>> > For more options, visit https://groups.google.com/d/optout.
>>
>> > Python 2.7.11 |Anaconda custom (64-bit)| (default, Dec  6 2015,
>> 18:08:32)
>> > [GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux2
>> > Type "help", "copyright", "credits" or "license" for more information.
>> > Anaconda is brought to you by Continuum Analytics.
>> > Please check out: http://continuum.io/thanks and https://anaconda.org
>> > >>> import run_multi_conv
>> > Mapped name None to device cuda: GeForce 840M
>> > Using cuDNN version 5005 on context None
>> > /home/luca/data/Theano-master/theano/tensor/signal/downsample.py:6:
>> UserWarning: downsample module has been moved to the
>> theano.tensor.signal.pool module.
>> >   "downsample module has been moved to the theano.tensor.signal.pool
>> module.")
>> > >>> run_multi_conv.run_experiments()
>> > Disabling C code for Elemwise{mul,no_inplace} due to unsupported
>> float16
>> > Disabling C code for Elemwise{Cast{float32}} due to unsupported float16
>> > Disabling C code for Elemwise{Cast{float16}} due to unsupported float16
>> > Disabling C code for Elemwise{Cast{float16}} due to unsupported float16
>> > Disabling C code for Alloc due to unsupported float16
>> > Disabling C code for Cast{float16} due to unsupported float16
>> > Disabling C code for Cast{float16} due to unsupported float16
>> > Disabling C code for Cast{float16} due to unsupported float16
>> > Disabling C code for Cast{float16} due to unsupported float16
>> > Disabling C code for RandomFunction{binomial} due to unsupported
>> float16
>> > Disabling C code for RandomFunction{binomial} due to unsupported
>> float16
>> > Disabling C code for GpuDnnConv{algo='small', inplace=True} due to
>> unsupported float16
>> > Disabling C code for DiagonalSubtensor{inplace} due to unsupported
>> float16
>> > Disabling C code for Pool{ds=(4, 4), ignore_border=False, st=(4, 4),
>> padding=(0, 0), mode='max'} due to unsupported float16
>> > Disabling C code for Pool{ds=(1, 4), ignore_border=False, st=(1, 4),
>> padding=(0, 0), mode='max'} due to unsupported float16
>> > Disabling C code for MaxPoolGrad{ds=(1, 4), ignore_border=False, st=(1,
>> 4), padding=(0, 0), mode='max'} due to unsupported float16
>> > Disabling C code for MaxPoolGrad{ds=(4, 4), ignore_border=False, st=(4,
>> 4), padding=(0, 0), mode='max'} due to unsupported float16
>> > Disabling C code for IncDiagonalSubtensor due to unsupported float16
>> > Disabling C code for GpuDnnConvGradW{algo='none', inplace=True} due to
>> unsupported float16
>> > HostFromGpu(gpuarray) [id A] <TensorType(float16, scalar)> ''   150
>> >  |GpuElemwise{Composite{((-Cast{float16}(((-i0) / i1))) + (i2 * i3) +
>> (i2 * i4))}}[(0, 0)]<gpuarray> [id B] <GpuArrayType<None>(float16, ())> ''
>>   147
>> >    |GpuCAReduceCuda{add} [id C] <GpuArrayType<None>(float16, ())> ''
>> 135
>> >    | |GpuCrossentropySoftmaxArgmax1HotWithBias.0 [id D]
>> <GpuArrayType<None>(float16, (False,))> ''   133
>> >    |   |Rebroadcast{0} [id E] <GpuArrayType<None>(float16, (False,
>> False))> ''   132
>> >    |   | |GpuGemm{inplace=True} [id F] <GpuArrayType<None>(float16,
>> (True, False))> ''   130
>> >    |   |   |GpuAllocEmpty{dtype='float16', context_name=None} [id G]
>> <GpuArrayType<None>(float16, (True, False))> ''   20
>> >    |   |   | |TensorConstant{1} [id H] <TensorType(int64, scalar)>
>> >    |   |   | |Shape_i{1} [id I] <TensorType(int64, scalar)> ''   2
>> >    |   |   |   |DropoutLogisticRegression_W [id J]
>> <GpuArrayType<None>(float16, (False, False))>
>> >    |   |   |TensorConstant{1.0} [id K] <TensorType(float16, scalar)>
>> >    |   |   |GpuElemwise{mul,no_inplace} [id L]
>> <GpuArrayType<None>(float16, (False, False))> ''   129
>> >    |   |   | |GpuElemwise{Cast{float16}}[]<gpuarray> [id M]
>> <GpuArrayType<None>(float16, (False, False))> ''   40
>> >    |   |   | | |GpuFromHost<None> [id N] <GpuArrayType<None>(int64,
>> (False, False))> ''   35
>> >    |   |   | |   |RandomFunction{binomial}.1 [id O] <TensorType(int64,
>> matrix)> ''   30
>> >    |   |   | |     |<RandomStateType> [id P] <RandomStateType>
>> >    |   |   | |     |MakeVector{dtype='int64'} [id Q] <TensorType(int64,
>> vector)> ''   22
>> >    |   |   | |     | |TensorConstant{1} [id H] <TensorType(int64,
>> scalar)>
>> >    |   |   | |     | |Shape_i{1} [id R] <TensorType(int64, scalar)> ''
>>   6
>> >    |   |   | |     |   |DropoutHiddenLayer_1_W [id S]
>> <GpuArrayType<None>(float16, (False, False))>
>> >    |   |   | |     |TensorConstant{1} [id T] <TensorType(int8, scalar)>
>> >    |   |   | |     |TensorConstant{0.85009765625} [id U]
>> <TensorType(float16, scalar)>
>> >    |   |   | |GpuElemwise{Composite{scalar_sigmoid((i0 + i1))}}[(0,
>> 0)]<gpuarray> [id V] <GpuArrayType<None>(float16, (False, False))> ''   128
>> >    |   |   | | |Rebroadcast{0} [id W] <GpuArrayType<None>(float16,
>> (False, False))> ''   127
>> >    |   |   | | | |GpuGemm{inplace=True} [id X]
>> <GpuArrayType<None>(float16, (True, False))> ''   125
>> >    |   |   | | |   |GpuAllocEmpty{dtype='float16', context_name=None}
>> [id Y] <GpuArrayType<None>(float16, (True, False))> ''   23
>> >    |   |   | | |   | |TensorConstant{1} [id H] <TensorType(int64,
>> scalar)>
>> >    |   |   | | |   | |Shape_i{1} [id R] <TensorType(int64, scalar)> ''
>>   6
>> >    |   |   | | |   |TensorConstant{1.0} [id K] <TensorType(float16,
>> scalar)>
>> >    |   |   | | |   |Rebroadcast{0} [id Z] <GpuArrayType<None>(float16,
>> (False, False))> ''   124
>> >    |   |   | | |   | |GpuReshape{2} [id BA]
>> <GpuArrayType<None>(float16, (True, False))> ''   123
>> >    |   |   | | |   |   |InplaceGpuDimShuffle{0,1,4,2,3} [id BB]
>> <GpuArrayType<None>(float16, (False, False, False, False, False))> ''   122
>> >    |   |   | | |   |   | |Rebroadcast{0} [id BC]
>> <GpuArrayType<None>(float16, (False, False, False, False, False))> ''   121
>> >    |   |   | | |   |   |   |GpuReshape{5} [id BD]
>> <GpuArrayType<None>(float16, (True, False, False, False, False))> ''   120
>> >    |   |   | | |   |   |     |GpuFromHost<None> [id BE]
>> <GpuArrayType<None>(float16, (False, False, False, False))> ''   115
>> >    |   |   | | |   |   |     | |Pool{ds=(1, 4), ignore_border=False,
>> st=(1, 4), padding=(0, 0), mode='max'} [id BF] <TensorType(float16, 4D)> ''
>>   111
>> >    |   |   | | |   |   |     |   |Reshape{4} [id BG]
>> <TensorType(float16, 4D)> ''   109
>> >    |   |   | | |   |   |     |     |InplaceDimShuffle{0,1,3,4,2} [id
>> BH] <TensorType(float16, 5D)> ''   104
>> >    |   |   | | |   |   |     |     | |Reshape{5} [id BI]
>> <TensorType(float16, 5D)> ''   102
>> >    |   |   | | |   |   |     |     |   |Pool{ds=(4, 4),
>> ignore_border=False, st=(4, 4), padding=(0, 0), mode='max'} [id BJ]
>> <TensorType(float16, 4D)> ''   100
>> >    |   |   | | |   |   |     |     |   | |HostFromGpu(gpuarray) [id BK]
>> <TensorType(float16, 4D)> ''   98
>> >    |   |   | | |   |   |     |     |   |   |Gpusigmoid [id BL]
>> <GpuArrayType<None>(float16, (False, False, False, False))> ''   92
>> >    |   |   | | |   |   |     |     |   |     |GpuReshape{4} [id BM]
>> <GpuArrayType<None>(float16, (False, False, False, False))> ''   89
>> >    |   |   | | |   |   |     |     |   |       |GpuElemwise{Add}[(0,
>> 0)]<gpuarray> [id BN] <GpuArrayType<None>(float16, (True, False, False,
>> False, False))> ''   85
>> >    |   |   | | |   |   |     |     |   |       |
>> |InplaceGpuDimShuffle{0,2,4,3,1} [id BO] <GpuArrayType<None>(float16,
>> (True, False, False, False, False))> ''   83
>> >    |   |   | | |   |   |     |     |   |       | | |GpuReshape{5} [id
>> BP] <GpuArrayType<None>(float16, (True, False, False, False, False))> ''
>> 78
>> >    |   |   | | |   |   |     |     |   |       | |
>> |GpuCAReduceCuda{add}{1} [id BQ] <GpuArrayType<None>(float16, (False,
>> False))> ''   76
>> >    |   |   | | |   |   |     |     |   |       | |   | |GpuReshape{3}
>> [id BR] <GpuArrayType<None>(float16, (False, False, False))> ''   74
>> >    |   |   | | |   |   |     |     |   |       | |   |
>> |GpuFromHost<None> [id BS] <GpuArrayType<None>(float16, (True, False,
>> False, False, False, False))> ''   64
>> >    |   |   | | |   |   |     |     |   |       | |   |   |
>> |DiagonalSubtensor{inplace} [id BT] <TensorType(float16, (True, False,
>> False, False, False, False))> ''   58
>> >    |   |   | | |   |   |     |     |   |       | |   |   |
>> |HostFromGpu(gpuarray) [id BU] <TensorType(float16, (True, False, False,
>> False, False, False))> ''   57
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |
>> |GpuReshape{6} [id BV] <GpuArrayType<None>(float16, (True, False, False,
>> False, False, False))> ''   56
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |
>> |GpuDnnConv{algo='small', inplace=True} [id BW]
>> <GpuArrayType<None>(float16, (False, False, False, False))> ''   55
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   |
>> |GpuContiguous [id BX] <GpuArrayType<None>(float16, (False, True, False,
>> False))> ''   45
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |GpuReshape{4} [id BY] <GpuArrayType<None>(float16, (False, True, False,
>> False))> ''   37
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |InplaceGpuDimShuffle{0,4,1,3,2} [id BZ] <GpuArrayType<None>(float16,
>> (True, False, True, False, False))> ''   32
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> | |GpuReshape{5} [id CA] <GpuArrayType<None>(float16, (True, True, False,
>> False, False))> ''   27
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |   |GpuFromHost<None> [id CB] <GpuArrayType<None>(float16, (False, False,
>> False, False))> ''   15
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |   | |x [id CC] <TensorType(float16, 4D)>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |   |TensorConstant{[ 1  1 20 20 20]} [id CD] <TensorType(int64, vector)>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |TensorConstant{[20  1 20 20]} [id CE] <TensorType(int64, vector)>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   |
>> |GpuContiguous [id CF] <GpuArrayType<None>(float16, (False, True, False,
>> False))> ''   31
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |GpuReshape{4} [id CG] <GpuArrayType<None>(float16, (False, True, False,
>> False))> ''   25
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |InplaceGpuDimShuffle{0,4,1,3,2} [id CH] <GpuArrayType<None>(float16,
>> (False, False, False, False, False))> ''   9
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> | |Conv_layer_1_W [id CI] <GpuArrayType<None>(float16, (False, False,
>> False, False, False))>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |TensorConstant{[100   1   5   5]} [id CJ] <TensorType(int64, vector)>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   |
>> |GpuAllocEmpty{dtype='float16', context_name=None} [id CK]
>> <GpuArrayType<None>(float16, (False, False, False, False))> ''   54
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |Subtensor{int64} [id CL] <TensorType(int64, scalar)> ''   51
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | | |
>> |Shape [id CM] <TensorType(int64, vector)> ''   47
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | | |
>> | |GpuContiguous [id BX] <GpuArrayType<None>(float16, (False, True, False,
>> False))> ''   45
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | | |
>> |Constant{0} [id CN] <int64>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |Subtensor{int64} [id CO] <TensorType(int64, scalar)> ''   44
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | | |
>> |Shape [id CP] <TensorType(int64, vector)> ''   36
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | | |
>> | |GpuContiguous [id CF] <GpuArrayType<None>(float16, (False, True, False,
>> False))> ''   31
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | | |
>> |Constant{0} [id CN] <int64>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |Elemwise{Composite{((((i0 + i1) - i2) // i3) + i4)}} [id CQ]
>> <TensorType(int64, scalar)> ''   53
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | | |
>> |Subtensor{int64} [id CR] <TensorType(int64, scalar)> ''   50
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | | |
>> | |Shape [id CM] <TensorType(int64, vector)> ''   47
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | | |
>> | |Constant{2} [id CS] <int64>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | | |
>> |TensorConstant{0} [id CT] <TensorType(int8, scalar)>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | | |
>> |Subtensor{int64} [id CU] <TensorType(int64, scalar)> ''   43
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | | |
>> | |Shape [id CP] <TensorType(int64, vector)> ''   36
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | | |
>> | |Constant{2} [id CS] <int64>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | | |
>> |TensorConstant{1} [id T] <TensorType(int8, scalar)>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | | |
>> |TensorConstant{1} [id T] <TensorType(int8, scalar)>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |Elemwise{Composite{((((i0 + i1) - i2) // i3) + i4)}} [id CV]
>> <TensorType(int64, scalar)> ''   52
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |Subtensor{int64} [id CW] <TensorType(int64, scalar)> ''   49
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> | |Shape [id CM] <TensorType(int64, vector)> ''   47
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> | |Constant{3} [id CX] <int64>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |TensorConstant{0} [id CT] <TensorType(int8, scalar)>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |Subtensor{int64} [id CY] <TensorType(int64, scalar)> ''   42
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> | |Shape [id CP] <TensorType(int64, vector)> ''   36
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> | |Constant{3} [id CX] <int64>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |TensorConstant{1} [id T] <TensorType(int8, scalar)>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |TensorConstant{1} [id T] <TensorType(int8, scalar)>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   |
>> |GpuDnnConvDesc{border_mode='valid', subsample=(1, 1), conv_mode='conv',
>> precision='float16'} [id CZ] <CDataType{cudnnConvolutionDescriptor_t}> ''
>> 41
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   | |
>> |Shape [id CP] <TensorType(int64, vector)> ''   36
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   |
>> |Constant{1.0} [id DA] <float16>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |   |
>> |Constant{0.0} [id DB] <float16>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |   |
>> |TensorConstant{[ 1 20 20  5 16 16]} [id DC] <TensorType(int64, vector)>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |
>> |TensorConstant{1} [id T] <TensorType(int8, scalar)>
>> >    |   |   | | |   |   |     |     |   |       | |   |   |
>> |TensorConstant{3} [id DD] <TensorType(int8, scalar)>
>> >    |   |   | | |   |   |     |     |   |       | |   |
>> |MakeVector{dtype='int64'} [id DE] <TensorType(int64, vector)> ''   72
>> >    |   |   | | |   |   |     |     |   |       | |   |
>> |Elemwise{mul,no_inplace} [id DF] <TensorType(int64, scalar)> ''   69
>> >    |   |   | | |   |   |     |     |   |       | |   |     |
>> |Shape_i{2} [id DG] <TensorType(int64, scalar)> ''   62
>> >    |   |   | | |   |   |     |     |   |       | |   |     | |
>> |DiagonalSubtensor{inplace} [id BT] <TensorType(float16, (True, False,
>> False, False, False, False))> ''   58
>> >    |   |   | | |   |   |     |     |   |       | |   |     |
>> |TensorConstant{1} [id H] <TensorType(int64, scalar)>
>> >    |   |   | | |   |   |     |     |   |       | |   |     |
>> |Shape_i{1} [id DH] <TensorType(int64, scalar)> ''   60
>> >    |   |   | | |   |   |     |     |   |       | |   |     |
>> |DiagonalSubtensor{inplace} [id BT] <TensorType(float16, (True, False,
>> False, False, False, False))> ''   58
>> >    |   |   | | |   |   |     |     |   |       | |   |     |Shape_i{3}
>> [id DI] <TensorType(int64, scalar)> ''   63
>> >    |   |   | | |   |   |     |     |   |       | |   |     |
>> |DiagonalSubtensor{inplace} [id BT] <TensorType(float16, (True, False,
>> False, False, False, False))> ''   58
>> >    |   |   | | |   |   |     |     |   |       | |   |
>> |Elemwise{mul,no_inplace} [id DJ] <TensorType(int64, scalar)> ''   66
>> >    |   |   | | |   |   |     |     |   |       | |   |
>> |Shape_i{4} [id DK] <TensorType(int64, scalar)> ''   61
>> >    |   |   | | |   |   |     |     |   |       | |   |       |
>> |DiagonalSubtensor{inplace} [id BT] <TensorType(float16, (True, False,
>> False, False, False, False))> ''   58
>> >    |   |   | | |   |   |     |     |   |       | |   |
>> |Shape_i{5} [id DL] <TensorType(int64, scalar)> ''   59
>> >    |   |   | | |   |   |     |     |   |       | |   |
>> |DiagonalSubtensor{inplace} [id BT] <TensorType(float16, (True, False,
>> False, False, False, False))> ''   58
>> >    |   |   | | |   |   |     |     |   |       | |
>> |MakeVector{dtype='int64'} [id DM] <TensorType(int64, vector)> ''   68
>> >    |   |   | | |   |   |     |     |   |       | |
>> |TensorConstant{1} [id H] <TensorType(int64, scalar)>
>> >    |   |   | | |   |   |     |     |   |       | |     |Shape_i{1} [id
>> DH] <TensorType(int64, scalar)> ''   60
>> >    |   |   | | |   |   |     |     |   |       | |     |Shape_i{2} [id
>> DG] <TensorType(int64, scalar)> ''   62
>> >    |   |   | | |   |   |     |     |   |       | |     |Shape_i{4} [id
>> DK] <TensorType(int64, scalar)> ''   61
>> >    |   |   | | |   |   |     |     |   |       | |     |Shape_i{5} [id
>> DL] <TensorType(int64, scalar)> ''   59
>> >    |   |   | | |   |   |     |     |   |       |
>> |InplaceGpuDimShuffle{x,0,x,x,x} [id DN] <GpuArrayType<None>(float16,
>> (True, False, True, True, True))> ''   16
>> >    |   |   | | |   |   |     |     |   |       |   |Conv_layer_1_b [id
>> DO] <GpuArrayType<None>(float16, (False,))>
>> >    |   |   | | |   |   |     |     |   |       |Elemwise{Cast{int32}}
>> [id DP] <TensorType(int32, vector)> ''   77
>> >    |   |   | | |   |   |     |     |   |         |Join [id DQ]
>> <TensorType(int64, vector)> ''   75
>> >    |   |   | | |   |   |     |     |   |           |TensorConstant{0}
>> [id CT] <TensorType(int8, scalar)>
>> >    |   |   | | |   |   |     |     |   |
>> |InplaceDimShuffle{x} [id DR] <TensorType(int64, (True,))> ''   73
>> >    |   |   | | |   |   |     |     |   |           |
>> |Prod{acc_dtype=int64} [id DS] <TensorType(int64, scalar)> ''   71
>> >    |   |   | | |   |   |     |     |   |           |
>> |MakeVector{dtype='int64'} [id DT] <TensorType(int64, vector)> ''   67
>> >    |   |   | | |   |   |     |     |   |           |
>> |TensorConstant{1} [id H] <TensorType(int64, scalar)>
>> >    |   |   | | |   |   |     |     |   |           |     |Shape_i{2}
>> [id DG] <TensorType(int64, scalar)> ''   62
>> >    |   |   | | |   |   |     |     |   |           |     |Shape_i{5}
>> [id DL] <TensorType(int64, scalar)> ''   59
>> >    |   |   | | |   |   |     |     |   |           |TensorConstant{(1,)
>> of 1} [id DU] <TensorType(int64, (True,))>
>> >    |   |   | | |   |   |     |     |   |
>> |MakeVector{dtype='int64'} [id DV] <TensorType(int64, vector)> ''   65
>> >    |   |   | | |   |   |     |     |   |             |Shape_i{4} [id
>> DK] <TensorType(int64, scalar)> ''   61
>> >    |   |   | | |   |   |     |     |   |             |Shape_i{1} [id
>> DH] <TensorType(int64, scalar)> ''   60
>> >    |   |   | | |   |   |     |     |   |MakeVector{dtype='int64'} [id
>> DW] <TensorType(int64, vector)> ''   95
>> >    |   |   | | |   |   |     |     |     |TensorConstant{1} [id H]
>> <TensorType(int64, scalar)>
>> >    |   |   | | |   |   |     |     |     |Shape_i{2} [id DG]
>> <TensorType(int64, scalar)> ''   62
>> >    |   |   | | |   |   |     |     |     |Shape_i{5} [id DL]
>> <TensorType(int64, scalar)> ''   59
>> >    |   |   | | |   |   |     |     |     |Elemwise{Composite{(i0 + ((i1
>> + Switch(EQ(i2, i3), i4, i2)) // i5))}} [id DX] <TensorType(int64, scalar)>
>> ''   88
>> >    |   |   | | |   |   |     |     |     | |TensorConstant{1} [id H]
>> <TensorType(int64, scalar)>
>> >    |   |   | | |   |   |     |     |     | |TensorConstant{-1} [id DY]
>> <TensorType(int64, scalar)>
>> >    |   |   | | |   |   |     |     |     | |Subtensor{int64} [id DZ]
>> <TensorType(int32, scalar)> ''   80
>> >    |   |   | | |   |   |     |     |     | | |Elemwise{Cast{int32}} [id
>> DP] <TensorType(int32, vector)> ''   77
>> >    |   |   | | |   |   |     |     |     | | |Constant{2} [id CS]
>> <int64>
>> >    |   |   | | |   |   |     |     |     | |TensorConstant{-1} [id EA]
>> <TensorType(int8, scalar)>
>> >    |   |   | | |   |   |     |     |     | |Elemwise{Composite{((i0 *
>> i1 * i2 * i3) // (-(i4 * i5 * i6 * i7)))}} [id EB] <TensorType(int64,
>> scalar)> ''   84
>> >    |   |   | | |   |   |     |     |     | | |Shape_i{2} [id DG]
>> <TensorType(int64, scalar)> ''   62
>> >    |   |   | | |   |   |     |     |     | | |Shape_i{5} [id DL]
>> <TensorType(int64, scalar)> ''   59
>> >    |   |   | | |   |   |     |     |     | | |Shape_i{4} [id DK]
>> <TensorType(int64, scalar)> ''   61
>> >    |   |   | | |   |   |     |     |     | | |Shape_i{1} [id DH]
>> <TensorType(int64, scalar)> ''   60
>> >    |   |   | | |   |   |     |     |     | | |Subtensor{int64} [id EC]
>> <TensorType(int32, scalar)> ''   82
>> >    |   |   | | |   |   |     |     |     | | | |Elemwise{Cast{int32}}
>> [id DP] <TensorType(int32, vector)> ''   77
>> >    |   |   | | |   |   |     |     |     | | | |Constant{0} [id CN]
>> <int64>
>> >    |   |   | | |   |   |     |     |     | | |Subtensor{int64} [id ED]
>> <TensorType(int32, scalar)> ''   81
>> >    |   |   | | |   |   |     |     |     | | | |Elemwise{Cast{int32}}
>> [id DP] <TensorType(int32, vector)> ''   77
>> >    |   |   | | |   |   |     |     |     | | | |Constant{1} [id EE]
>> <int64>
>> >    |   |   | | |   |   |     |     |     | | |Subtensor{int64} [id DZ]
>> <TensorType(int32, scalar)> ''   80
>> >    |   |   | | |   |   |     |     |     | | |Subtensor{int64} [id EF]
>> <TensorType(int32, scalar)> ''   79
>> >    |   |   | | |   |   |     |     |     | |   |Elemwise{Cast{int32}}
>> [id DP] <TensorType(int32, vector)> ''   77
>> >    |   |   | | |   |   |     |     |     | |   |Constant{3} [id CX]
>> <int64>
>> >    |   |   | | |   |   |     |     |     | |TensorConstant{4} [id EG]
>> <TensorType(int64, scalar)>
>> >    |   |   | | |   |   |     |     |     |Elemwise{Composite{(i0 + ((i1
>> + Switch(EQ(i2, i3), i4, i2)) // i5))}}[(0, 4)] [id EH] <TensorType(int64,
>> scalar)> ''   90
>> >    |   |   | | |   |   |     |     |       |TensorConstant{1} [id H]
>> <TensorType(int64, scalar)>
>> >    |   |   | | |   |   |     |     |       |TensorConstant{-1} [id DY]
>> <TensorType(int64, scalar)>
>> >    |   |   | | |   |   |     |     |       |Subtensor{int64} [id EF]
>> <TensorType(int32, scalar)> ''   79
>> >    |   |   | | |   |   |     |     |       |TensorConstant{-1} [id EA]
>> <TensorType(int8, scalar)>
>> >    |   |   | | |   |   |     |     |       |Elemwise{Composite{((i0 *
>> i1 * i2 * i3) // (-(i4 * i5 * i6 * i7)))}} [id EB] <TensorType(int64,
>> scalar)> ''   84
>> >    |   |   | | |   |   |     |     |       |TensorConstant{4} [id EG]
>> <TensorType(int64, scalar)>
>> >    |   |   | | |   |   |     |     |Elemwise{Cast{int32}} [id EI]
>> <TensorType(int32, vector)> ''   103
>> >    |   |   | | |   |   |     |       |Join [id EJ] <TensorType(int64,
>> vector)> ''   101
>> >    |   |   | | |   |   |     |         |TensorConstant{0} [id CT]
>> <TensorType(int8, scalar)>
>> >    |   |   | | |   |   |     |         |InplaceDimShuffle{x} [id EK]
>> <TensorType(int64, (True,))> ''   99
>> >    |   |   | | |   |   |     |         | |Prod{acc_dtype=int64} [id EL]
>> <TensorType(int64, scalar)> ''   97
>> >    |   |   | | |   |   |     |         |   |MakeVector{dtype='int64'}
>> [id EM] <TensorType(int64, vector)> ''   91
>> >    |   |   | | |   |   |     |         |     |TensorConstant{1} [id H]
>> <TensorType(int64, scalar)>
>> >    |   |   | | |   |   |     |         |     |Shape_i{2} [id DG]
>> <TensorType(int64, scalar)> ''   62
>> >    |   |   | | |   |   |     |         |     |Elemwise{Composite{(i0 +
>> ((i1 + Switch(EQ(i2, i3), i4, i2)) // i5))}} [id DX] <TensorType(int64,
>> scalar)> ''   88
>> >    |   |   | | |   |   |     |         |TensorConstant{(1,) of 1} [id
>> DU] <TensorType(int64, (True,))>
>> >    |   |   | | |   |   |     |         |MakeVector{dtype='int64'} [id
>> EN] <TensorType(int64, vector)> ''   93
>> >    |   |   | | |   |   |     |           |Elemwise{Composite{(i0 + ((i1
>> + Switch(EQ(i2, i3), i4, i2)) // i5))}}[(0, 4)] [id EH] <TensorType(int64,
>> scalar)> ''   90
>> >    |   |   | | |   |   |     |           |Shape_i{5} [id DL]
>> <TensorType(int64, scalar)> ''   59
>> >    |   |   | | |   |   |     |MakeVector{dtype='int64'} [id EO]
>> <TensorType(int64, vector)> ''   117
>> >    |   |   | | |   |   |       |TensorConstant{1} [id H]
>> <TensorType(int64, scalar)>
>> >    |   |   | | |   |   |       |Shape_i{2} [id DG] <TensorType(int64,
>> scalar)> ''   62
>> >    |   |   | | |   |   |       |Elemwise{Composite{(i0 + ((i1 +
>> Switch(EQ(i2, i3), i4, i2)) // i5))}} [id DX] <TensorType(int64, scalar)>
>> ''   88
>> >    |   |   | | |   |   |       |Elemwise{Composite{Switch(EQ(i0, i1),
>> i2, i0)}} [id EP] <TensorType(int64, scalar)> ''   112
>> >    |   |   | | |   |   |       | |Subtensor{int64} [id EQ]
>> <TensorType(int32, scalar)> ''   106
>> >    |   |   | | |   |   |       | | |Elemwise{Cast{int32}} [id EI]
>> <TensorType(int32, vector)> ''   103
>> >    |   |   | | |   |   |       | | |Constant{2} [id CS] <int64>
>> >    |   |   | | |   |   |       | |TensorConstant{-1} [id EA]
>> <TensorType(int8, scalar)>
>> >    |   |   | | |   |   |       | |Elemwise{Composite{((i0 * i1 * i2 *
>> i3) // (-(i4 * i5 * i6 * i7)))}}[(0, 2)] [id ER] <TensorType(int64,
>> scalar)> ''   110
>> >    |   |   | | |   |   |       |   |Shape_i{2} [id DG]
>> <TensorType(int64, scalar)> ''   62
>> >    |   |   | | |   |   |       |   |Elemwise{Composite{(i0 + ((i1 +
>> Switch(EQ(i2, i3), i4, i2)) // i5))}} [id DX] <TensorType(int64, scalar)>
>> ''   88
>> >    |   |   | | |   |   |       |   |Elemwise{Composite{(i0 + ((i1 +
>> Switch(EQ(i2, i3), i4, i2)) // i5))}}[(0, 4)] [id EH] <TensorType(int64,
>> scalar)> ''   90
>> >    |   |   | | |   |   |       |   |Shape_i{5} [id DL]
>> <TensorType(int64, scalar)> ''   59
>> >    |   |   | | |   |   |       |   |Subtensor{int64} [id ES]
>> <TensorType(int32, scalar)> ''   108
>> >    |   |   | | |   |   |       |   | |Elemwise{Cast{int32}} [id EI]
>> <TensorType(int32, vector)> ''   103
>> >    |   |   | | |   |   |       |   | |Constant{0} [id CN] <int64>
>> >    |   |   | | |   |   |       |   |Subtensor{int64} [id ET]
>> <TensorType(int32, scalar)> ''   107
>> >    |   |   | | |   |   |       |   | |Elemwise{Cast{int32}} [id EI]
>> <TensorType(int32, vector)> ''   103
>> >    |   |   | | |   |   |       |   | |Constant{1} [id EE] <int64>
>> >    |   |   | | |   |   |       |   |Subtensor{int64} [id EQ]
>> <TensorType(int32, scalar)> ''   106
>> >    |   |   | | |   |   |       |   |Subtensor{int64} [id EU]
>> <TensorType(int32, scalar)> ''   105
>> >    |   |   | | |   |   |       |     |Elemwise{Cast{int32}} [id EI]
>> <TensorType(int32, vector)> ''   103
>> >    |   |   | | |   |   |       |     |Constant{3} [id CX] <int64>
>> >    |   |   | | |   |   |       |Elemwise{Composite{(i0 + ((i1 +
>> Switch(EQ(i2, i3), i4, i2)) // i5))}}[(0, 4)] [id EV] <TensorType(int64,
>> scalar)> ''   116
>> >    |   |   | | |   |   |         |TensorConstant{1} [id H]
>> <TensorType(int64, scalar)>
>> >    |   |   | | |   |   |         |TensorConstant{-1} [id DY]
>> <TensorType(int64, scalar)>
>> >    |   |   | | |   |   |         |Subtensor{int64} [id EU]
>> <TensorType(int32, scalar)> ''   105
>> >    |   |   | | |   |   |         |TensorConstant{-1} [id EA]
>> <TensorType(int8, scalar)>
>> >    |   |   | | |   |   |         |Elemwise{Composite{((i0 * i1 * i2 *
>> i3) // (-(i4 * i5 * i6 * i7)))}}[(0, 2)] [id ER] <TensorType(int64,
>> scalar)> ''   110
>> >    |   |   | | |   |   |         |TensorConstant{4} [id EG]
>> <TensorType(int64, scalar)>
>> >    |   |   | | |   |   |TensorConstant{[ 1 -1]} [id EW]
>> <TensorType(int64, vector)>
>> >    |   |   | | |   |DropoutHiddenLayer_1_W [id S]
>> <GpuArrayType<None>(float16, (False, False))>
>> >    |   |   | | |   |TensorConstant{0.0} [id EX] <TensorType(float16,
>> scalar)>
>> >    |   |   | | |InplaceGpuDimShuffle{x,0} [id EY]
>> <GpuArrayType<None>(float16, (True, False))> ''   17
>> >    |   |   | |   |DropoutHiddenLayer_1_b [id EZ]
>> <GpuArrayType<None>(float16, (False,))>
>> >    |   |   | |GpuElemwise{Cast{float16}}[]<gpuarray> [id FA]
>> <GpuArrayType<None>(float16, (False, False))> ''   39
>> >    |   |   |   |GpuFromHost<None> [id FB] <GpuArrayType<None>(int64,
>> (False, False))> ''   34
>> >    |   |   |     |RandomFunction{binomial}.1 [id FC] <TensorType(int64,
>> matrix)> ''   29
>> >    |   |   |       |<RandomStateType> [id FD] <RandomStateType>
>> >    |   |   |       |MakeVector{dtype='int64'} [id Q] <TensorType(int64,
>> vector)> ''   22
>> >    |   |   |       |TensorConstant{1} [id T] <TensorType(int8, scalar)>
>> >    |   |   |       |TensorConstant{0.85009765625} [id U]
>> <TensorType(float16, scalar)>
>> >    |   |   |DropoutLogisticRegression_W [id J]
>> <GpuArrayType<None>(float16, (False, False))>
>> >    |   |   |TensorConstant{0.0} [id EX] <TensorType(float16, scalar)>
>> >    |   |DropoutLogisticRegression_b [id FE]
>> <GpuArrayType<None>(float16, (False,))>
>> >    |   |GpuFromHost<None> [id FF] <GpuArrayType<None>(int32, (False,))>
>> ''   0
>> >    |     |y [id FG] <TensorType(int32, vector)>
>> >    |GpuElemwise{Cast{float32}}[]<gpuarray> [id FH]
>> <GpuArrayType<None>(float32, ())> ''   28
>> >    | |GpuFromHost<None> [id FI] <GpuArrayType<None>(int64, ())> ''   19
>> >    |   |Shape_i{0} [id FJ] <TensorType(int64, scalar)> ''   1
>> >    |     |y [id FG] <TensorType(int32, vector)>
>> >    |GpuArrayConstant{0.000100016593933} [id FK]
>> <GpuArrayType<None>(float16, ())>
>> >    |GpuCAReduceCuda{add} [id FL] <GpuArrayType<None>(float16, ())> ''
>> 144
>> >    | |GpuElemwise{Abs}[(0, 0)]<gpuarray> [id FM]
>> <GpuArrayType<None>(float16, (False, False))> ''   142
>> >    |   |DropoutLogisticRegression_W [id J] <GpuArrayType<None>(float16,
>> (False, False))>
>> >    |GpuCAReduceCuda{pre=sqr,red=add} [id FN]
>> <GpuArrayType<None>(float16, ())> ''   5
>> >      |DropoutLogisticRegression_W [id J] <GpuArrayType<None>(float16,
>> (False, False))>
>> > GpuElemwise{Composite{(i0 - (i1 * i2))}}[(0, 0)]<gpuarray> [id FO]
>> <GpuArrayType<None>(float16, (False, False, False, False, False))> ''   190
>> >  |Conv_layer_1_W [id CI] <GpuArrayType<None>(float16, (False, False,
>> False, False, False))>
>> >  |GpuArrayConstant{[[[[[ 0.0010004]]]]]} [id FP]
>> <GpuArrayType<None>(float16, (True, True, True, True, True))>
>> >  |InplaceGpuDimShuffle{0,2,4,3,1} [id FQ] <GpuArrayType<None>(float16,
>> (False, False, False, False, False))> ''   189
>> >    |GpuReshape{5} [id FR] <GpuArrayType<None>(float16, (False, False,
>> False, False, False))> ''   188
>> >      |GpuDnnConvGradW{algo='none', inplace=True} [id FS]
>> <GpuArrayType<None>(float16, (False, True, False, False))> ''   187
>> >      | |GpuContiguous [id BX] <GpuArrayType<None>(float16, (False,
>> True, False, False))> ''   45
>> >      | |GpuContiguous [id FT] <GpuArrayType<None>(float16, (False,
>> False, False, False))> ''   178
>> >      | | |GpuReshape{4} [id FU] <GpuArrayType<None>(float16, (False,
>> False, False, False))> ''   176
>> >      | |   |GpuFromHost<None> [id FV] <GpuArrayType<None>(float16,
>> (True, False, False, False, False, False))> ''   174
>> >      | |   | |IncDiagonalSubtensor [id FW] <TensorType(float16, (True,
>> False, False, False, False, False))> ''   172
>> >      | |   |   |TensorConstant{(1, 20, 20..16) of 0.0} [id FX]
>> <TensorType(float16, (True, False, False, False, False, False))>
>> >      | |   |   |TensorConstant{1} [id T] <TensorType(int8, scalar)>
>> >      | |   |   |TensorConstant{3} [id DD] <TensorType(int8, scalar)>
>> >      | |   |   |HostFromGpu(gpuarray) [id FY] <TensorType(float16,
>> (True, False, False, False, False, False))> ''   169
>> >      | |   |     |GpuAlloc<None> [id FZ] <GpuArrayType<None>(float16,
>> (True, False, False, False, False, False))> ''   166
>> >      | |   |       |InplaceGpuDimShuffle{x,4,1,x,3,2} [id GA]
>> <GpuArrayType<None>(float16, (True, False, False, True, False, False))> ''
>>   164
>> >      | |   |       | |GpuElemwise{Composite{Cast{float16}(((i0 -
>> scalar_sigmoid(i1)) * i2 * scalar_sigmoid(i1)))}}[(0, 1)]<gpuarray> [id GB]
>> <GpuArrayType<None>(float16, (True, False, False, False, False))> ''   163
>> >      | |   |       |   |GpuArrayConstant{[[[[[ 1.]]]]]} [id GC]
>> <GpuArrayType<None>(float32, (True, True, True, True, True))>
>> >      | |   |       |   |GpuElemwise{Add}[(0, 0)]<gpuarray> [id BN]
>> <GpuArrayType<None>(float16, (True, False, False, False, False))> ''   85
>> >      | |   |       |   |GpuReshape{5} [id GD]
>> <GpuArrayType<None>(float16, (True, False, False, False, False))> ''   162
>> >      | |   |       |     |GpuFromHost<None> [id GE]
>> <GpuArrayType<None>(float16, (False, False, False, False))> ''   161
>> >      | |   |       |     | |MaxPoolGrad{ds=(4, 4), ignore_border=False,
>> st=(4, 4), padding=(0, 0), mode='max'} [id GF] <TensorType(float16, 4D)> ''
>>   160
>> >      | |   |       |     |   |HostFromGpu(gpuarray) [id BK]
>> <TensorType(float16, 4D)> ''   98
>> >      | |   |       |     |   |Pool{ds=(4, 4), ignore_border=False,
>> st=(4, 4), padding=(0, 0), mode='max'} [id BJ] <TensorType(float16, 4D)> ''
>>   100
>> >      | |   |       |     |   |Reshape{4} [id GG] <TensorType(float16,
>> 4D)> ''   159
>> >      | |   |       |     |     |InplaceDimShuffle{0,1,4,2,3} [id GH]
>> <TensorType(float16, 5D)> ''   158
>> >      | |   |       |     |     | |Reshape{5} [id GI]
>> <TensorType(float16, 5D)> ''   157
>> >      | |   |       |     |     |   |MaxPoolGrad{ds=(1, 4),
>> ignore_border=False, st=(1, 4), padding=(0, 0), mode='max'} [id GJ]
>> <TensorType(float16, 4D)> ''   156
>> >      | |   |       |     |     |   | |Reshape{4} [id BG]
>> <TensorType(float16, 4D)> ''   109
>> >      | |   |       |     |     |   | |Pool{ds=(1, 4),
>> ignore_border=False, st=(1, 4), padding=(0, 0), mode='max'} [id BF]
>> <TensorType(float16, 4D)> ''   111
>> >      | |   |       |     |     |   | |HostFromGpu(gpuarray) [id GK]
>> <TensorType(float16, 4D)> ''   155
>> >      | |   |       |     |     |   |   |GpuReshape{4} [id GL]
>> <GpuArrayType<None>(float16, (False, False, False, False))> ''   154
>> >      | |   |       |     |     |   |
>> |InplaceGpuDimShuffle{0,1,3,4,2} [id GM] <GpuArrayType<None>(float16,
>> (False, False, False, False, False))> ''   153
>> >      | |   |       |     |     |   |     | |Rebroadcast{0} [id GN]
>> <GpuArrayType<None>(float16, (False, False, False, False, False))> ''   152
>> >      | |   |       |     |     |   |     |   |GpuReshape{5} [id GO]
>> <GpuArrayType<None>(float16, (True, False, False, False, False))> ''   151
>> >      | |   |       |     |     |   |     |     |Rebroadcast{0} [id GP]
>> <GpuArrayType<None>(float16, (False, False))> ''   149
>> >      | |   |       |     |     |   |     |     | |GpuGemm{inplace=True}
>> [id GQ] <GpuArrayType<None>(float16, (True, False))> ''   146
>> >      | |   |       |     |     |   |     |     |
>> |GpuAllocEmpty{dtype='float16', context_name=None} [id GR]
>> <GpuArrayType<None>(float16, (True, False))> ''   24
>> >      | |   |       |     |     |   |     |     |   | |TensorConstant{1}
>> [id H] <TensorType(int64, scalar)>
>> >      | |   |       |     |     |   |     |     |   | |Shape_i{0} [id
>> GS] <TensorType(int64, scalar)> ''   8
>> >      | |   |       |     |     |   |     |     |   |
>> |DropoutHiddenLayer_1_W [id S] <GpuArrayType<None>(float16, (False,
>> False))>
>> >      | |   |       |     |     |   |     |     |   |TensorConstant{1.0}
>> [id K] <TensorType(float16, scalar)>
>> >      | |   |       |     |     |   |     |     |
>> |GpuElemwise{Composite{Cast{float16}(((i0 - i1) * i1 * i2 * i3 * i4))}}[(0,
>> 1)]<gpuarray> [id GT] <GpuArrayType<None>(float16, (False, False))> ''
>> 143
>> >      | |   |       |     |     |   |     |     |   |
>> |GpuArrayConstant{[[ 1.]]} [id GU] <GpuArrayType<None>(float32, (True,
>> True))>
>> >      | |   |       |     |     |   |     |     |   |
>> |GpuElemwise{Composite{scalar_sigmoid((i0 + i1))}}[(0, 0)]<gpuarray> [id V]
>> <GpuArrayType<None>(float16, (False, False))> ''   128
>> >      | |   |       |     |     |   |     |     |   |
>> |GpuElemwise{Cast{float16}}[]<gpuarray> [id FA]
>> <GpuArrayType<None>(float16, (False, False))> ''   39
>> >      | |   |       |     |     |   |     |     |   | |Rebroadcast{0}
>> [id GV] <GpuArrayType<None>(float16, (False, False))> ''   141
>> >      | |   |       |     |     |   |     |     |   | |
>> |GpuGemm{inplace=True} [id GW] <GpuArrayType<None>(float16, (True, False))>
>> ''   138
>> >      | |   |       |
>>
>> ...
>
> --
>
> ---
> You received this message because you are subscribed to the Google Groups
> "theano-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"theano-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to