Skip to content

Commit

Permalink
Merge pull request #2759 from eisenhauer/comment
Browse files Browse the repository at this point in the history
Update format comment, add note about endian support
  • Loading branch information
eisenhauer authored Jun 9, 2021
2 parents c678e3a + 7f74a08 commit 1b16bdd
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 6 deletions.
14 changes: 8 additions & 6 deletions source/adios2/engine/bp5/BP5Engine.h
Original file line number Diff line number Diff line change
Expand Up @@ -129,12 +129,14 @@ class BP5Engine
*number of different "formats" written by any rank.
*
*
* MetaData file (md.0) contains encoded metadata for each timestep, for each
*rank BP5 header for "Metadata" (64 bytes) for each timestep: uint64_t
*TotalSize of this metadata block (including this length) uint64_t[WriterCount]
*Length of each writer rank's metadata for each rank FFS-encoded metadata block
*of length corresponding to entry above
*
* MetaData file (md.0) contains encoded metadata/attribute data
* BP5 header for "Metadata" (64 bytes)
* for each timestep:
* uint64_t : TotalSize of this metadata block
* uint64_t[WriterCount] : Length of each rank's metadata
* uint64_t[WriterCount] : Length of each rank's attribute
* FFS-encoded metadata block of the length above
* FFS-encoded attribute data block of the length above
*
* Data file (data.x) contains a block of data for each timestep, for each
*rank
Expand Down
14 changes: 14 additions & 0 deletions source/adios2/toolkit/format/bp5/BP5Deserializer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -798,6 +798,20 @@ static int FindOffsetCM(size_t Dims, const size_t *Size, const size_t *Index)
* - InData is the input, a slab of the global array
* - OutData is the output, to be filled with the selection array.
*/

/*
* *******************************
*
* ExtractSelectionFromPartial*M both need to be extended to work when
* the reader and writer have different byte orders. This involves at
* least supporting simple big/little-endian byte reversal, but a true
* archival format should also consider mixed and middle-endian
* hybrids. This would require changes to the BP5 header so that the
* appropriate transformations could be determined.
*
* *******************************
*/

// Row major version
void BP5Deserializer::ExtractSelectionFromPartialRM(
int ElementSize, size_t Dims, const size_t *GlobalDims,
Expand Down

0 comments on commit 1b16bdd

Please sign in to comment.