Brian2GeNN 1.2
We are happy to announce the release of Brian2GeNN 1.2, a new release of the Brian 2 interface with the GeNN simulator. This release fixes compatibility issues with the latest versions of Brian and GeNN, and adds support for single precision floating point numbers. Using single precision instead of the default double precision can lead to significantly increased performance, especially on consumer-oriented GPUs.
Note: We no longer provide conda packages for Brian2GeNN, please install it via pip
(pip install brian2genn
), install GeNN and set GENN_PATH
. Please see the installation instructions for details.
See below for a list of the most important changes.
New features
- Support for single precision floating point numbers. Switching to single precision is done by setting Brian's
core.default_float_dtype
preference tofloat32
. - Some GeNN features have been exposed to Brian2GeNN as preferences, e.g. the parallelization strategy for synapses can be set via the
devices.genn.synapse_span_type
preference, and the CUDA block size for the different kernels via preferences such asdevices.genn.neuron_blocksize
. For a full list of preferences, see the documentation. - More "code slots" are available to add custom C++ code to the simulation (see the
insert_code
documentation for details). - GeNN's internal profiling routines can be activated via Brian2GeNN's
devices.genn.kernel_timing
preference.
Bug fixes
Network
objects are now supported (#66). Thanks to Yuancheng Xu for reporting this error.- Fixed outdated documentation (#76, #75). Thanks to Justas Birgiolas for reporting these issues.
Infrastructure/packaging changes
-
Packaging: Brian2GeNN is no longer packaged as a conda package, because the bundled pre-compiled GeNN libraries were not always working correctly. Please install Brian2GeNN from source via pip (
pip install brian2genn
) and follow GeNN's installation instructions to install GeNN. Old versions of the Brian2GeNN conda packages have been moved to thearchive
label. -
Our testing infrastructure now uses Microsoft Azure Pipelines instead of travis and appveyor.