Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/LLNL/lbann
Livermore Big Artificial Neural Network Toolkit
https://github.com/LLNL/lbann
artificial-intelligence cpp hpc machine-learning neural-network performance radiuss
Last synced: 12 days ago
JSON representation
Livermore Big Artificial Neural Network Toolkit
- Host: GitHub
- URL: https://github.com/LLNL/lbann
- Owner: LLNL
- License: other
- Created: 2016-05-11T20:04:20.000Z (over 8 years ago)
- Default Branch: develop
- Last Pushed: 2024-06-11T19:18:36.000Z (5 months ago)
- Last Synced: 2024-06-11T19:47:48.724Z (5 months ago)
- Topics: artificial-intelligence, cpp, hpc, machine-learning, neural-network, performance, radiuss
- Language: C++
- Homepage: http://software.llnl.gov/lbann/
- Size: 30.9 MB
- Stars: 218
- Watchers: 23
- Forks: 80
- Open Issues: 209
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# LBANN: Livermore Big Artificial Neural Network Toolkit
The Livermore Big Artificial Neural Network toolkit (LBANN) is an
open-source, HPC-centric, deep learning training framework that is
optimized to compose multiple levels of parallelism.LBANN provides model-parallel acceleration through domain
decomposition to optimize for strong scaling of network training. It
also allows for composition of model-parallelism with both data
parallelism and ensemble training methods for training large neural
networks with massive amounts of data. LBANN is able to advantage of
tightly-coupled accelerators, low-latency high-bandwidth networking,
and high-bandwidth parallel file systems.LBANN supports state-of-the-art training algorithms such as
unsupervised, self-supervised, and adversarial (GAN) training methods
in addition to traditional supervised learning. It also supports
recurrent neural networks via back propagation through time (BPTT)
training, transfer learning, and multi-model and ensemble training
methods.## Building LBANN
The preferred method for LBANN users to install LBANN is to use
[Spack](https://github.com/llnl/spack). After some system
configuration, this should be as straightforward as```bash
spack install lbann
```More detailed instructions for building and installing LBANN are
available at the [main LBANN
documentation](https://lbann.readthedocs.io/en/latest/index.html).## Running LBANN
The basic template for running LBANN is```bash
\
lbann \
--model=model.prototext \
--optimizer=opt.prototext \
--reader=data_reader.prototext
```When using GPGPU accelerators, users should be aware that LBANN is
optimized for the case in which one assigns one GPU per MPI
*rank*. This should be borne in mind when choosing the parameters for
the MPI launcher.More details about running LBANN are documented
[here](https://lbann.readthedocs.io/en/latest/running_lbann.html).## Publications
A list of publications, presentations and posters are shown
[here](https://lbann.readthedocs.io/en/latest/publications.html).## Reporting issues
Issues, questions, and bugs can be raised on the [Github issue
tracker](https://github.com/llnl/lbann/issues).