[Numpy-discussion] [OT] Starving CPUs article featured in IEEE's ComputingNow portal

James Bergstra bergstrj at iro.umontreal.ca
Mon Mar 22 15:07:00 EDT 2010


On Sun, Mar 21, 2010 at 1:13 PM, Sebastian Walter
<sebastian.walter at gmail.com> wrote:
> On Fri, Mar 19, 2010 at 11:18 PM, David Warde-Farley <dwf at cs.toronto.edu> wrote:
>> On 19-Mar-10, at 1:13 PM, Anne Archibald wrote:
>>
>>> I'm not knocking numpy; it does (almost) the best it can. (I'm not
>>> sure of the optimality of the order in which ufuncs are executed; I
>>> think some optimizations there are possible.) But a language designed
>>> from scratch for vector calculations could certainly compile
>>> expressions into a form that would save a lot of memory accesses,
>>> particularly if an optimizer combined many lines of code. I've
>>> actually thought about whether such a thing could be done in python; I
>>> think the way to do it would be to build expression objects from
>>> variable objects, then have a single "apply" function that fed values
>>> in to all the variables.
>>
>> Hey Anne,
>>
>> Some folks across town from you at U de M have built just such at
>> thing. :)
>>
>> http://deeplearning.net/software/theano/
>>
>> It does all that, plus automatic differentiation, detection and
>> correction of numerical instabilities, etc.
>>
>> Probably the most amazing thing about it is that with recent versions,
>> you basically flip a switch and it will instead use an available CUDA-
>> capable Nvidia GPU instead of the CPU. I'll admit, when James Bergstra
>> initially told me about this plan to make it possible to transparently
>> switch to running stuff on the GPU, I thought it was so ambitious that
>> it would never happen. Then it did...
>
> The progress Theano is making is promising. I had several times a look
> at theano and I like the idea of code generation,
> especially the numpy support. I hope it may be useful for one of my
> projects in the future.
>
> What I couldn't figure out from the documentation is the actual
> performance and ease of use.
> Am I right with the assumption that you are not a Theano dev? Have you
> used Theano in a project? What are you experiences?
> Do you happen to know how big the computational graphs can be?
> Is there the possibility to have loops and if then else statements?
>
> Sorry for being a little offtopic here.

I encourage you to sign up for theano-users at googlegroup.com if you
want to keep an eye on things.
If you fwd this to theano-users I'd be happy answer it there.

James
-- 
http://www-etud.iro.umontreal.ca/~bergstrj



More information about the NumPy-Discussion mailing list