diff --git a/docs/user_guide/source/index.rst b/docs/user_guide/source/index.rst index 7882653023..a18698fbda 100644 --- a/docs/user_guide/source/index.rst +++ b/docs/user_guide/source/index.rst @@ -27,6 +27,7 @@ Funded by the `Exascale Computing Project (ECP) ("r32", shape, start, count); + var_r32.AddOperation(ZFPOp, {{adios2::ops::zfp::key::rate, rate}}); + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +ZFPCompressor Specific parameters +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The ``ZFPCompressor`` operator accepts the following operator specific +parameters: + ++-------------------+---------------------------------------------+ +| ``ZFPCompressor`` available parameters | ++===================+=============================================+ +| ``accuracy`` | Fixed absolute error tolerance | ++-------------------+---------------------------------------------+ +| ``rate`` | Fixed number of bits in a compression unit | ++-------------------+---------------------------------------------+ +| ``precision`` | Fixed number of uncompressed bits per value | ++-------------------+---------------------------------------------+ +| ``backend`` | Backend device: ``cuda`` ``omp`` ``serial`` | ++-------------------+---------------------------------------------+ + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +ZFPCompressor Execution Policy +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +``ZFPCompressor`` can run in multiple backend devices: GPUs (CUDA), OpenMP, and +in the host CPU. By default ``ZFPCompressor`` will choose its backend following +the above order upon the availability of the device adapter. + +Exceptionally, if its corresponding ADIOS2 variable contains a CUDA memory +address, this is a CUDA buffer, the CUDA backend will be called if available. + +In any case, the user can manually set the backend using the ZFPOperator +specific parameter ``backend``. diff --git a/docs/user_guide/source/operators/operators.rst b/docs/user_guide/source/operators/operators.rst new file mode 100644 index 0000000000..70e659b8c0 --- /dev/null +++ b/docs/user_guide/source/operators/operators.rst @@ -0,0 +1,27 @@ +################### +Supported Operators +################### + +The Operator abstraction allows ADIOS2 to act upon the user application data, +either from a ``adios2::Variable`` or a set of Variables in an ``adios2::IO`` +object. Current supported operations are: + +1. Data compression/decompression, lossy and lossless. +2. Callback functions (C++11 bindings only) supported by specific engines + +This section provides a description of the :ref:`Available Operators` in ADIOS2 +and their specific parameters to allow extra-control from the user. Parameters +are passed in key-value pairs for: + +1. Operator general supported parameters. + +2. Operator specific supported parameters. + +Parameters are passed at: + +1. Compile time: using the second parameter of the method + ``ADIOS2::DefineOperator`` + +2. :ref:`Runtime Configuration Files` in the :ref:`ADIOS` component. + +.. include:: ZFPCompressor.rst