[petsc-dev] [petsc-maint #40976] convert a matrix from CSR format to BCSR format

Barry Smith bsmith at mcs.anl.gov
Tue Feb 16 20:47:27 CST 2010


   --download-c-blas-lapack puts "bad" Blas/LAPACK into its own  
library. There is no --with-blaslapack=0

   Shouldn't  we eliminate -with-mpi=0 and instead have --download- 
mpiuni

    Barry

    Removes one more special case, and special cases are BAD! So  
obviously it is a good idea, let's see if anyone has a legitimate  
reason for rejecting it instead of knee-jerk conservatism.



On Feb 16, 2010, at 8:31 PM, Satish Balay wrote:

> This is a conflict with --with-mpi=0 and the curent default
> --with-single-library=1
>
> Ideally we should create libmpiuni.a [and a .so] even with
> --with-single-library=1 - but I'm not sure how to do that cleanly. So
> my current fix is to remove libmpiuni.a for
> --with-single-library=1. [i.e libpetsc.a will have the mpiuni stuff as
> well]
>
> Testing this change - and will push once I verify.
>
> Satish
>
> On Tue, 16 Feb 2010, Matthew Knepley wrote:
>
>> On Tue, Feb 16, 2010 at 8:16 PM, Dahai Guo <dhguo at ncsa.uiuc.edu>  
>> wrote:
>>
>>>
>>>
>>> Thanks, Barry.
>>>
>>>
>>>
>>> I tried to configure and built petsc-dev on AIX with the following  
>>> options,
>>> but failed when "make test" as follow "ld: 0706-006 Cannot find or  
>>> open
>>> library file: -l mpiuni". I  used the same options for petsc-3.0,  
>>> everything
>>> is fine. Would you tell me how to fix it?
>>>
>>
>> Always send configure.log
>>
>>  Matt
>>
>>
>>> Dahai
>>>
>>>
>>>
>>> export OBJECT_MODE=64  # for 64/32-bit ar
>>> export PETSC_DIR=$PWD
>>>
>>> config/configure.py  --with-mpi=0 --with-64-bit-pointers=1  --with- 
>>> cc=xlc_r
>>> --with-cxx=xlC_r --with-fc=xlf_r COPTFLAGS='-q64 -O3 -qstrict - 
>>> qmaxmem=-1
>>> -qarch=pwr6 -qtune=pwr6' FOPTFLAGS='-q64 -O3 -qstrict -qmaxmem=-1
>>> -qarch=pwr6 -qtune=pwr6' CXXOPTFLAGS='-q64 -O3 -qstrict -qmaxmem=-1
>>> -qarch=pwr6 -qtune=pwr6'
>>>
>>>
>>>
>>>
>>>
>>> bash-3.1$ make test
>>> Running test examples to verify correct installation
>>> --------------Error detected during compile or  
>>> link!-----------------------
>>> See
>>> http://www.mcs.anl.gov/petsc/petsc-2/documentation/troubleshooting.html
>>> xlc_r -o ex19.o -c -q64 -O3 -qstrict -qmaxmem=-1 -qarch=pwr6 - 
>>> qtune=pwr6
>>> -I/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/include
>>> -I/blhome/dhguo/petsc-dev/include -I/blhome/dhguo/petsc-dev/ 
>>> include/mpiuni
>>> -D__SDIR__="src/snes/examples/tutorials/" ex19.c
>>>        xlc_r -q64 -O3 -qstrict -qmaxmem=-1 -qarch=pwr6 - 
>>> qtune=pwr6  -o
>>> ex19  ex19.o -L/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/lib
>>> -L/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/lib -lpetsc  -lX11 - 
>>> lessl
>>> -L/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/lib -lmpiuni -lm -ldl
>>> -L/usr/vac/lib -lxlopt -lxl -lpthreads -lxlf90 -L/usr/lpp/xlf/lib - 
>>> lxlf
>>> -lxlomp_ser -lm -ldl -lxlopt -lxl -lpthreads -ldl
>>> ld: 0706-006 Cannot find or open library file: -l mpiuni
>>>        ld:open(): No such file or directory
>>> make: The error code from the last command is 255.
>>> make: Ignored error code 255 from last command.
>>>        /usr/linux/bin/rm -f ex19.o
>>> --------------Error detected during compile or  
>>> link!-----------------------
>>> See
>>> http://www.mcs.anl.gov/petsc/petsc-2/documentation/troubleshooting.html
>>>        xlf_r -c  -q64 -O3 -qstrict -qmaxmem=-1 -qarch=pwr6 - 
>>> qtune=pwr6
>>> -I/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/include
>>> -I/blhome/dhguo/petsc-dev/include -I/blhome/dhguo/petsc-dev/ 
>>> include/mpiuni
>>> -I/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/include
>>> -I/blhome/dhguo/petsc-dev/include/mpiuni    -o ex5f.o ex5f.F
>>> ** main   === End of Compilation 1 ===
>>> ** forminitialguess   === End of Compilation 2 ===
>>> ** initialguesslocal   === End of Compilation 3 ===
>>> ** formfunctionlocal   === End of Compilation 4 ===
>>> ** formjacobianlocal   === End of Compilation 5 ===
>>> 1501-510  Compilation successful for file ex5f.F.
>>>        xlf_r -q64 -O3 -qstrict -qmaxmem=-1 -qarch=pwr6 - 
>>> qtune=pwr6   -o
>>> ex5f ex5f.o -L/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/lib
>>> -L/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/lib -lpetsc  -lX11 - 
>>> lessl
>>> -L/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/lib -lmpiuni -lm -ldl
>>> -L/usr/vac/lib -lxlopt -lxl -lpthreads -lxlf90 -L/usr/lpp/xlf/lib - 
>>> lxlf
>>> -lxlomp_ser -lm -ldl -lxlopt -lxl -lpthreads -ldl
>>> ld: 0706-006 Cannot find or open library file: -l mpiuni
>>>        ld:open(): No such file or directory
>>> make: The error code from the last command is 255.
>>> make: Ignored error code 255 from last command.
>>>        /usr/linux/bin/rm -f ex5f.o
>>> Completed test examples
>>>
>>>
>>>
>>>
>>>
>>> ----- Original Message -----
>>> From: "Barry Smith" <bsmith at mcs.anl.gov>
>>> To: petsc-maint at mcs.anl.gov, "Dahai Guo" <dhguo at ncsa.uiuc.edu>
>>> Sent: Tuesday, February 16, 2010 1:40:53 PM GMT -06:00 Central  
>>> America
>>> Subject: Re: [petsc-maint #40976] convert a matrix from CSR format  
>>> to BCSR
>>> format
>>>
>>>
>>>   Sorry, I forgot to check the code last weekend.
>>>
>>>   I cannot reproduce your problem.
>>>
>>>   Looks like you are using petsc 3.0.0. That is completely insane!
>>> This problem has been fixed for a year. You should be using petsc- 
>>> dev
>>> http://www.mcs.anl.gov/petsc/petsc-as/developers/index.html
>>>  it will make your live much easier.
>>>
>>>
>>>    Barry
>>>
>>> On Feb 15, 2010, at 10:38 AM, Dahai Guo wrote:
>>>
>>>>
>>>>
>>>> Barry:
>>>>
>>>>
>>>>
>>>> In the function “MatGetFactor” in src/mat/interface/matrix.c, it
>>>> only checks if the matsolver is available for subclass, but NOT
>>>> further check for the AIJ/BAIJ.    I think it is one of the reasons
>>>> that a subclass(e.g. crl ) inherited from AIJ/BAIJ can not inherit
>>>> "MatGetFactor" from AIJ/BAIJ.
>>>>
>>>> Is there some special reason for designing it in this way? Or it is
>>>> just a bug? How to improve it? Please advise.
>>>>
>>>> Thanks,
>>>>
>>>> Dahai
>>>>
>>>>
>>>>
>>>>
>>>> ----- Original Message -----
>>>> From: "Barry Smith" <bsmith at mcs.anl.gov>
>>>> To: petsc-maint at mcs.anl.gov, "Dahai Guo" <dhguo at ncsa.uiuc.edu>
>>>> Sent: Thursday, February 11, 2010 9:45:24 PM GMT -06:00 US/Canada
>>>> Central
>>>> Subject: Re: [petsc-maint #40976] convert a matrix from CSR format
>>>> to BCSR format
>>>>
>>>>
>>>>   Dahai,
>>>>
>>>>     You have to switch to a decent email client. Stuff you send is
>>>> never in attachments, it is always crammed into the message as one
>>>> long piece of text.
>>>>
>>>>     I'll try to reproduce the problem tomorrow,
>>>>
>>>>    Barry
>>>>
>>>> On Feb 11, 2010, at 8:01 PM, Dahai Guo wrote:
>>>>
>>>>> tried CSR format, it showed the similar problem as follow.??? I
>>>>> attached the test code and datafile.
>>>>
>>>>
>>>> Barry:
>>>>
>>>> In the function “MatGetFactor” in src/mat/interface/matrix.c, it
>>>> only checks if the matsolver is available for subclass, but NOT
>>>> further check for the AIJ/BAIJ.   I think it is one of the reasons
>>>> that a subclass(e.g. crl ) inherited from AIJ/BAIJ can not inherit
>>>> "MatGetFactor" from AIJ/BAIJ.
>>>>
>>>> Is there some special reason for designing it in this way? Or it is
>>>> just a bug? How to improve it? Please advise.
>>>>
>>>> Thanks,
>>>>
>>>> Dahai
>>>>
>>>>
>>>> ----- Original Message -----
>>>> From: "Barry Smith" <bsmith at mcs.anl.gov>
>>>> To: petsc-maint at mcs.anl.gov, "Dahai Guo" <dhguo at ncsa.uiuc.edu>
>>>> Sent: Thursday, February 11, 2010 9:45:24 PM GMT -06:00 US/Canada
>>>> Central
>>>> Subject: Re: [petsc-maint #40976] convert a matrix from CSR format
>>>> to BCSR format
>>>>
>>>>
>>>>   Dahai,
>>>>
>>>>     You have to switch to a decent email client. Stuff you send is
>>>> never in attachments, it is always crammed into the message as one
>>>> long piece of text.
>>>>
>>>>     I'll try to reproduce the problem tomorrow,
>>>>
>>>>    Barry
>>>>
>>>> On Feb 11, 2010, at 8:01 PM, Dahai Guo wrote:
>>>>
>>>>> tried CSR format, it showed the similar problem as follow.??? I
>>>>> attached the test code and datafile.
>>>>
>>>
>>>
>>>
>>> Thanks, Barry.
>>>
>>>
>>>
>>> I tried to configure and built petsc-dev on AIX with the following  
>>> options,
>>> but failed when "make test" as follow "ld: 0706-006 Cannot find or  
>>> open
>>> library file: -l mpiuni". I  used the same options for petsc-3.0,  
>>> everything
>>> is fine. Would you tell me how to fix it?
>>>
>>>
>>>
>>> Dahai
>>>
>>>
>>>
>>> export OBJECT_MODE=64  # for 64/32-bit ar
>>> export PETSC_DIR=$PWD
>>>
>>> config/configure.py  --with-mpi=0 --with-64-bit-pointers=1  --with- 
>>> cc=xlc_r
>>> --with-cxx=xlC_r --with-fc=xlf_r COPTFLAGS='-q64 -O3 -qstrict - 
>>> qmaxmem=-1
>>> -qarch=pwr6 -qtune=pwr6' FOPTFLAGS='-q64 -O3 -qstrict -qmaxmem=-1
>>> -qarch=pwr6 -qtune=pwr6' CXXOPTFLAGS='-q64 -O3 -qstrict -qmaxmem=-1
>>> -qarch=pwr6 -qtune=pwr6'
>>>
>>>
>>>
>>>
>>>
>>> bash-3.1$ make test
>>> Running test examples to verify correct installation
>>> --------------Error detected during compile or  
>>> link!-----------------------
>>> See
>>> http://www.mcs.anl.gov/petsc/petsc-2/documentation/troubleshooting.html
>>> xlc_r -o ex19.o -c -q64 -O3 -qstrict -qmaxmem=-1 -qarch=pwr6 - 
>>> qtune=pwr6
>>> -I/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/include
>>> -I/blhome/dhguo/petsc-dev/include -I/blhome/dhguo/petsc-dev/ 
>>> include/mpiuni
>>> -D__SDIR__="src/snes/examples/tutorials/" ex19.c
>>>        xlc_r -q64 -O3 -qstrict -qmaxmem=-1 -qarch=pwr6 - 
>>> qtune=pwr6  -o
>>> ex19  ex19.o -L/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/lib
>>> -L/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/lib -lpetsc  -lX11 - 
>>> lessl
>>> -L/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/lib -lmpiuni -lm -ldl
>>> -L/usr/vac/lib -lxlopt -lxl -lpthreads -lxlf90 -L/usr/lpp/xlf/lib - 
>>> lxlf
>>> -lxlomp_ser -lm -ldl -lxlopt -lxl -lpthreads -ldl
>>> ld: 0706-006 Cannot find or open library file: -l mpiuni
>>>        ld:open(): No such file or directory
>>> make: The error code from the last command is 255.
>>> make: Ignored error code 255 from last command.
>>>        /usr/linux/bin/rm -f ex19.o
>>> --------------Error detected during compile or  
>>> link!-----------------------
>>> See
>>> http://www.mcs.anl.gov/petsc/petsc-2/documentation/troubleshooting.html
>>>        xlf_r -c  -q64 -O3 -qstrict -qmaxmem=-1 -qarch=pwr6 - 
>>> qtune=pwr6
>>> -I/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/include
>>> -I/blhome/dhguo/petsc-dev/include -I/blhome/dhguo/petsc-dev/ 
>>> include/mpiuni
>>> -I/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/include
>>> -I/blhome/dhguo/petsc-dev/include/mpiuni    -o ex5f.o ex5f.F
>>> ** main   === End of Compilation 1 ===
>>> ** forminitialguess   === End of Compilation 2 ===
>>> ** initialguesslocal   === End of Compilation 3 ===
>>> ** formfunctionlocal   === End of Compilation 4 ===
>>> ** formjacobianlocal   === End of Compilation 5 ===
>>> 1501-510  Compilation successful for file ex5f.F.
>>>        xlf_r -q64 -O3 -qstrict -qmaxmem=-1 -qarch=pwr6 - 
>>> qtune=pwr6   -o
>>> ex5f ex5f.o -L/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/lib
>>> -L/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/lib -lpetsc  -lX11 - 
>>> lessl
>>> -L/blhome/dhguo/petsc-dev/aix5.3.0.0-c-debug/lib -lmpiuni -lm -ldl
>>> -L/usr/vac/lib -lxlopt -lxl -lpthreads -lxlf90 -L/usr/lpp/xlf/lib - 
>>> lxlf
>>> -lxlomp_ser -lm -ldl -lxlopt -lxl -lpthreads -ldl
>>> ld: 0706-006 Cannot find or open library file: -l mpiuni
>>>        ld:open(): No such file or directory
>>> make: The error code from the last command is 255.
>>> make: Ignored error code 255 from last command.
>>>        /usr/linux/bin/rm -f ex5f.o
>>> Completed test examples
>>>
>>>
>>>
>>>
>>> ----- Original Message -----
>>> From: "Barry Smith" <bsmith at mcs.anl.gov>
>>> To: petsc-maint at mcs.anl.gov, "Dahai Guo" <dhguo at ncsa.uiuc.edu>
>>> Sent: Tuesday, February 16, 2010 1:40:53 PM GMT -06:00 Central  
>>> America
>>> Subject: Re: [petsc-maint #40976] convert a matrix from CSR format  
>>> to BCSR
>>> format
>>>
>>>
>>>   Sorry, I forgot to check the code last weekend.
>>>
>>>   I cannot reproduce your problem.
>>>
>>>   Looks like you are using petsc 3.0.0. That is completely insane!
>>> This problem has been fixed for a year. You should be using petsc- 
>>> dev
>>> http://www.mcs.anl.gov/petsc/petsc-as/developers/index.html
>>>  it will make your live much easier.
>>>
>>>
>>>    Barry
>>>
>>> On Feb 15, 2010, at 10:38 AM, Dahai Guo wrote:
>>>
>>>>
>>>>
>>>> Barry:
>>>>
>>>>
>>>>
>>>> In the function “MatGetFactor” in src/mat/interface/matrix.c, it
>>>> only checks if the matsolver is available for subclass, but NOT
>>>> further check for the AIJ/BAIJ.    I think it is one of the reasons
>>>> that a subclass(e.g. crl ) inherited from AIJ/BAIJ can not inherit
>>>> "MatGetFactor" from AIJ/BAIJ.
>>>>
>>>> Is there some special reason for designing it in this way? Or it is
>>>> just a bug? How to improve it? Please advise.
>>>>
>>>> Thanks,
>>>>
>>>> Dahai
>>>>
>>>>
>>>>
>>>>
>>>> ----- Original Message -----
>>>> From: "Barry Smith" <bsmith at mcs.anl.gov>
>>>> To: petsc-maint at mcs.anl.gov, "Dahai Guo" <dhguo at ncsa.uiuc.edu>
>>>> Sent: Thursday, February 11, 2010 9:45:24 PM GMT -06:00 US/Canada
>>>> Central
>>>> Subject: Re: [petsc-maint #40976] convert a matrix from CSR format
>>>> to BCSR format
>>>>
>>>>
>>>>   Dahai,
>>>>
>>>>     You have to switch to a decent email client. Stuff you send is
>>>> never in attachments, it is always crammed into the message as one
>>>> long piece of text.
>>>>
>>>>     I'll try to reproduce the problem tomorrow,
>>>>
>>>>    Barry
>>>>
>>>> On Feb 11, 2010, at 8:01 PM, Dahai Guo wrote:
>>>>
>>>>> tried CSR format, it showed the similar problem as follow.??? I
>>>>> attached the test code and datafile.
>>>>
>>>>
>>>> Barry:
>>>>
>>>> In the function “MatGetFactor” in src/mat/interface/matrix.c, it
>>>> only checks if the matsolver is available for subclass, but NOT
>>>> further check for the AIJ/BAIJ.   I think it is one of the reasons
>>>> that a subclass(e.g. crl ) inherited from AIJ/BAIJ can not inherit
>>>> "MatGetFactor" from AIJ/BAIJ.
>>>>
>>>> Is there some special reason for designing it in this way? Or it is
>>>> just a bug? How to improve it? Please advise.
>>>>
>>>> Thanks,
>>>>
>>>> Dahai
>>>>
>>>>
>>>> ----- Original Message -----
>>>> From: "Barry Smith" <bsmith at mcs.anl.gov>
>>>> To: petsc-maint at mcs.anl.gov, "Dahai Guo" <dhguo at ncsa.uiuc.edu>
>>>> Sent: Thursday, February 11, 2010 9:45:24 PM GMT -06:00 US/Canada
>>>> Central
>>>> Subject: Re: [petsc-maint #40976] convert a matrix from CSR format
>>>> to BCSR format
>>>>
>>>>
>>>>   Dahai,
>>>>
>>>>     You have to switch to a decent email client. Stuff you send is
>>>> never in attachments, it is always crammed into the message as one
>>>> long piece of text.
>>>>
>>>>     I'll try to reproduce the problem tomorrow,
>>>>
>>>>    Barry
>>>>
>>>> On Feb 11, 2010, at 8:01 PM, Dahai Guo wrote:
>>>>
>>>>> tried CSR format, it showed the similar problem as follow.??? I
>>>>> attached the test code and datafile.
>>>>
>>>
>>>
>>>
>>
>>
>>
>




More information about the petsc-dev mailing list