Commit 07c1896c authored by William F Godoy's avatar William F Godoy
Browse files

Adapt heat transfer example to support MemorySelection

Corrected some docs
Switched default engine to BP3
parent bd6af6ad
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -70,11 +70,9 @@ public:
     * contiguous memory pointer passed at Put from which data starts. e.g. if
     * variable.Start() = {rank*Ny,0} and there is 1 ghost cell per dimension,
     * then memoryStart = {1,1}
     *
     * 		memoryCount: local dimensions for the contiguous memory pointer
     * passed at Put, e.g. if there is 1 ghost cell per dimension and
     * variable.Count() = {Ny,Nx}, then memoryCount = {Ny+2,Nx+2}
     *
     * </pre>
     */
    void SetMemorySelection(const adios2::Box<adios2::Dims> &memorySelection);
+1 −1
Original line number Diff line number Diff line
@@ -113,7 +113,7 @@ A particular engine is set within the IO object that creates it with the ``IO::S
+-------------------------+---------+---------------------------------------------+
| Application             | Engine  | Description                                 |
+-------------------------+---------+---------------------------------------------+
| File                    | BPFile  | DEFAULT write/read ADIOS2 native bp files   |
| File                    | BP3     | DEFAULT write/read ADIOS2 native bp files   |
|                         |         |                                             |
|                         | HDF5    | write/read interoperability with HDF5 files |
+-------------------------+---------+---------------------------------------------+
+1 −1
Original line number Diff line number Diff line
@@ -131,7 +131,7 @@ exclude_patterns = [
    'utilities/bpls.rst',
    'engines/dataman.rst',
    'engines/hdf5.rst',
    'engines/bpfile.rst',
    'engines/bp3.rst',
    'engines/sst.rst',
    # 'engines/engines.rst',
    # 'faq/faq.rst',
+12 −8
Original line number Diff line number Diff line
******
BPFile
******
*************
BP3 (Default)
*************

The BPFile Engine writes and reads files in ADIOS2 native binary-pack (bp) format. BP files are backwards compatible with ADIOS1.x and have the following structure given a "name" string passed as the first argument of ``IO::Open``:
The BP3 Engine writes and reads files in ADIOS2 native binary-pack (bp) format. BP files are backwards compatible with ADIOS1.x and have the following structure given a "name" string passed as the first argument of ``IO::Open``:

.. code-block:: c++
   
@@ -24,7 +24,11 @@ will generate:

.. note::
   
   BPFile names are compatible with the Unix (/) and Windows (\\) file system naming convention for directories and files.
   BP3 file names are compatible with the Unix (/) and Windows (\\) file system naming convention for directories and files.
   
.. caution::

   The default BP3 engine will check if the ".bp" is the extension of the first argument of IO::Open and will add ".bp" and ".bp.dir" if not in the name

This engine allows the user to fine tune the buffering operations through the following optional parameters: 

@@ -42,9 +46,9 @@ This engine allows the user to fine tune the buffering operations through the fo

7. **MaxBufferSize**: maximum allowable buffer size (must be larger than 16Kb). If to large adios2 will throw an exception.

8. **FlushStepsCount**: user can select how often to produce the more expensive collective metadata file in terms of steps: default is 1. Increase to reduce adios2 collective operations footprint, with the trade-off of reducing checkpoint frequency. Buffer size will increase until first steps count if MaxBufferSize is not set.
8. **FlushStepsCount**: users can select how often to produce the more expensive collective metadata file in terms of steps: default is 1. Increase to reduce adios2 collective operations footprint, with the trade-off of reducing checkpoint frequency. Buffer size will increase until first steps count if MaxBufferSize is not set.

9. **SubStreams**: (MPI-only) user can select how many sub-streams ("M" sub-files) are produced during a run, ranges between 1 and the number of mpi processes (N), adios2 will internally aggregate data buffers (N-to-M) to output the required number of files. Use for performance tuning.   
9. **SubStreams**: (MPI-only) users can select how many sub-streams ("M" sub-files) are produced during a run, ranges between 1 and the number of mpi processes from MPI_Size (N), adios2 will internally aggregate data buffers (N-to-M) to output the required number of sub-files. If Substream is out of bounds it will pick either 1 (SubStreams < 1 -> N-to-1) or N ((SubStreams > N -> N-to-N) and ADIOS2 will issue a WARNING message. Use for performance tuning.   

==================== ===================== =========================================================
 **Key**              **Value Format**      **Default** and Examples 
@@ -57,7 +61,7 @@ This engine allows the user to fine tune the buffering operations through the fo
 MaxBufferSize        float+units >= 16Kb   **at EndStep**, 10Mb, 0.5Gb   
 BufferGrowthFactor   float > 1             **1.05**, 1.01, 1.5, 2 
 FlushStepsCount      integer > 1           **1**, 5, 1000, 50000
 SubStreams           integer >= 1          **MPI_Size**, ... MPI_Size/2, ... , 2, 1  
 SubStreams           integer >= 1          **MPI_Size (N-to-N)**, MPI_Size/2, ... , 2, (N-to-1) 1  
==================== ===================== =========================================================


+1 −1
Original line number Diff line number Diff line
@@ -16,7 +16,7 @@ Parameters are passed at:

3. :ref:`Runtime Configuration Files` in the :ref:`ADIOS` component.  

.. include:: bpfile.rst
.. include:: bp3.rst
.. include:: hdf5.rst
.. include:: dataman.rst
.. include:: sst.rst
Loading