- Nov 30, 2022
-
-
Sergey Lesnik authored
- Introduce OFCstream derived from OFstream - OFCstream is created in GeometricField and enables tracking which List will be written next - Back-up for currently not supported Lists: write with full id containing processor directory name - Derive sliceMesh from MeshObject in order to put the former into the objectRegistry, thus, keeping it at run and enabling access via the registry
-
- Nov 17, 2022
-
-
Sergey Lesnik authored
- Reason: the former depends on the latter
-
- Oct 11, 2022
-
-
Gregor Weiss authored
-
Gregor Weiss authored
-
- Oct 10, 2022
-
-
Sergey Lesnik authored
-
- Oct 07, 2022
-
-
Sergey Lesnik authored
-
Gregor Weiss authored
-
- Oct 04, 2022
-
-
Sergey Lesnik authored
- Lists for linear and tree communications were allocated at start-up, each of those is n^2 large where n is number of MPI ranks. This behavior leeded to job failure due to insufficient memory for large jobs. - Only size the lists to n at the start-up. Do not allocate the memory for the list entries. Evaluate a communication list entry of type commsStruct on the fly when accessed via operator[] of the UList.
-
- Aug 09, 2022
-
-
Gregor Weiss authored
-
- Jul 12, 2022
-
-
Gregor Weiss authored
-
- Jul 11, 2022
-
-
Gregor Weiss authored
Writing parallel mesh (via renumbering the mesh by new cell numbering, using sliceMesh and writing paritionStarts) from decomposePar. (Use with flag -mesh)
-
- Jul 07, 2022
-
-
Gregor Weiss authored
(BROKEN PARALLEL IO AND RESTARTS) Writing points in vector format and removing redundant move semantics.
-
Gregor Weiss authored
(BROKEN PARALLEL IO AND RESTARTS) Starting new format (TODO siceable fields) and refactoring of adios instantiation through abstract factory.
-
- May 19, 2022
-
-
Gregor Weiss authored
First implementation of sliceMesh conversion and initial encapsulation of ADIOS2 dependencies for writing.
-
- Mar 15, 2022
-
-
Gregor Weiss authored
-
- Feb 01, 2022
-
-
Gregor Weiss authored
- adds icoFoamTar - installation of tar modules requires local manual third party installation (see applications/tarmodules/startTarCase/thirdParty/myreadme) - usage of tar modules is described in applications/tarmodules/README - example controlDict for tar modules in applications/tarmodules/tarSystemCall/controlDict - to use ADIOS2 IO in decomposePar it has to be performed twice 1) decomposePar -mesh 2) decomposePar -fields - uncollated ascii, binary, and parallel IO mode can all be started from polyMesh.bp and data.bp (Processor folders are still created during decomposition to enable uncollated IO modes.)
-
- Jan 28, 2022
-
-
Sergey Lesnik authored
- ADIOS restricts the string size (64kB?) and thus e.g. faces could not be written - Switch from std::string to char arrays - Reading with bpls is still possible with -S flag, e.g.: bpls -Sd constant/polyMesh.bp constant/polyMesh/faces
-
- Jan 24, 2022
-
-
Sergey Lesnik authored
- ADIOS Mesh data is written and read to/from "constant/polyMesh.bp" - When reading such functions such headerOkPar, findInstance or parStreamPar check first whether data.bp or polyMesh.bp are present
-
- Jan 19, 2022
-
-
Sergey Lesnik authored
- Exclude some solvers and schemes not needed for basic runs
-
- Jan 18, 2022
-
-
Sergey Lesnik authored
- Add a functionality to UListIO for writing non-contiguous data in order to handle faces (list of lists) - UListIO uses a OStringStream to buffer list of lists and OFStream puts it as a string into the .bp file at destruction - Make a typedef parIOType for the ADIOS data type which are not strings. Now it can be changed (e.g. from char to double) at one place in IOStream.H
-
- Jan 14, 2022
-
-
Sergey Lesnik authored
- added libraries blockMesh relies on: - src/ODE excluding sixDOF - src/dynamicMesh/dynamicMesh - src/mesh/blockMesh
-
- Jan 07, 2022
-
-
Sergey Lesnik authored
- Hack BeginStep/EndStep into regIOobject using static member functions. Allows to Put variables in Deffered Mode. - Somewhat ugly solution, but enables proper benchmarking. - Since Mode::Append has a bug (no aggregation possible) on ADIOS side, the default mode for writing is set to Mode::Write.
-
Sergey Lesnik authored
-
- Jan 03, 2022
-
-
Sergey Lesnik authored
- Check if data.bp is present. If yes, read from it. If not, fall back to standard IO.
-
Sergey Lesnik authored
-
Sergey Lesnik authored
-
- Dec 28, 2021
-
-
Sergey Lesnik authored
- The only working variant for write is BeginStep() and EndStep() in Mode::Append. Other variants of writing have issues, see commentary in adiosWrite.C - Save only double arrays => all adios templates are instantiated with double* instead of char*. - Refactor adios classes. Pull adios write and read functionality out of adiosCore into seprate classes. Clean up.
-
- Dec 10, 2021
-
-
Sergey Lesnik authored
Example of a subdict in controlDict: DebugSwitches { dictionary 2; IOobject 1; time 1; DebugIOList 1; DebugIOField 1; volScalarField 1; volVectorField 1; OFstream 1; ISstream 2; IFstream 1; } Note that some of the switches have several level of verbosity, i.e. much more ouput if set to 2.
-
- Dec 06, 2021
-
-
Sergey Lesnik authored
-
- Nov 27, 2021
-
-
Gregor Weiss authored
-
- Nov 26, 2021
-
-
gregorweiss authored
-
- Nov 22, 2021
-
-
Gregor Weiss authored
Required to have multiple writes without overwriting. Plus, new placement of ADIOS2 file in case folder.
-
- Nov 16, 2021
-
-
Gregor Weiss authored
-
- Nov 11, 2021
-
-
Gregor Weiss authored
Replaces previous data split.
-
- Nov 10, 2021
-
-
Sergey Lesnik authored
-
Sergey Lesnik authored
- The id consists now of the relative path to the file and the keyword / block name. - Every keyword given to an OFstream object lands in the LIFO stack. This means that the internalField id is available when needed. - The stack is poped if a token::END_STATEMENT is seen by the OFstream object.
-
- Nov 09, 2021
-
-
Gregor Weiss authored
Usage: - Set environment with WM_THIRD_PARTY_ADIOS2_271=1 (see also etc/bashrc) - Compile with Allwmake.firstInstall The minimal example of an ADIOS2 interface in foam/db/IOstreams/A2streams illustrates linking against the extended ThirdParty.
-
- Nov 04, 2021
-
-
Sergey Lesnik authored
- Transfer the block name from UListIO to OFsteam if indent is incremented and keep it in a LIFO stack. - Pop LIFO stack if indent is decremented. - Get the identifier from OFstream via getBlockId().
-
- Nov 02, 2021
-
-
Sergey Lesnik authored
To turn on debug output put a DebugSwitch dict into controlDict, e.g.: DebugSwitches { OFstream 0; IOobject 0; regIOobject 0; objectRegistry 0; time 0; DebugIOUList 1; DebugIODimensionedField 0; DebugIOField 0; Ostream 2; OSstream 1; } Note that the switches may have a value higher than 1 to allow more output.
-
Sergey Lesnik authored
-