H5CPP: low latency MPI capable persistence for Modern C++ and HDF5

77 views
Skip to first unread message
Assigned to kraft...@gmail.com by me

Steven Varga

unread,
Jun 23, 2019, 9:35:10 PM6/23/19
to Caffe Users
Greetings,

I would like to introduce H5CPP an easy to use persistence framework for modern C++, supporting popular linear algebra systems such as Armadillo, Eigen3, Blaze, Blitz and many more, as well as raw pointers,  arbitrary POD types and std::vector-s.
When used with the provided LLVM based reflection tool: the h5cpp compiler, it provides similar level reflection/persistence as used in other popular languages such as Java, Python, ... but at the speed/throughput of C++. The generated header code has no dependency, may be compiled with arbitrary C++14 compiler. 

Header only CRUD like operators work with serial or parallel version of HDF5 allowing you to use MPIIO | POSIX IO | KITA (amazon S3) IO with the same tuned IO calls. It's custom built h5::append packet table implementation is more than 300X faster than of HDF5 CAPI HL implementation -- near bare metal speed --, based on the most recent direct chunk IO calls.  

The MIT licensed project has been introduced last year in Chicago C++ users Group, this year in an HDFGroup organised webinar and ISC'19 BOF, and maybe downloaded from my github page. This presentation gives a brief overview, and highlighted examples help you with start.  Both RPM and DEB packages are provided for easy install. 

best wishes:
steven

Reply all
Reply to author
Forward
0 new messages