Metadata-Version: 2.1
Name: Brian2Cuda
Version: 1.0a5
Summary: A Brian2 extension to simulate spiking neural networks on GPUs
Author: Denis Alevi, Moritz Augustin, Marcel Stimberg
Project-URL: Documentation, https://brian2cuda.readthedocs.io/
Project-URL: Source, https://github.com/brian-team/brian2cuda
Project-URL: Tracker, https://github.com/brian-team/brian2cuda/issues
Keywords: computational neuroscience,simulation,neural networks,spiking neurons,gpu,cuda
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Environment :: GPU :: NVIDIA CUDA
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: brian2==2.7.0
Provides-Extra: test
Requires-Dist: pytest; extra == "test"
Requires-Dist: pytest-xdist>=1.22.3; extra == "test"
Provides-Extra: docs
Requires-Dist: sphinx>=1.8; extra == "docs"

Brian2CUDA
==========

Brian2CUDA is an extension of the spiking neural network simulator
[Brian2](https://github.com/brian-team/brian2), written in Python. It
generates C++/CUDA code to run simulations on NVIDIA GPUs.

For **support**, please use the [Brian forum](https://brian.discourse.group/). If
you think you found a bug in Brian2CUDA, please report it at the
[GitHub issue tracker](https://github.com/brian-team/brian2cuda/issues).

For **installation and usage instructions**, check out the
[Brian2CUDA documentation](https://brian2cuda.readthedocs.io).
For information on general Brian2 usage, check out the
[Brian2 documentation](http://brian2.readthedocs.io).

## Quick start
### Installation

You can install Brian2CUDA via `pip`:

```bash
python -m pip install brian2cuda
```

This will install a compatible version of Brian2 as dependency. For installation requirements and GPU configuration, check out the [Brian2CUDA documentation](https://brian2cuda.readthedocs.io/en/latest/index.html).

### Usage
Use your Brian2 code (see [Brian2 documentation](http://brian2.readthedocs.io/en/stable/index.html)) and modify the imports to:

```python
# Standard Brian2 import
from brian2 import *

# Enable GPU usage via Brian2CUDA
import brian2cuda
set_device("cuda_standalone")
```

See [Brian2's standalone code generation](https://brian2.readthedocs.io/en/stable/user/computation.html?highlight=set_device#standalone-code-generation) for more options for the `set_device` call.


## Citation
If you use this software in a published article, please cite
[our Brian2CUDA publication](https://www.frontiersin.org/articles/10.3389/fninf.2022.883700):

> Alevi, D, Stimberg, M, Sprekeler, H, Obermayer, K, Augustin, M. “Brian2CUDA: flexible and efficient simulation of spiking neural network models on GPUs” Frontiers in Neuroinformatics (2022). doi: 10.3389/fninf.2022.883700.

## License
Brian2CUDA is free software licensed under the [GNU General Public License v3 (GPLv3)](https://www.gnu.org/licenses/gpl-3.0.en.html).

## Testing
To run the test suite on Google Collab (no installation or GPU required), click on the badge below:

[![Open In Collab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/brian-team/brian2cuda/blob/master/brian2cuda/tools/test_suite/run_tests.ipynb)
