[petsc-dev] configure issues with new MKL and --with-mkl_sparse_optimize=0

Smith, Barry F. bsmith at mcs.anl.gov
Tue Nov 27 16:15:28 CST 2018



> On Nov 26, 2018, at 6:12 PM, Mills, Richard Tran via petsc-dev <petsc-dev at mcs.anl.gov> wrote:
> 
> Hi Stefano,
> 
> Apologies for the slow reply; I was out for the US Thanksgiving Holiday.
> 
> You've found an error in the logic for the MKL configure tests: Your MKL does indeed have mkl_sparse_sp2m(), but since this depends on having mkl_sparse_optimize() and you have specified '--with-mkl_sparse_optimize=0', PETSC_HAVE_MKL_SPARSE_SP2M either ought to not be defined, or in my AIJMKL code I should only enable the SP2M code if PETSC_HAVE_MKL_SPARSE_OPTIMIZE is defined. I think I like the former option better. For those more familiar with BuildSystem than I am, I think I can do this by putting the following in setupDependencies() in mkl_sparse_sp2m.py: 
> 
>     self.mkl_sparse_optimize  = framework.require('config.packages.mkl_sparse_optimize', self)
>     self.deps                           = [self.blasLapack,self.mkl_sparse_optimize]

    Looks ok to me. Make a pull request with Satish as a reviewer.

   Barry

> 
> Is that all that is required?
> 
> --Richard
> 
> On 11/21/18 10:59 PM, Stefano Zampini wrote:
>> Richard,
>> 
>> I just noticed that PETSc master does not build with the options
>> 
>>     '--with-mkl_pardiso-dir=/soft/com/packages/intel/18/u3/mkl',
>>     '--with-mkl_sparse_optimize=0',
>> 
>> This is on frog at MCS, but it will be the same on other machines as the macros configuration 
>> 
>> PETSC_HAVE_MKL_SPARSE_OPTIMIZE not defined
>> PETSC_HAVE_MKL_SPARSE_SP2M defined
>> 
>> does not seem to be supported.
>> 
>> /nfs2/szampini/src/petsc/src/mat/impls/aij/seq/aijmkl/aijmkl.c(797): error: struct "<unnamed>" has no field "csrA"
>>     csrA = a->csrA;
>> 
>> Could you please take a look? Why is the mkl_sparse_sp2m package flagged as lookforbydefault in the configure scripts?
>> 
>> Thanks
>> -- 
>> Stefano
> 



More information about the petsc-dev mailing list