[petsc-users] slepc NHEP error

Barry Smith bsmith at mcs.anl.gov
Wed Jun 14 15:40:45 CDT 2017


> On Jun 14, 2017, at 3:33 PM, Kannan, Ramakrishnan <kannanr at ornl.gov> wrote:
> 
> Can I use CHKERRV instead of CHKERRQ? Will that help?

   You can do that. But I question you having functions in your code that return void instead of an error code. Without error codes you are just hurting your own productivity.

   Barry

> 
> -- 
> Regards,
> Ramki
> 
> 
> On 6/14/17, 4:25 PM, "Kannan, Ramakrishnan" <kannanr at ornl.gov> wrote:
> 
>    I get the following compilation error when I have CHKERRQ.
> 
>    /opt/cray/petsc/3.7.4.0/real/GNU64/5.1/sandybridge/include/petscerror.h:433:154: error: return-statement with a value, in function returning 'void' [-fpermissive]
>     #define CHKERRQ(n)             do {if (PetscUnlikely(n)) return PetscError(PETSC_COMM_SELF,__LINE__,PETSC_FUNCTION_NAME,__FILE__,n,PETSC_ERROR_REPEAT," ");} while (0)
> 
> 
>    -- 
>    Regards,
>    Ramki
> 
> 
>    On 6/14/17, 4:14 PM, "Barry Smith" <bsmith at mcs.anl.gov> wrote:
> 
> 
>          Why do you have the CHKERRQ(ierr); commented out in your code? 
> 
>           Because of this you are getting mangled confusing error messages. 
> 
>           Put a ierr = in front of all calls and a CHKERRQ(ierr); after each call. 
> 
>           Then resend the new error message which will be much clearer.
> 
> 
> 
>> On Jun 14, 2017, at 2:58 PM, Kannan, Ramakrishnan <kannanr at ornl.gov> wrote:
>> 
>> Hello,
>> 
>> I am running NHEP across 16 MPI processors over 16 nodes in a matrix of global size of 1,000,000x1,000,000 with approximately global 16,000,000 non-zeros. Each node has approximately 1million non-zeros.
>> 
>> The following is my slepc code for EPS.
>> 
>> PetscInt nev;
>> ierr = EPSCreate(PETSC_COMM_WORLD, &eps);  // CHKERRQ(ierr);
>> ierr = EPSSetOperators(eps, A, NULL);  // CHKERRQ(ierr);
>> ierr = EPSSetProblemType(eps, EPS_NHEP);  // CHKERRQ(ierr);
>> EPSSetWhichEigenpairs(eps, EPS_LARGEST_REAL);
>> EPSSetDimensions(eps, 100, PETSC_DEFAULT, PETSC_DEFAULT);
>> PRINTROOT("calling epssolve");
>> ierr = EPSSolve(eps);  // CHKERRQ(ierr);
>> ierr = EPSGetType(eps, &type);  // CHKERRQ(ierr);
>> ierr = PetscPrintf(PETSC_COMM_WORLD, " Solution method: %s\n\n", type);
>> // CHKERRQ(ierr);
>> ierr = EPSGetDimensions(eps, &nev, NULL, NULL);  // CHKERRQ(ierr);
>> ierr = PetscPrintf(PETSC_COMM_WORLD,
>>                       " Number of requested eigenvalues: %D\n",
>>                       nev);  // CHKERRQ(ierr);
>> 
>> I am getting the following error. Attached is the entire error file for your reference. Please let me know what should I fix in this code.
>> 
>> 2]PETSC ERROR: Argument out of range
>> [2]PETSC ERROR: Argument 2 out of range
>> [2]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html for trouble shooting.
>> [2]PETSC ERROR: Petsc Release Version 3.7.4, Oct, 02, 2016
>> [2]PETSC ERROR: ./miniapps on a sandybridge named nid00300 by d3s Wed Jun 14 15:32:00 2017
>> [13]PETSC ERROR: #1 BVDotVec_BLAS_Private() line 272 in /autofs/nccs-svm1_home1/ramki/libraries/slepc-3.7.3/src/sys/classes/bv/interface/bvblas.c
>> [13]PETSC ERROR: #2 BVDotVec_Svec() line 150 in /autofs/nccs-svm1_home1/ramki/libraries/slepc-3.7.3/src/sys/classes/bv/impls/svec/svec.c
>> [13]PETSC ERROR: #3 BVDotVec() line 191 in /autofs/nccs-svm1_home1/ramki/libraries/slepc-3.7.3/src/sys/classes/bv/interface/bvglobal.c
>> [13]PETSC ERROR: #4 BVOrthogonalizeCGS1() line 81 in /autofs/nccs-svm1_home1/ramki/libraries/slepc-3.7.3/src/sys/classes/bv/interface/bvorthog.c
>> [13]PETSC ERROR: #5 BVOrthogonalizeCGS() line 214 in /autofs/nccs-svm1_home1/ramki/libraries/slepc-3.7.3/src/sys/classes/bv/interface/bvorthog.c
>> [13]PETSC ERROR: #6 BVOrthogonalizeColumn() line 371 in /autofs/nccs-svm1_home1/ramki/libraries/slepc-3.7.3/src/sys/classes/bv/interface/bvorthog.c
>> [13]PETSC ERROR: #7 EPSBasicArnoldi() line 59 in /autofs/nccs-svm1_home1/ramki/libraries/slepc-3.7.3/src/eps/impls/krylov/epskrylov.c
>> [13]PETSC ERROR: #8 EPSSolve_KrylovSchur_Default() line 203 in /autofs/nccs-svm1_home1/ramki/libraries/slepc-3.7.3/src/eps/impls/krylov/krylovschur/krylovschur.c
>> [13]PETSC ERROR: #9 EPSSolve() line 101 in /autofs/nccs-svm1_home1/ramki/libraries/slepc-3.7.3/src/eps/interface/epssolve.c
>> 
>> -- 
>> Regards,
>> Ramki
>> 
>> <test.pbs.e613713>
> 
> 
> 
> 
> 
> 



More information about the petsc-users mailing list