On 3/12/2011 3:44 PM, Ivan Shmakov wrote:
>
>       However, the only way I see for the topmost operator to be
>       “seen” to PDL before its arguments are actually computed is the
>       delayed (AKA lazy) evaluation.  Which is quite common in certain
>       languages (and some, like Haskell, are built all around such a
>       notion), but which I've rarely (if at all) seen being done in
>       Perl.  And I'm not sure that extending PDL “to do it the lazy
>       way” could be at all easy.  (And we'd have to watch for all the
>       PDL instances involved in such a computation to not become
>       tampered along the way, as such tampering should wait for the
>       computation to complete first.)

Lazy evaluation is one approach of interest.  The current
dataflow support for slicing is similar to that.  Another
option would be adding something like a forall construct
to directly support these types of operations.

>       Still, individual methods could probably be made
>       “multicore-enabled” without much effort.  I'm, however, unsure
>       about the overall effect it may have upon the performance, etc.

These type of issues will also be involved in effective
GPU use with PDL.

Thanks for the thoughts,
Chris

_______________________________________________
Perldl mailing list
[email protected]
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl

Reply via email to