apollo
apollo copied to clipboard
Apollo: Online Machine Learning for Performance Portability
Apollo
Apollo is a distributed tuning framework for parallel applications. You instrument your code with the Apollo API, tell Apollo what the tuning options are, and Apollo recommends tuning options so that your code runs faster.
Contributing
To contribute to Apollo please send a
pull request on the
develop
branch of this repo. Apollo follows Gitflow for managing development.
Authors
Apollo is currently developed by Giorgis Georgakoudis, [email protected], Chad Wood, [email protected], and other contributors.
Apollo was originally created by David Beckingsale, [email protected]
If you are referencing Apollo in a publication, please cite this repo and the following papers:
- David Beckingsale and Olga Pearce and Ignacio Laguna and Todd Gamblin. Apollo: Reusable Models for Fast, Dynamic Tuning of Input-Dependent Code. In IEEE International Parallel & Distributed Processing Symposium (IPDPS'17), Orlando, FL, May 29-June 2 2017. LLNL-CONF-723337.
- Chad Wood and Giorgis Georgakoudis and David Beckingsale and David Poliakoff and Alfredo Giménez and Kevin A. Huck and Allen D. Mallony and Todd Gamblin. Artemis: Automatic Runtime Tuning of Parallel Execution Parameters Using Machine Learning. In In International Conference on High Performance Computing, pp. 453-472. Springer, Cham, 2021. LLNL-CONF-809192.
License
Apollo is distributed under the terms of both the MIT license. All new contributions must be made under the MIT license.
See LICENSE and NOTICE for details.
SPDX-License-Identifier: MIT
LLNL-CODE-733798