-
Notifications
You must be signed in to change notification settings - Fork 126
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Integrate groupless #8
Merged
chuckatkins
merged 216 commits into
ornladios:master
from
chuckatkins:integrate-groupless
Mar 29, 2017
Merged
Integrate groupless #8
chuckatkins
merged 216 commits into
ornladios:master
from
chuckatkins:integrate-groupless
Mar 29, 2017
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
1. CADIOS parent class 2. Heat Transfer test case
1) Doxygen file 2) Coding Guidelines document
2) Added more info to CodingGuidelines 3) Added SMetadata.h file
To do: 1) Test Makefile with and without MPI
targets mpi and nompi Used ./example/hello to test libraries Updated README.md and ./examples/hello/README
To do: Formulate Transport and Transform classes
Reading XML file to populate Group structs
Reached the part in which XML tag fields and values are extracted. To do: Populate m_Groups from these fields and values.
functions needed by ADIOS.h. In the future will reduce compilation times. Implemented m_Globals population. Switched unique_ptr to shared_ptr to allow for copyable classes in empty SGlobal in m_Globals map value.
in this class. 2. Added functions in CGroup and CADIOS that can be called from the XML and non-XML APIs. User only interacts with CADIOS public functions. 3. Modified Makefile to test helloADIOS_nompi. 4. Tested population of Group and Variable classes from XML file To do: 1) Wrap setting transport 2) Test hello adios mpi
Warning: Makefile only compiling for all, not nompi or mpi
Changed Monitor function in ADIOS and Group so it can take an ostream Edited Makefile to allow nompi and full libraries Edited ./doc/Doxyfile to include more graphs
Added Transform Classes headers, need to implement Need to modify Makefile to account for transform directories under /include and /src
1) Eliminated MPI and NonMPI separate functions and Transports 2) All Transport classes extend CTransport 3) Using mpidummy.h header for non-mpi compilation. Will need to include it in the adios namespace (currently C) To do: Makefile Hello all Transports BP File
Changed Doxyfile to print inclusion diagrams Reorganized code to allow mpidummy.h inclusion replacing mpi.h for single source object.
transform classes (e.g. NetCDF4, PHDF5, BZIP2, etc.) Added debug mode member variable in ADIOS, CGroup classes for additional checking, expect slower code.
Changed ./public/mpidummy.c to ./public/mpidummy.cpp Corrected a bug in ADIOSFunctions.cpp InitXML function, string xmlFileContent was created twice Need to test the XML parser: ADIOSFunctions.cpp GetSubtring function to support > in tag attributes, e.g. name="<myname>" >
Added ./examples/hello/helloFStream.cpp and Modified Makefile to test Hello in ADIOS Write function Added more context in ./doc/CodingGuildelines and README files Changed definition of Variable and VariableTemplate to always allow a void* type. Might be a better way? To do: Test void* to int* or double* conversion Test check for "<>" in XML Config file
Resolve Conflixt doc/Doxyfile
Must use polymorphism of the CVariable class with Get and Set? Union should be avoided as it doesn't preserve actual memory size of variable type (always returns the largest).
Added: m_HostLanguage as const reference (need to use move constructor, not copy when inserting to map). Modified: m_Attributes is now a map Testing VariableTemplate Get and Set Worked with int* and std::vector<int> (not need to pass a size with vector) To do: Add variable Support for CGroup::SetVariable function Add SSupport Datatypes as a function of host language. Test "vector<int>" < > in XML Config file
Changes in CVariable and CVariableTemplate: Replace CVariable with CVariableBase Replace CVariableTemplate<> (it's obvious) with CVariable<> Added file functions/GroupFunctions.cpp for helper functions to decongest CGroup, especially those related to variable and transport selections from lookup table structs (see SSupport.h). Added exception to "using" in doc/CodingGuidelines Switched all shared_ptr in CGroup members to the more restrictive unique_ptr To-do: Modify CGroup and SetMembers in ADIOSFunctions so groupName is identified before CGroup. This will allow an emplace on m_Groups map for unique_ptr.
Decongest CGroup for Variable creation and value setting Partial testing and debug of XML read implementation to allow "< >" in names. Required to allow STL containers as types (e.g. "vector<double>"). Back to std::shared_ptr in CGroup members. std::make_pair calls the copy constructor by default. Will keep track of std::shared_ptr counts. Added more checks for debug version to guarantee exceptions. To do: Add and test more types. Add Capsule class and support.
… mpi dummy collision prevents building examples in nompi mode.
Need to verify metadata footer
Single variable example works. Moving on to time aggregation example.
Will merge into groupless branch
Resolved conflicts. See examples under examples/hello/: bpWriter (single variables writes) timeBP (time aggregation) datamanWriter ( needs external DataMan, libzmq, must in (DY)LD_LIBRARY_PATH ). See README.md and Makefile.libs under ADIOSPP.
@williamfgc @pnorbert This should give you a preview of what we'll be looking at. I've still got to add examples, address formatting issues, and integrate the DataMan and ZMQ find modules. |
pnorbert
added a commit
to pnorbert/ADIOS2
that referenced
this pull request
Jun 6, 2017
* Added examples for variables * fix more example code * make Open explicit in ADIOS1 toolkit. Fix handling open mode * fix OpenModeToString() to serve adios 1 API's needs as well * fix basic examples after code refactoring * fix nompi build for basic examples * fix nompi build
JasonRuonanWang
added a commit
that referenced
this pull request
Feb 1, 2018
Implemented new function to reset metadata in BP3Deserializer
JieyangChen7
pushed a commit
to JieyangChen7/ADIOS2
that referenced
this pull request
Feb 20, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Initial migration of https://github.com/williamfgc/adiospp
Not ready for merging yet