[petsc-users] VecLoad hdf5

Smith, Barry F. bsmith at mcs.anl.gov
Tue Dec 4 16:42:43 CST 2018



> On Dec 4, 2018, at 4:09 PM, Josh L <ysjosh.lo at gmail.com> wrote:
> 
> I haven't figured out what causes it. I just use binaryopen instead of HDF5, and everything works fine.

   Did you originally save the data into the file with HDF5 format?
> 
> 
> 
> Josh L <ysjosh.lo at gmail.com> 於 2018年12月4日 週二 下午2:55寫道:
> The first error comes from
> PetscStackCallHDF5Return(group,H5Gcreate2,(file_id, groupName, 0, H5P_DEFAULT, H5P_DEFAULT));
>  #000: H5G.c line 314 in H5Gcreate2(): unable to create group
>     major: Symbol table
>     minor: Unable to initialize object
> 
> 
> Josh L <ysjosh.lo at gmail.com> 於 2018年12月4日 週二 下午2:38寫道:
> I set the name of 2 vectors to be the same, but still get the same error.
> 
> 
> 
> Josh L <ysjosh.lo at gmail.com> 於 2018年12月4日 週二 下午2:06寫道:
> I just found out that I missed that note in VecLoad manual page, and I am trying it now.
> Thanks.
> 
> 
> 
> Smith, Barry F. <bsmith at mcs.anl.gov> 於 2018年12月4日 週二 下午2:00寫道:
> 
>    Hmm, this is a guess. HDF5 files read in objects based on their names. Are you sure that the vector you saved and the vector you later try to read in have the same name? You can set the name of the loaded vector with PetscObjectSetName((PetscObject)nv,"name") after you create it to match the name you used to save the vector.
> 
>    Barry
> 
> 
> > On Dec 4, 2018, at 1:42 PM, Josh L via petsc-users <petsc-users at mcs.anl.gov> wrote:
> > 
> > Hi,
> > 
> > I have a vec.h5 that generated serially by
> >   gv is a sequential vec
> >  VecSetblockSize(gv,3)
> >  PetscViewerHDF5Open(vec,h5,write)
> >   VecView(gv)
> > 
> > and I want to read in with different number of processor by 
> >   DMGetGlobalVector(dm,nv)
> >   PetscViewerHDF5Open(write)
> >   VecLoad(nv)
> > 
> > nv has bs=3, and I have set bs for gv as 3.
> > 
> > I get the following error. any hint to solve it ? thanks
> > 
> > Error in HDF5 call H5Gcreate2() Status -1
> >   #000: H5G.c line 314 in H5Gcreate2(): unable to create group
> >     major: Symbol table
> >     minor: Unable to initialize object
> >   #001: H5Gint.c line 194 in H5G__create_named(): unable to create and link to group
> >     major: Symbol table
> >     minor: Unable to initialize object
> >   #002: H5L.c line 1638 in H5L_link_object(): unable to create new link to object
> >     major: Links
> >     minor: Unable to initialize object
> >   #003: H5L.c line 1882 in H5L_create_real(): can't insert link
> >     major: Symbol table
> >     minor: Unable to insert object
> >   #004: H5Gtraverse.c line 861 in H5G_traverse(): internal path traversal failed
> >     major: Symbol table
> >     minor: Object not found
> >   #005: H5Gtraverse.c line 641 in H5G_traverse_real(): traversal operator failed
> >     major: Symbol table
> >     minor: Callback failed
> >   #006: H5L.c line 1685 in H5L_link_cb(): unable to create object
> >     major: Object header
> >     minor: Unable to initialize object
> >   #007: H5O.c line 3016 in H5O_obj_create(): unable to open object
> >     major: Object header
> >     minor: Can't open object
> >   #008: H5Goh.c line 268 in H5O_group_create(): unable to create group
> >     major: Symbol table
> >     minor: Unable to initialize object
> >   #009: H5Gint.c line 245 in H5G__create(): unable to create group object header
> >     major: Symbol table
> >     minor: Unable to initialize object
> >   #010: H5Gobj.c line 163 in H5G__obj_create(): unable to create group
> >     major: Symbol table
> >     minor: Unable to create file
> >   #011: H5Gobj.c line 206 in H5G__obj_create_real(): no write intent on file
> >     major: Object cache
> >     minor: Bad value
> > 
> > 
> > 
> 



More information about the petsc-users mailing list