[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:59:25 CST 2010


    We could make --with-mpi=0 an alias for --download-mpiuni

    Barry

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

> For one - the interface most users are looking for is
> --with-sequential - or --without-mpi - which '-with-mpi=0'
> represents.. They don't know are care about mpiuni [so download-mpiuni
> is not really better]
>
> Also mpiuni is not distributed or built separately from petsc
> sources/makefiles - and is akin to --with-sieve=1
>
> Blas/lapack is not optional - hence no --with-blas-lapack=0 support.
>
> Satish
>
> On Tue, 16 Feb 2010, Barry Smith wrote:
>
>>
>>   --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