View on GitHub

Graphitti

A project to facilitate construction of high-performance neural simulations

void AllNeurons::setupNeurons(SimulationInfo *sim_info)

// summation map - summation points for neuron. allocated here. setup methods are also allocating internal storage.
summation_points = new BGFLOAT[size];
// init summation map. blank. zeroing out.
for (int i = 0; i < size; ++i) {
    summation_points[i] = 0;
}
// giving simulator a pointer to the summation map.
// TODO: change. synapses need to write into summation points.
// grab global. alloc internal storage. glue.
// toDo: when do the synapses pick this up?
// possible they pick up during init time. then there is a dependency.
sim_info->pSummationPoint = summation_points; }

Notes about neurons: a neuron that is non spiking’s output is a voltage level. different than inh/exc. assuming inh/exc are spiking neurons

Other kinds of neurons. primary output is releasing neuro hormones. might have two outputs. main function is releasing chemicals in brain.

neurons in crustaceans control motor activity of stomachs, etc.

/*

GPU side code. no setup because copy from CPU

All spiking neurons is still not a concrete class.

Captures characteristics of spiking neurons. All IF Neurons .cpp is implem.

/*

AllLIFNeurons and ALLIZHNeurons are both integrate and fire neurons (belong to same categ) but different implems of integ and fire model.

// creating actual neurons, reading from param file. AllIFNeurons::createNeuron

rng = random number generator

// spike history data structure is being created in createNeuron, but everything else is just init.

// all pure initialization.. little bit of alloc. depends on internal neuron stuff and parameters. // among all things, some need to be done in particular order, but some /*

allLIFNeurons doesnt do additional stuff. create all neurons inits everything and allocs one data structure for spikes.

createallneurons could be part of setupneurons.

todo: decide between one setup method or allocation and initialization being separate. alloc_CPU and init_CPU

createallneurons can be merged into alloc and init.