CoreNeuron
CoreNeuron copied to clipboard
Simulator optimized for large scale neural network simulations.
**Describe the issue** In https://github.com/BlueBrain/CoreNeuron/issues/580#issuecomment-869628071 we saw that the NVHPC compilers do not cope with being explicitly told about system include paths: ``` $ echo "#include " > foo.cpp &&...
Calculation of the magnetic dipole has long been implemented with mod files with main calculation being ``` RANGE ri, ia, Q, ztan POINTER pv, Qtotal AFTER SOLVE { ia =...
**Overview** In https://github.com/BlueBrain/CoreNeuron/pull/713 we have added support for GPU offload using OpenMP. This is a good first step, but there are several areas where we hope to improve the implementation....
**Describe the issue** As part of https://github.com/BlueBrain/CoreNeuron/pull/713 we introduced some memory pools for Random123 streams, implemented using Boost.Pool: https://github.com/BlueBrain/CoreNeuron/blob/53b0c5fda91e98c24000238285f7ef1330fc06a4/coreneuron/utils/randoms/nrnran123.cu#L32-L71 This brought significant benefits in GPU builds, both in initialisation time...
Preprocessing macros defined by the project should be prefixed by `CORENEURON_` to prevent possible conflicts.
[copy/paste of internal issue created by @pramodk] In GPU implementation of synapse model, we need to setup random123 streams on GPU which are being done in bbcore_read for every synapse...
io/nrn_setup.cpp has the longstanding comment and code line ``` // temporary bug work around. If any process has multiple threads, no // process can have a single thread. So, for...
With #618 we have added cuda-related error checking in `coreneuron/utils/utils_cuda.h`, which is used in `solve_interleaved2_launcher`. We realised that there is no such error checking in `coreneuron/utils/randoms/nrnran123.cu`. Add it to the...
#595 closes #345, because GPU-enabled builds using Random123 can now be executed on CPU. When a GPU-enabled build is executed **without** `--gpu` but on a machine that **does** have a...
As we are moving to a more object-oriented implementation we would like to turn the `Memb_func` struct into a proper C++ class that also encapsulates operations on its data into...