Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/LLNL/Umpire
An application-focused API for memory management on NUMA & GPU architectures
https://github.com/LLNL/Umpire
blt cpp gpu hpc memory-management portability radiuss
Last synced: 26 days ago
JSON representation
An application-focused API for memory management on NUMA & GPU architectures
- Host: GitHub
- URL: https://github.com/LLNL/Umpire
- Owner: LLNL
- License: mit
- Created: 2018-03-12T19:13:20.000Z (almost 7 years ago)
- Default Branch: develop
- Last Pushed: 2024-10-31T00:22:35.000Z (about 1 month ago)
- Last Synced: 2024-11-05T04:42:17.385Z (about 1 month ago)
- Topics: blt, cpp, gpu, hpc, memory-management, portability, radiuss
- Language: C++
- Homepage:
- Size: 15.8 MB
- Stars: 322
- Watchers: 17
- Forks: 51
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Citation: CITATION.cff
Awesome Lists containing this project
- awesome-numa - Umpire - An application-focused API for memory management on NUMA & GPU architectures (NUMA-aware memory placement and scheduling)
README
# Umpire v2024.07.0
[![Documentation Status](https://readthedocs.org/projects/umpire/badge/?version=develop)](https://umpire.readthedocs.io/en/develop/?badge=develop)
[![Github Actions Build Status](https://github.com/LLNL/Umpire/actions/workflows/build.yml/badge.svg)](https://github.com/LLNL/Umpire/actions/workflows/build.yml)Umpire is a resource management library that allows the discovery, provision,
and management of memory on machines with multiple memory devices like NUMA and GPUs.Umpire uses CMake and BLT to handle builds. Since BLT is included as a
submodule, first make sure you run:$ git submodule init && git submodule update
Then, make sure that you have a modern compiler loaded, and the configuration is as
simple as:$ mkdir build && cd build
$ cmake ..CMake will provide output about which compiler is being used. Once CMake has
completed, Umpire can be built with Make:$ make
For more advanced configuration you can use standard CMake variables.
# Documentation
Both user and code documentation is available [here](http://umpire.readthedocs.io/).
The Umpire [tutorial](https://umpire.readthedocs.io/en/develop/sphinx/tutorial.html) provides a step by step introduction to Umpire features.
If you have build problems, we have comprehensive [build system documentation](https://umpire.readthedocs.io/en/develop/sphinx/advanced_configuration.html) too!
# Getting Involved
Umpire is an open-source project, and we welcome contributions from the community.
You can also start an issue for a [bug report](https://github.com/LLNL/Umpire/issues/new?assignees=&labels=&projects=&template=bug_report.md) or [feature request](https://github.com/LLNL/Umpire/issues/new?assignees=&labels=&projects=&template=feature_request.md).
## Mailing List and Slack
The Umpire mailing list is hosted on Google Groups, and is a great place to ask questions:
[Umpire Users Google Group](https://groups.google.com/forum/#!forum/umpire-users)You can also join our RADIUSS slack group and find the "umpire-users" channel to ask questions.
To be sent an invite to the slack group, email us at [[email protected]](mailto:[email protected])## Contributions
We welcome all kinds of contributions: new features, bug fixes, documentation edits; it's all great!
To contribute, make a [pull request](https://github.com/LLNL/Umpire/compare), with `develop` as the destination branch.
We use Travis to run CI tests, and your branch must pass these tests before being merged.For more information, see the [contributing guide](https://github.com/LLNL/Umpire/blob/develop/CONTRIBUTING.md).
# Authors
Thanks to all of Umpire's
[contributors](https://github.com/LLNL/Umpire/graphs/contributors).Umpire was created by David Beckingsale ([email protected]).
## Citing Umpire
If you are referencing Umpire in a publication, please use the following citation:
- D. Beckingsale, M. Mcfadden, J. Dahm, R. Pankajakshan and R. Hornung, ["Umpire: Application-Focused Management and Coordination of Complex Hierarchical Memory,"](https://ieeexplore.ieee.org/document/8907404) in IBM Journal of Research and Development. 2019. doi: 10.1147/JRD.2019.2954403
# Release
Umpire is released under an MIT license. For more details, please see the
[LICENSE](./LICENSE) and [RELEASE](./RELEASE) files.`LLNL-CODE-747640`
`OCEC-18-031`