Skip to content

Add CI, update modhdf5, test runner and docs#3

Merged
AlynJ merged 7 commits intomainfrom
develop
Dec 31, 2025
Merged

Add CI, update modhdf5, test runner and docs#3
AlynJ merged 7 commits intomainfrom
develop

Conversation

@AlynJ
Copy link
Copy Markdown
Owner

@AlynJ AlynJ commented Dec 31, 2025

Merge develop commits b37caff to 62d3f2e into main branch

AlynJ and others added 7 commits December 23, 2025 16:59
…es as local variables within the subroutines. Made the group ids correspond to their file (index).
…re specific variables on the variables from the mpi module. Added more explicit free-form in gfotran compiler flags.
…re within the mpi preprocessor macro which is enabled through the compilation stage. Therefore another test runner (h5testrunner_mpi) is compiled through the CMakeLists.txt to test mpi functionality. This allows the testing for serial and parallel (mpi) hdf5 APIs. Updated the modhdf5 module to enable independent IO when mpi macros are enabled.
…ad the dxpl within the h5_ids_t type. This bundles the hypersplice/hyperslab mpi dxpl_ids to the corresponding hyper id index (reducing complexity). The non-hyper datasets will use the mpi independent dxpl_id generated within the readHDF5/writeHDF5 arrays. This removes the need of the dxpl_index. The h5_ids_t variables are initialised to -1 to make it easier to close and reset the hypersplice id entries. Also, extracted whether the file is using mpi mode which is then used when setting the the dxpl id. Added a test using openmp parallelisation for the hypersplices. Updated the hypersplice/hyperslab subroutines to open the hypersplice dataset for reading instead of opening the dataset each time the hypersplice array is read. Also moved the configuration of the hypersplice/hyperslab dims and offset into a separate subroutine. Tidied the init/open/read/write subroutines so that all the variable configuration is done and then the h5 subroutines are called. Updated the tests with respect to these modifications. Lastly, the writing to terminal calls and test assertions are now done only on the rank 0 mpi processor (for clarity - mpi tests still use multiple processors when specified).
* Initial CI jobs

* Initial CI jobs

* Initial CI jobs

* Initial CI jobs
Add ifx intel compilers to CI (and update CMakeLists.txt), make read/write subroutines in modhdf5 compatible with the intel compilers to avoid IntelLLVM’s restriction on polymorphic assumed-rank dummies + optional arguments. Also adjusted the .inc files and added new ones to be used directly in the readHDF5*/writeHDF5* subroutines. Add further documentation to README.md and comments on the subroutines' dummy inputs and outputs (and some minor docstrings). Tidy variables used in subroutines. Reorder subroutines in modhdf5. Added version global variable to module
@AlynJ AlynJ merged commit 16614b9 into main Dec 31, 2025
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant