[petsc-dev] Handling ESSL + Lapack and PESSL

Barry Smith bsmith at mcs.anl.gov
Mon Sep 13 13:18:54 CDT 2010


On Sep 13, 2010, at 12:35 PM, Jed Brown wrote:

> I was just chatting with Aron and two issues came up.  First, he is
> successfully linking PESSL, but configure currently has
> 
>  raise RuntimeError('Cannot use PESSL instead of ESSL!')
> 
> (apparently this was patched to let it through).  Why this guard, it
> prevents user code from calling PESSL.

   Does PESSL have some of the same symbols in it as ESSL? If it has any symbols that are identical but map to different functions there would be a problem. We haven't messed with PESSL in many, many years so perhaps they fixed this? Also PESSL use to use threads to do some of its parallelism. In our MPI on every core model of PETSc this doesn't make sense because the cores will be over subscribed with several PESSL threads per core. Basically it use to be if you linked PESSL into PETSc things didn't work properly. If that is fixed then the check could be removed.
> 
> 
> Additionally, he has built PETSc with both Lapack and ESSL (linking
> Lapack first so those symbols resolve to the standard interface).  This
> is a problem since PETSc dispatches on PETSC_HAVE_ESSL to determine the
> interface of LAPACKgeev (even though it is getting the standard Lapack
> one in the scenario above), I think it should test which version of this
> function it has and dispatch on PETSC_HAVE_ESSL_GEEV.

    You really don't want to link LAPACK first because then basically you get the LAPACK versions of the codes which (one would presume) are slower then the same interfaces in ESSL (otherwise why bother using ESSL).  The reason we say you must link to LAPACK in addition to ESSL is because ESSL used to not have all the functionality of LAPACK (again maybe the fixed this over the years). Maybe you no longer need to also link LAPACk (wait a minute, this is IBM, they probably didn't fix this).

    When is KAUST going to grow a brain and order a IBM Blue Waters machine as the next machine and not a IBM Blue Gene?

   Barry

> 
> Jed




More information about the petsc-dev mailing list