On Mon, Feb 20, 2012 at 2:57 PM, Lluís <xscr...@gmx.net> wrote:

> James Bergstra writes:
> [...]
> > I should add that the biggest benefit of expressing things as compound
> > expressions in this way is not in saving temporaries (though that is
> nice) it's
> > being able to express enough computation work at a time that it offsets
> the time
> > required to ship the arguments off to a GPU for evaluation!
>
> Right, that's exacly what you need for an "external computation" to pay
> off.
>
> Just out of curiosity (feel free to respond with a RTFM or a RTFP :)), do
> you
> support any of these? (sorry for the made-up names)
>
> * automatic transfer double-buffering
>

Not currently, but it would be quite straightforward to do it. Email
theano-dev and ask how if you really want to know.


>
> * automatic problem partitioning into domains (e.g., multiple GPUs; even
> better
>  if also supports nodes - MPI -)
>

Not currently, and it would be hard.


>
> * point-specific computations (e.g., code dependant on the thread id,
> although
>  this can also be expressed in other ways, like index ranges)
>
>
No.


> * point-relative computations (the most common would be a stencil)
>
>
No, but I think theano provides a decent expression language to tackle
this. The "Composite" element-wise code generator is an example of how I
would think about this. It provides point-relative computations across
several arguments.  You might want something different that applies a
stencil computation across one or several arguments... the "scan" operator
was another foray into this territory, and it got tricky when the stencil
operation could have side-effects (like random number generation) and could
define it's own input domain (stencil shape), but the result is quite
powerful.

-- 
http://www-etud.iro.umontreal.ca/~bergstrj
_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to