[petsc-dev] Problem with VecLoad and .info files

Barry Smith bsmith at mcs.anl.gov
Sun Jun 10 12:33:30 CDT 2012


On Jun 10, 2012, at 9:15 AM, Blaise Bourdin wrote:

> 
> On Jun 10, 2012, at 9:06 AM, Jed Brown wrote:
> 
>> Can you set a different prefix for each vector? (I'm surprised that more people don't run into this problem of incompatibility, but don't know an easy generic way to fix the problem.)

   Setting prefixes before calling VecLoad() is the intended solution.

  
>> 
>> $ cat vector.dat.info 
>> -vecload_block_size 1
>> -vecload_block_size 3
> 
> Very good point. That fixes the problem. and for existing files, I can always delete the .info file. I need to switch to the built-in binary vtk viewer anyway...
> Blaise
> 
> 
> 
>> 
>> On Sun, Jun 10, 2012 at 8:37 AM, Blaise Bourdin <bourdin at lsu.edu> wrote:
>> Hi,
>> 
>> I think I found another bug related to Vec blocksize...
>> 
>> It looks like loading vectors with different block sizes from a binary fine is broken in petsc-3.3:
>> try the attached example:
>> 
>> iMac:Misc blaise$ ./TestVecLoad-dev -ndofU 1 -ndofV 3  -nx 2 -ny 2 -mode 0
>> Vector Object:UVec 1 MPI processes
>>  type: mpi
>> Process [0]
>> 0
>> 10
>> 1
>> 11
>> Vector Object:VVec 1 MPI processes
>>  type: mpi
>> Process [0]
>> 0
>> -100
>> -200
>> -10
>> -110
>> -210
>> -1
>> -101
>> -201
>> -11
>> -111
>> -211
>> Writing vectors to file
>> iMac:Misc blaise$ ./TestVecLoad-dev -ndofU 1 -ndofV 3  -nx 2 -ny 2 -mode 1
>> Reading vectors from file
>> Processor [0] M 2 N 2 m 1 n 1 w 1 s 1
>> X range of indices: 0 2, Y range of indices: 0 2
>> Processor [0] M 2 N 2 m 1 n 1 w 3 s 1
>> X range of indices: 0 2, Y range of indices: 0 2
>> [0]PETSC ERROR: --------------------- Error Message ------------------------------------
>> [0]PETSC ERROR: Arguments are incompatible!
>> [0]PETSC ERROR: Local size 4 not compatible with block size 3!
>> [0]PETSC ERROR: ------------------------------------------------------------------------
>> [0]PETSC ERROR: Petsc Release Version 3.3.0, Patch 0, unknown
>> [0]PETSC ERROR: See docs/changes/index.html for recent updates.
>> [0]PETSC ERROR: See docs/faq.html for hints about trouble shooting.
>> [0]PETSC ERROR: See docs/index.html for manual pages.
>> [0]PETSC ERROR: ------------------------------------------------------------------------
>> [0]PETSC ERROR: ./TestVecLoad-dev on a Darwin-gc named iMac.local by blaise Sun Jun 10 08:35:07 2012
>> [0]PETSC ERROR: Libraries linked from /opt/HPC/petsc-3.3/Darwin-gcc4.2-g/lib
>> [0]PETSC ERROR: Configure run at Fri Jun  8 22:01:00 2012
>> [0]PETSC ERROR: Configure options CFLAGS=-Wno-unused --download-hdf5=1 --download-metis=1 --download-parmetis=1 --download-sowing=1 --download-triangle=1 --with-cmake=cmake --with-debugging=1 --with-gnu-compilers=1 --with-mpi-dir=/opt/HPC/mpich2-1.4.1p1-gcc4.2 --with-pic --with-shared-libraries=1 --with-x11=1
>> [0]PETSC ERROR: ------------------------------------------------------------------------
>> [0]PETSC ERROR: PetscLayoutSetBlockSize() line 459 in /opt/HPC/petsc-3.3/src/vec/vec/impls/mpi/pmap.c
>> [0]PETSC ERROR: VecSetBlockSize() line 1526 in /opt/HPC/petsc-3.3/src/vec/vec/interface/vector.c
>> [0]PETSC ERROR: VecLoad_Binary() line 104 in /opt/HPC/petsc-3.3/src/vec/vec/utils/vecio.c
>> [0]PETSC ERROR: VecLoad_Default() line 348 in /opt/HPC/petsc-3.3/src/vec/vec/utils/vecio.c
>> [0]PETSC ERROR: VecLoad() line 1111 in /opt/HPC/petsc-3.3/src/vec/vec/interface/vector.c
>> [0]PETSC ERROR: main() line 86 in TestVecLoad-dev.c
>> application called MPI_Abort(MPI_COMM_WORLD, 75) - process 0
>> [unset]: aborting job:
>> application called MPI_Abort(MPI_COMM_WORLD, 75) - process 0
>> 
>> but if one destroys the vector.dat.info file, everything seems fine:
>> 
>> iMac:Misc blaise$ ./TestVecLoad-dev -ndofU 1 -ndofV 3  -nx 2 -ny 2 -mode 0
>> Vector Object:UVec 1 MPI processes
>>  type: mpi
>> Process [0]
>> 0
>> 10
>> 1
>> 11
>> Vector Object:VVec 1 MPI processes
>>  type: mpi
>> Process [0]
>> 0
>> -100
>> -200
>> -10
>> -110
>> -210
>> -1
>> -101
>> -201
>> -11
>> -111
>> -211
>> Writing vectors to file
>> iMac:Misc blaise$ rm vector.dat.info
>> iMac:Misc blaise$ ./TestVecLoad-dev -ndofU 1 -ndofV 3  -nx 2 -ny 2 -mode 1
>> Reading vectors from file
>> Processor [0] M 2 N 2 m 1 n 1 w 1 s 1
>> X range of indices: 0 2, Y range of indices: 0 2
>> Processor [0] M 2 N 2 m 1 n 1 w 3 s 1
>> X range of indices: 0 2, Y range of indices: 0 2
>> Vector Object:UVec 1 MPI processes
>>  type: seq
>> 0
>> 10
>> 1
>> 11
>> Vector Object:VVec 1 MPI processes
>>  type: seq
>> 0
>> -100
>> -200
>> -10
>> -110
>> -210
>> -1
>> -101
>> -201
>> -11
>> -111
>> -211
>> 
>> Blaise
>> 
>> 
>> 
>> --
>> Department of Mathematics and Center for Computation & Technology
>> Louisiana State University, Baton Rouge, LA 70803, USA
>> Tel. +1 (225) 578 1612, Fax  +1 (225) 578 4276 http://www.math.lsu.edu/~bourdin
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
> 
> -- 
> Department of Mathematics and Center for Computation & Technology
> Louisiana State University, Baton Rouge, LA 70803, USA
> Tel. +1 (225) 578 1612, Fax  +1 (225) 578 4276 http://www.math.lsu.edu/~bourdin
> 
> 
> 
> 
> 
> 
> 




More information about the petsc-dev mailing list