Skip to content

Commit 99850a7

Browse files
committed
Add documentation
1 parent af05245 commit 99850a7

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
@@ -140,6 +140,17 @@ Explanation of the single keys:
140140

141141
* ``type`` supported ADIOS operator type, e.g. zfp, sz
142142
* ``parameters`` is an associative map of string parameters for the operator (e.g. compression levels)
143+
* ``adios2.dataset.shape`` (advanced): Specify the `dataset shape <https://adios2.readthedocs.io/en/v2.10.0/components/components.html#shapes>`_ for the ADIOS2 variable.
144+
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.
145+
This parameter's purpose to select different implementations for the same used API call.
146+
Supported values by this parameter are:
147+
148+
* ``"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.
149+
* ``"local_value"``: Each parallel writer contributes one single value to the dataset, joined into a 1-dimensional array.
150+
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.
151+
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.
152+
Use global or joined arrays otherwise.
153+
143154
* ``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()``.
144155
This API is incompatible with compression operators as described above.
145156
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)