← Back to team overview

dorsal team mailing list archive

Re: PETSc GPU support in Dorsal

 

On 3/7/12 8:37 PM, Fredrik Heffer Valdmanis wrote:
> 2012/3/7 Anders Logg <logg@xxxxxxxxx <mailto:logg@xxxxxxxxx>>
> 
>     On Wed, Mar 07, 2012 at 04:24:13PM +0100, Fredrik Heffer Valdmanis
>     wrote:
>     > I think it might be a good time to bring this thread up again now. My
>     > Dorsal branch is still working fine, but there are a couple of
>     issues that
>     > should be discussed before merging:
>     >
>     > 1: As mentioned in my first email, the user has to set "default
>     > CUDA_DIR=<path to cuda installation>" in the platform file, and
>     add the
>     > packages cusp and thrust to the beginning of the list of packages
>     to build
>     > PETSc with Cusp support. This might not be the best way to solve
>     this. One
>     > could of course set CUDA_DIR in dorsal/local.cfg instead, but the
>     list of
>     > packages to install still has to be modified. Any opinions? Could
>     this be
>     > (semi) automated?
> 
>     How about making a new package file called petscwithcuda or
>     petsc-cuda or
>     whatever naming schem Harish suggests.
> 
>     I think it is OK to require the user to set the environment variable
>     CUDA_DIR before running Dorsal, either as part of the user's
>     environment setup or in local.cfg.
> 
> 
>     > 2: Thrust and Cusp only comes packaged in .zip-files, which Dorsal
>     doesn't
>     > support as far as I can see. To get around this this, {thrust,
>     > cusp}.package currently pull the latest hg repositories from
>     Google Code.
>     > To make these development versions play nice with petsc-3.2-p6, I
>     have had
>     > to add a patch to PETSc. A possible solution would be to package
>     stable
>     > versions of cusp and thrust ourselves and host them on
>     > fenicsproject.org <http://fenicsproject.org>. PETSc-dev
>     > works fine with these development versions, so we can skip the
>     patching
>     > once 3.2-p7 is released.
> 
>     I don't fully understand. Are there stable Thrust and Cusp packages
>     available which work with stable PETsc?
> 
> Yes, the latest stable versions of Cusp (0.3.0 [1]) and Thrust (1.5.1
> [2]) work fine with PETSc 3.2-p6, but they are only available as
> .zip-files, a packaging scheme which is not supported by Dorsal as far
> as I understand. Hence, we must either use the mercurial repositories,
> which is a type of repo that Dorsal can pull, or we must repackage Cusp
> and Thrust in an archive format that Dorsal supports and host them
> ourselves. It is not really an alternative to use development versions,
> so we should repackage Cusp and Thrust. Or implement zip-support in
> Dorsal ...

Adding zip file support to Dorsal is trivial; I will add it shortly.

Also, I will follow the notes on the FEniCS Project web site and branch
Dorsal into a 1.0.x and trunk branch (soon). That way, I can pull your
changes for GPU-related things in the trunk branch and not worry about
how it affects the 1.0.x branch.

Harish
> 
> [1] http://code.google.com/p/cusp-library/downloads/list
> [2] http://code.google.com/p/thrust/downloads/list
> 
> -- 
> Fredrik
> 
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~dorsal
> Post to     : dorsal@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~dorsal
> More help   : https://help.launchpad.net/ListHelp



Follow ups

References