UWB-Biocomputing/BrainGrid

ConnGrowth::updateSynapsesWeights method on GPU must be redesigned

Closed this issue · 1 comments

fumik commented

See #221

fumik commented

Now we use multi-GPUs on ConnGrowth::updateConnections() method.

  1. Eliminates CompleteMatrix W, delta, area and VectorMatrix outgrowth, deltaR. These data areas were used to save temporary results and occupied a lot of memory. Now these data areas are moved to temporary variables in kernel functions.
  2. Changed ConnGrowth::updateConns() method to updateConnsDevice() kernel function.
  3. Integrated ConnGrowth::updateFrontiers(), updateOverlap() and updateSynapseWeight() methods into updateSynapseWeightDevice() kernel function.
  4. Changed CompleteMatrix radii and rates to arrays so that it is easier to transfer data between GPU and CPU memories.

performance data_2.xlsx