Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 3 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (6.9%) to scientific vocabulary
Repository
Extract various constants from MPI libraries
Basic Info
- Host: GitHub
- Owner: eschnett
- License: mit
- Language: C
- Default Branch: main
- Size: 29.3 KB
Statistics
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
- Releases: 10
Metadata Files
README.md
MPIconstants
Extract compile-time and load-time constants from and MPI library. This is useful for libraries or applications that are not written in C, C++, or Fortran, and want to link against an MPI library as a binary dependency.
For the compile-time constants (e.g. MPI_VERSION), an executable
generate_compile_time_mpi_constants is created that outputs their
definitions.
For the load-time constants (e.g. MPI_COMM_WORLD), a shared library
libload_time_mpi_constants.so is created that defines global
variables holding the respective values.
Example output from generate_compile_time_mpi_constants:
Julia
const MPI_VERSION_ = Cint(3)
const MPI_SUBVERSION_ = Cint(1)
(This output is actually Julia code.)
Example definition in libload_time_mpi_constants.so:
C
const MPI_Comm MPICONSTANTS_COMM_NULL;
const MPI_Comm MPICONSTANTS_COMM_SELF;
const MPI_Comm MPICONSTANTS_COMM_WORLD;
This shared library can be loaded via dlopen, and the constants
MPICONSTANTS_COMM_NULL etc. can be read to determine the respective
values.
Thinking about new names
Should we rename things to sound more uniform? Maybe:
- Project:
getmpiabi - Executable:
getmpiabi1 - Shared library:
getmpiabi2
Using cmake to build this library
sh
rm -rf build $HOME/src/c/MPIstuff/mpiconstants-openmpi
cmake -S . -B build -G Ninja -DMPIEXEC_EXECUTABLE=$(which mpiexec-openmpi-gcc11) -DCMAKE_C_COMPILER=mpicc-openmpi-gcc11 -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=$HOME/src/c/MPIstuff/mpiconstants-openmpi
cmake --build build
cmake --install build
Owner
- Name: Erik Schnetter
- Login: eschnett
- Kind: user
- Location: Waterloo, Ontario, Canada
- Company: Perimeter Institute for Theoretical Physics
- Website: http://www.perimeterinstitute.ca/personal/eschnetter/
- Twitter: eschnett
- Repositories: 62
- Profile: https://github.com/eschnett
Citation (CITATION.cff)
cff-version: 1.1.0
message: "If you use this software, please cite it as below."
authors:
- family-names: Schnetter
given-names: Erik
orcid: https://orcid.org/0000-0002-4518-9017
title: MPIconstants
version: v1.5.0
doi: 10.5281/zenodo.6174564
date-released: 2022-05-23
GitHub Events
Total
Last Year
Issues and Pull Requests
Last synced: 12 months ago
All Time
- Total issues: 1
- Total pull requests: 2
- Average time to close issues: about 11 hours
- Average time to close pull requests: about 1 hour
- Total issue authors: 1
- Total pull request authors: 1
- Average comments per issue: 3.0
- Average comments per pull request: 0.0
- Merged pull requests: 2
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- amontoison (1)
Pull Request Authors
- eschnett (2)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/checkout v4 composite