[petsc-users] [EXTERNAL] Re: Using MAGMA subroutines instead of LAPACK in SLEPc

Harshad Sahasrabudhe hsahasra at purdue.edu
Thu Jun 20 16:09:39 CDT 2013


Thanks! That's exactly what I was looking for!

Harshad

On 06/20/2013 04:59 PM, Satish Balay wrote:
> check include/petscblaslapack*.h
>
> You might have to add a new one [or modify one of the relavent one for
> your compiler] - similar to stuff in petscblaslapack_stdcall.h
>
> Satish
>
> On Thu, 20 Jun 2013, Harshad Sahasrabudhe wrote:
>
>> Hi,
>>
>> Yes, MAGMA's API is not exactly the same. There are a few additional arguments
>> in the functions related to number of GPU etc. So it cannot be directly linked
>> instead of LAPACK.
>>
>> Hacking SLEPc/PETSc code seems to be the easier way to go. But I can't find
>> the exact place where the LAPACK functions are called.
>>
>> Thanks,
>> Harshad
>>
>> On 06/20/2013 04:49 PM, Teranishi, Keita wrote:
>>> Hi,
>>>
>>> As far as I know, Magma's API us not exactly the same as the original
>>> LAPACK.  You may need to hack either Magma's Fortran API or internal
>>> SLEPC/PETSc source.
>>>
>>> Thanks,
>>> ---------------------------------------------
>>> Keita Teranishi
>>> R&D Principal Staff Member
>>> Sandia National Laboratories
>>> Livermore, CA 94551
>>>
>>> From: Matthew Knepley <knepley at gmail.com <mailto:knepley at gmail.com>>
>>> Date: Thursday, June 20, 2013 1:42 PM
>>> To: Harshad Sahasrabudhe <hsahasra at purdue.edu <mailto:hsahasra at purdue.edu>>
>>> Cc: "petsc-users at mcs.anl.gov <mailto:petsc-users at mcs.anl.gov>"
>>> <petsc-users at mcs.anl.gov <mailto:petsc-users at mcs.anl.gov>>
>>> Subject: [EXTERNAL] Re: [petsc-users] Using MAGMA subroutines instead of
>>> LAPACK in SLEPc
>>>
>>> On Thu, Jun 20, 2013 at 10:24 PM, Harshad Sahasrabudhe <hsahasra at purdue.edu
>>> <mailto:hsahasra at purdue.edu>> wrote:
>>>
>>>      Hi,
>>>
>>>      I'm trying to run the SLEPc Eigensolver on a machine with CPUs &
>>>      GPUs. I found that a package called MAGMA implements LAPACK
>>>      functions on heterogeneous systems (CPU + GPU). MAGMA has
>>>      functions very similar to LAPACK so that we can go and replace a
>>>      call to a LAPACK function with a call to a MAGMA function.
>>>
>>>      Now my question is, where can I apply such a hack inside
>>>      SLEPc/PETSc so that the Eigensolver in SLEPc actually uses MAGMA
>>>      functions instead of LAPACK functions? I'm using the PETSc 3.3-p6
>>>      and SLEPc 3.3-p3 versions.
>>>
>>>      Any help would be greatly appreciated!
>>>
>>>
>>> You need to do this in PETSc configure. Use --with-f-blas-lapack-lib=[<MAGMA
>>> libs>]. We have never tried this, so I don't
>>> know if they obey the entire interface.
>>>
>>>    Thanks
>>>
>>>      Thanks and Regards,
>>>      Harshad
>>>
>>>
>>>
>>>
>>> -- 
>>> What most experimenters take for granted before they begin their experiments
>>> is infinitely more interesting than any results to which their experiments
>>> lead.
>>> -- Norbert Wiener
>>



More information about the petsc-users mailing list