Skip to content

Commit e0daef4

Browse files
committed
Add documentation
1 parent 972eeb6 commit e0daef4

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

docs/source/details/backendconfig.rst

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,17 @@ Explanation of the single keys:
136136

137137
* ``type`` supported ADIOS operator type, e.g. zfp, sz
138138
* ``parameters`` is an associative map of string parameters for the operator (e.g. compression levels)
139+
* ``adios2.dataset.shape`` (advanced): Specify the `dataset shape <https://adios2.readthedocs.io/en/v2.10.0/components/components.html#shapes>`_ for the ADIOS2 variable.
140+
Note that variable shapes will generally imply a different way of interacting with a variable, and some variable shapes (such as *joined arrays*) may not be accessible via this parameter, but via different API calls instead.
141+
This parameter's purpose to select different implementations for the same used API call.
142+
Supported values by this parameter are:
143+
144+
* ``"global_array"`` (default): The variable is a (n-dimensional) array with a globally defined size. Local blocks, subsets of the global region, are written by parallel writers.
145+
* ``"local_value"``: Each parallel writer contributes one single value to the dataset, joined into a 1-dimensional array.
146+
Since there (currently) exists no dedicated API call for this shape in the openPMD-api, this setting is only useful as an optimization since "local value" variables participate in ADIOS2 metadata aggregation.
147+
Can only be applied if the global shape (1-dimensional array the same length as number of parallel instances) and the local blocks (a single data item) are specified correctly.
148+
Use global or joined arrays otherwise.
149+
139150
* ``adios2.use_span_based_put``: The openPMD-api exposes the `span-based Put() API <https://adios2.readthedocs.io/en/latest/components/components.html#put-modes-and-memory-contracts>`_ of ADIOS2 via an overload of ``RecordComponent::storeChunk()``.
140151
This API is incompatible with compression operators as described above.
141152
The openPMD-api will automatically use a fallback implementation for the span-based Put() API if any operator is added to a dataset.

0 commit comments

Comments
 (0)