[Trilinos-Users] [EXTERNAL] 64bit indices in Hypre, Superlu-Dist and Metis/Parmetis

Klinvex, Alicia Marie amklinv at sandia.gov
Thu Feb 23 09:06:57 EST 2017


That is accurate.

-----Original Message-----
From: Denis Davydov [mailto:davydden at gmail.com] 
Sent: Thursday, February 23, 2017 9:05 AM
To: Klinvex, Alicia Marie <amklinv at sandia.gov>
Cc: trilinos-users <trilinos-users at trilinos.org>; Hoemmen, Mark <mhoemme at sandia.gov>; Bartlett, Roscoe A <rabartl at sandia.gov>
Subject: Re: [EXTERNAL] [Trilinos-Users] 64bit indices in Hypre, Superlu-Dist and Metis/Parmetis

Thanks for the link to xSDKTrilinos. I should have mentioned that the build happens in Spack, where we already have a separate package for xSDKTrilinos.
So for now I am primarily concerned in building Trilinos itself with other dependencies which have 64bit ints.
Specifically, I am building the deal.II library (which uses PETSc and Trilinos) with 64bit indices enabled.

So from your reply, do I understand it correctly, that Trilinos itself (i.e. 12.10.1) can NOT be build against Hypre with 64bit ints?

Regards,
Denis.


> On 23 Feb 2017, at 14:54, Klinvex, Alicia Marie <amklinv at sandia.gov> wrote:
> 
> Hello Denis,
> 
> There are two hypre interfaces in Trilinos.  The one in EpetraExt can't support 64bit hypre, as far as I know.  The Tpetra-based one in xSDKTrilinos should be able to support this, but it has never been tested with 64bit hypre.  If the Tpetra-based interface doesn't work, please file an issue on github with the information necessary to reproduce the issue, and I'll fix it.
> 
> To enable the Tpetra-based interface, please follow the instructions in the xSDKTrilinos user manual: https://github.com/trilinos/xSDKTrilinos/blob/master/doc/xSDK_manual/user_manual.pdf.  I'm not sure how to disable the EpetraExt interface without disabling the Tpetra one, but maybe Ross can enlighten us.
> 
> Best wishes,
> Alicia
> 
> -----Original Message-----
> From: Denis Davydov [mailto:davydden at gmail.com] 
> Sent: Thursday, February 23, 2017 8:29 AM
> To: Klinvex, Alicia Marie <amklinv at sandia.gov>
> Cc: trilinos-users <trilinos-users at trilinos.org>; Hoemmen, Mark <mhoemme at sandia.gov>
> Subject: Re: [EXTERNAL] [Trilinos-Users] 64bit indices in Hypre, Superlu-Dist and Metis/Parmetis
> 
> Hi Alicia,
> 
> Thanks for the prompt reply.
> Could you please advice on how to turn off that interface in case we are building Trilinos against 64bit ints Hypre?
> If I understand you correctly, one can in general build `trilinos` against 64bit Hypre?
> 
> Regards,
> Denis.
> 
>> On 23 Feb 2017, at 14:17, Klinvex, Alicia Marie <amklinv at sandia.gov> wrote:
>> 
>> Hello Denis,
>> 
>> Since Epetra isn't templated, I'm not sure I see a way to support 64bit ints in that hypre interface.  (CCed Mark in case he has some ideas.)  We should be able to support it in the tpetra-based interface though, if you're interested in that one.
>> 
>> Best wishes,
>> Alicia
>> 
>> -----Original Message-----
>> From: Trilinos-Users [mailto:trilinos-users-bounces at trilinos.org] On Behalf Of Denis Davydov
>> Sent: Thursday, February 23, 2017 5:14 AM
>> To: trilinos-users <trilinos-users at trilinos.org>
>> Subject: [EXTERNAL] [Trilinos-Users] 64bit indices in Hypre, Superlu-Dist and Metis/Parmetis
>> 
>> Dear all,
>> 
>> I am building a stack (with 64bit indices) composed of PETSc, Trilinos, Superlu-Dist, Metis, etc and came across the following compiler error in EpetraExt:
>> 
>> /home/user/spack/var/spack/stage/trilinos-12.10.1-kgdtcmcwce6xhetukputhnh2f7v4sljf/Trilinos-trilinos-release-12-10-1/packages/epetraext/src/hypre/EpetraExt_HypreIJMatrix.cpp:91:96: error: cannot convert ‘int*’ to ‘HYPRE_Int* {aka long long int*}’ for argument ‘3’ to ‘HYPRE_Int HYPRE_ParCSRMatrixGetRow(HYPRE_ParCSRMatrix, HYPRE_Int, HYPRE_Int*, HYPRE_Int**, HYPRE_Complex**)’
>>    ierr += HYPRE_ParCSRMatrixGetRow(ParMatrix_, i+MyRowStart_, &num_entries, &indices, &values);
>>                                                                                               ^
>> 
>> That’s of course because if PETSc is built with 64bit ints, then Hypre have to be also built accordingly.
>> 
>> So what are the requirements from Trilinos side on those dependencies? Can it not be built against Hypre or Superlu-Dist when those packages are configured with —enable-biginit and -D_LONGINT, respectively?
>> Or is it a bug in EpetraExt?
>> 
>> Regards,
>> Denis.
>> 
>> _______________________________________________
>> Trilinos-Users mailing list
>> Trilinos-Users at trilinos.org
>> https://trilinos.org/mailman/listinfo/trilinos-users
> 



More information about the Trilinos-Users mailing list