On Jul 20, 9:21 am, Simon Beaumont <[EMAIL PROTECTED]> wrote:

Hi Simon,

> I am just about to embark on integrating come CUDA libraries into
> sage. I was not sure of the best route to go - I am considering the
> pycuda libraries as a starting point - this a pure kernel approach - I
> but would also like to get the CUDA blas and fft libraries integrated.

Various people have started looking into this, but so far no one has
produced code. One big issue (at least for me) with pycuda is the
requirement for boost, but I am not sure how that could be overcome.
Since I am personally only interested in the CUDA BLAS the suggested
way to hook it into Sage was directly via Cython, but recreating
pycuda via Cython seems like a large waste of effort and should be
avoided at all costs.

The main issue with boost I see is that PolyBoRi ships with a subset
of boost and installs it into $SAGE_LOCAL/include/boost. I assume that
it will not be enough of boost, i.e. boost python is not part of it.
Since PolyBoRi also has an interface to Python using boost Python we
might be able to add the bits needed to the polybori.spkg, otherwise I
see potentially huge trouble by colliding boost versions in the tree.
And shipping boost itself is not really an option due to its rather
large size.

> (I think cuda-python) can do this. I'm sure I'm not the first down
> this road and wondered which would be the most useful. I'd also
> appreciate some tips and pointers into integration of sage arrays and
> matrices to make this as native as possible.

I think using numpy arrays here for now might be the way to go, but
that limits you to numpy data types. Since we are talking about
numerical computations it seems that we will not lose functionality
here at all.

> Of course this work would
> be shared with the community. I have plans to make some CUDA hardware
> available over the web using sage and have also have some longer term
> plans for a modeling environment based on it.

Cool. There are various people waiting to but the next generation of
Tesla hardware, i.e. the one that actually provides IEEE doubles. I am
basically waiting for it to become available since the things I am
interested in do require IEEE precision and close to IEEE is not
enough.

> Any advice and pointers most welcome.

Please keep us up to date how things are going and let us know about
any problems you have. This is an area we should definitely make some
progress this year.

> Regards,
>
> Simon

Cheers,

Michael
--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to