This is still experimental and we don't have to to work on it now.

For multiple GPU, you should do data parallelism. The is 3 framework that
can help you, theano-mpi, platoon and synkronous.

Fred

Le sam. 1 juil. 2017 16:33, Ramana Subramanyam <vxrram...@gmail.com> a
écrit :

> Hi,
> This error that I reported was solved using the
> flag optimizer_excluding=fusion. However, when I try to use multiple GPUs,
> I get this error
>
> ERROR (theano.gof.opt): Optimization failure due to:
> LocalOptGroup(local_abstractconv_cudnn,local_abstractconv_gw_cudnn,local_abstractconv_gi_cudnn,local_abstractconv_gemm,local_abstractconv3d_gemm,local_abstractconv_gradweights_gemm,local_abstractconv3d_gradweights_gemm,local_abstractconv_gradinputs_gemm,local_abstractconv3d_gradinputs_gemm)
> ERROR (theano.gof.opt): node: AbstractConv2d{convdim=2, border_mode=(4,
> 3), subsample=(1, 1), filter_flip=False, imshp=(None, None, None, None),
> kshp=(None, None, None, None), filter_dilation=(1, 1)}(X,
> CIFAR10.pixelCNN.pxCNN.vstack1.filter)
> ERROR (theano.gof.opt): TRACEBACK:
> ERROR (theano.gof.opt): Traceback (most recent call last):
>   File
> "/home/akshat/anaconda2/envs/ramana-test/lib/python2.7/site-packages/theano/gof/opt.py",
> line 1982, in process_node
>     replacements = lopt.transform(node)
>   File
> "/home/akshat/anaconda2/envs/ramana-test/lib/python2.7/site-packages/theano/gof/opt.py",
> line 1335, in transform
>     new_repl = opt.transform(node)
>   File
> "/home/akshat/anaconda2/envs/ramana-test/lib/python2.7/site-packages/theano/gpuarray/dnn.py",
> line 2816, in local_abstractconv_cudnn
>     ctx = infer_context_name(*node.inputs)
>   File
> "/home/akshat/anaconda2/envs/ramana-test/lib/python2.7/site-packages/theano/gpuarray/basic_ops.py",
> line 122, in infer_context_name
>     raise ValueError("Could not infer context from inputs")
> ValueError: Could not infer context from inputs
>
> I used these THEANO_FLAGS
> , contexts=dev0->cuda1;dev1->cuda3,floatX=float32,optimizer_excluding=fusion.
> The same flags works well with the import and the sample code on this page
> <http://deeplearning.net/software/theano/tutorial/using_multi_gpu.html>. This
> is my first time using multiple GPUs, apologise if I have made some trivial
> mistake
>
> Ramana
>
>
> On Tuesday, June 27, 2017 at 11:50:12 PM UTC+5:30, Ramana Subramanyam
> wrote:
>>
>> Hi Fred,
>> Since there wasn't any \n in the output, it was all in the same line. You
>> have to scroll towards your left/right on this link
>> <http://dpaste.com/0SSEM4E>. I am pasting a smaller copy of that below,
>>
>>
>> (Composite{Switch((LT(i0, i1), i1, i0)}(Composite{Switch(GE(i0, i1), i1,
>> i0)}(i0, i1), i2), i3), Composite{Switch(LT(i0, i1), i1,
>> i0)}(Composite{Switch(GE(i0, i1), i1, i0)}(i0, i1), i2), i3) + i4)}(i8,
>> Composite{((i0 + i1) - i2)}(i2, Composite{Switch(LT(Composite{Switch(GE(i0,
>> i1), i1, i0)}(Composite{Switch(LT(i0, i1), i2, i0)}(Composite{((i0 + i1) -
>> i2)}(i0, i1, i2), i3, i4), i5), i3), i3, Composite{Switch(GE(i0, i1), i1,
>> i0)}(Composite{Switch(LT(i0, i1), i2, i0)}(Composite{((i0 + i1) - i2)}(i0,
>> i1, i2), i3, i4), i5))}(i1, Composite{Switch(LT(Composite{Switch(GE(i0,
>> i1), i1, i0)}(Composite{Switch(LT(i0, i1), i2, i0)}(Composite{((i0 + i1) -
>> i2)}(i0, i1, i2), i3, i4), i5), i3), i3, Composite{Switch(GE(i0, i1), i1,
>> i0)}(Composite{Switch(LT(i0, i1), i2, i0)}(Composite{((i0 + i1) - i2)}(i0,
>> i1, i2), i3, i4), i5))}(i2, i3, i4, i5, i6, Composite{((i0 + i1) - i2)}(i7,
>> i3, i4)), Composite{(Switch(LT(Composite{Switch(LT(i0, i1), i1,
>> i0)}(Composite{Switch(GE(i0, i1), i1, i0)}(i0, i1), i2), i3),
>> Composite{Switch(LT(i0, i1), i1, i0)}(Composite{Switch(GE(i0, i1), i1,
>> i0)}(i0, i1), i2), i3) + i4)}(i8, Composite{((i0 + i1) - i2)}(i7, i3, i4),
>> i5, Composite{Switch(LT(Composite{Switch(GE(i0, i1), i1,
>> i0)}(Composite{Switch(LT(i0, i1), i2, i0)}(Composite{((i0 + i1) - i2)}(i0,
>> i1, i2), i3, i4), i5), i3), i3, Composite{Switch(GE(i0, i1), i1,
>> i0)}(Composite{Switch(LT(i0, i1), i2, i0)}(Composite{((i0 + i1) - i2)}(i0,
>> i1, i2), i3, i4), i5))}(i2, i3, i4, i5, i6, Composite{((i0 + i1) - i2)}(i7,
>> i3, i4)), i9), i5, i6, Composite{((i0 + i1) - i2)}(i2,
>> Composite{Switch(LT(Composite{Switch(GE(i0, i1), i1,
>> i0)}(Composite{Switch(LT(i0, i1), i2, i0)}(Composite{((i0 + i1) - i2)}(i0,
>> i1, i2), i3, i4), i5), i3), i3, Composite{Switch(GE(i0, i1), i1,
>> i0)}(Composite{Switch(LT(i0, i1), i2, i0)}
>>
>> On Tuesday, June 27, 2017 at 11:44:11 PM UTC+5:30, nouiz wrote:
>>>
>>> The output you gave don't show the infinit loop printed. Can you give me
>>> longer output?
>>>
>>> On Tue, Jun 27, 2017 at 2:08 PM Ramana Subramanyam <vxrr...@gmail.com>
>>> wrote:
>>>
>>>> Hi,
>>>> I was trying benchmark the reimplementation of PixelCNN code
>>>> <https://github.com/kundan2510/pixelCNN> by Kundan Kumar. I landed
>>>> into following error while compiling the validation function. I deleted
>>>> cache and then restarted, and this error persists. The function that raises
>>>> error is pretty much the same as the previous theano function that compiled
>>>> successfully(Same in terms of input and output), except that the one that
>>>> gives error doesn't have update parameter. This is the traceback of the
>>>> error, http://dpaste.com/33R4231. If I don't stop the script (
>>>> KeyboardInterrupt doesn't work, so stopped using ctrl + Z), it continues to
>>>> paste infinitely on the terminal, just like this
>>>> <http://dpaste.com/0SSEM4E>. I implemented it from scratch (but with a
>>>> some modifications) and all the functions compiled well for me.  I'd be
>>>> glad for any help :-)
>>>>
>>>> Regards,
>>>> Ramana
>>>>
>>>> --
>>>>
>>>> ---
>>>> 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 theano-users...@googlegroups.com.
>>>> 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 theano-users+unsubscr...@googlegroups.com.
> 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 theano-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to