GeNN  4.9.0
GPU enhanced Neuronal Networks (GeNN)
CodeGenerator::BackendSIMT Member List

This is the complete list of members for CodeGenerator::BackendSIMT, including all inherited members.

addDeviceType(const std::string &type, size_t size, const std::string &maxValue="")CodeGenerator::BackendSIMTprotected
addPresynapticUpdateStrategy(PresynapticUpdateStrategySIMT::Base *strategy)CodeGenerator::BackendSIMTstatic
addType(const std::string &type, size_t size, const std::string &lowestValue="")CodeGenerator::BackendBaseinlineprotected
areSharedMemAtomicsSlow() const =0CodeGenerator::BackendSIMTpure virtual
areSixtyFourBitSynapseIndicesRequired(const SynapseGroupMergedBase &sg) constCodeGenerator::BackendBase
AtomicMemSpace enum nameCodeGenerator::BackendSIMT
AtomicOperation enum nameCodeGenerator::BackendSIMT
BackendBase(const std::string &scalarType, const PreferencesBase &preferences)CodeGenerator::BackendBase
BackendSIMT(const KernelBlockSize &kernelBlockSizes, const PreferencesBase &preferences, const std::string &scalarType)CodeGenerator::BackendSIMTinline
genAllocateMemPreamble(CodeStream &os, const ModelSpecMerged &modelMerged, const MemAlloc &memAlloc) const =0CodeGenerator::BackendBasepure virtual
genArray(CodeStream &definitions, CodeStream &definitionsInternal, CodeStream &runner, CodeStream &allocations, CodeStream &free, const std::string &type, const std::string &name, VarLocation loc, size_t count, MemAlloc &memAlloc) constCodeGenerator::BackendBaseinline
genCurrentSpikeLikeEventPull(CodeStream &os, const NeuronGroupInternal &ng, unsigned int batchSize) const =0CodeGenerator::BackendBasepure virtual
genCurrentSpikeLikeEventPush(CodeStream &os, const NeuronGroupInternal &ng, unsigned int batchSize) const =0CodeGenerator::BackendBasepure virtual
genCurrentTrueSpikePull(CodeStream &os, const NeuronGroupInternal &ng, unsigned int batchSize) const =0CodeGenerator::BackendBasepure virtual
genCurrentTrueSpikePush(CodeStream &os, const NeuronGroupInternal &ng, unsigned int batchSize) const =0CodeGenerator::BackendBasepure virtual
genCurrentVariablePull(CodeStream &os, const NeuronGroupInternal &ng, const std::string &type, const std::string &name, VarLocation loc, unsigned int batchSize) const =0CodeGenerator::BackendBasepure virtual
genCurrentVariablePush(CodeStream &os, const NeuronGroupInternal &ng, const std::string &type, const std::string &name, VarLocation loc, unsigned int batchSize) const =0CodeGenerator::BackendBasepure virtual
genCurrentVariablePushPull(CodeStream &push, CodeStream &pull, const NeuronGroupInternal &ng, const std::string &type, const std::string &name, VarLocation loc, unsigned int batchSize) constCodeGenerator::BackendBaseinline
genCustomTransposeUpdateWUKernel(CodeStream &os, const Substitutions &kernelSubs, const ModelSpecMerged &modelMerged, const std::string &updateGroup, size_t &idStart) constCodeGenerator::BackendSIMTprotected
genCustomUpdate(CodeStream &os, const ModelSpecMerged &modelMerged, HostHandler preambleHandler, HostHandler pushEGPHandler) const =0CodeGenerator::BackendBasepure virtual
genCustomUpdateIndexCalculation(CodeStream &os, const CustomUpdateGroupMerged &cu) constCodeGenerator::BackendBaseprotected
genCustomUpdateKernel(CodeStream &os, const Substitutions &kernelSubs, const ModelSpecMerged &modelMerged, const std::string &updateGroup, size_t &idStart) constCodeGenerator::BackendSIMTprotected
genCustomUpdateWUKernel(CodeStream &os, const Substitutions &kernelSubs, const ModelSpecMerged &modelMerged, const std::string &updateGroup, size_t &idStart) constCodeGenerator::BackendSIMTprotected
genDefinitionsInternalPreamble(CodeStream &os, const ModelSpecMerged &modelMerged) const =0CodeGenerator::BackendBasepure virtual
genDefinitionsPreamble(CodeStream &os, const ModelSpecMerged &modelMerged) const =0CodeGenerator::BackendBasepure virtual
genDenseSynapseVariableRowInit(CodeStream &os, const Substitutions &kernelSubs, Handler handler) const finalCodeGenerator::BackendSIMTinlinevirtual
genExtraGlobalParamAllocation(CodeStream &os, const std::string &type, const std::string &name, VarLocation loc, const std::string &countVarName="count", const std::string &prefix="") const =0CodeGenerator::BackendBasepure virtual
genExtraGlobalParamDefinition(CodeStream &definitions, CodeStream &definitionsInternal, const std::string &type, const std::string &name, VarLocation loc) const =0CodeGenerator::BackendBasepure virtual
genExtraGlobalParamImplementation(CodeStream &os, const std::string &type, const std::string &name, VarLocation loc) const =0CodeGenerator::BackendBasepure virtual
genExtraGlobalParamPull(CodeStream &os, const std::string &type, const std::string &name, VarLocation loc, const std::string &countVarName="count", const std::string &prefix="") const =0CodeGenerator::BackendBasepure virtual
genExtraGlobalParamPush(CodeStream &os, const std::string &type, const std::string &name, VarLocation loc, const std::string &countVarName="count", const std::string &prefix="") const =0CodeGenerator::BackendBasepure virtual
genFreeMemPreamble(CodeStream &os, const ModelSpecMerged &modelMerged) const =0CodeGenerator::BackendBasepure virtual
genGlobalDeviceRNG(CodeStream &definitions, CodeStream &definitionsInternal, CodeStream &runner, CodeStream &allocations, CodeStream &free, MemAlloc &memAlloc) const =0CodeGenerator::BackendBasepure virtual
genGlobalRNGSkipAhead(CodeStream &os, Substitutions &subs, const std::string &sequence, const std::string &name="rng") const =0CodeGenerator::BackendSIMTpure virtual
genInit(CodeStream &os, const ModelSpecMerged &modelMerged, HostHandler preambleHandler, HostHandler initPushEGPHandler, HostHandler initSparsePushEGPHandler) const =0CodeGenerator::BackendBasepure virtual
genInitializeKernel(CodeStream &os, const Substitutions &kernelSubs, const ModelSpecMerged &modelMerged, size_t &idStart) constCodeGenerator::BackendSIMTprotected
genInitializeSparseKernel(CodeStream &os, const Substitutions &kernelSubs, const ModelSpecMerged &modelMerged, size_t numInitializeThreads, size_t &idStart) constCodeGenerator::BackendSIMTprotected
genInitReductionTargets(CodeStream &os, const CustomUpdateGroupMerged &cg, const std::string &idx="") constCodeGenerator::BackendBaseprotected
genInitReductionTargets(CodeStream &os, const CustomUpdateWUGroupMerged &cg, const std::string &idx="") constCodeGenerator::BackendBaseprotected
genKernelCustomUpdateVariableInit(CodeStream &os, const CustomWUUpdateInitGroupMerged &cu, const Substitutions &kernelSubs, Handler handler) const finalCodeGenerator::BackendSIMTvirtual
genKernelSynapseVariableInit(CodeStream &os, const SynapseInitGroupMerged &sg, const Substitutions &kernelSubs, Handler handler) const finalCodeGenerator::BackendSIMTvirtual
genMakefileCompileRule(std::ostream &os) const =0CodeGenerator::BackendBasepure virtual
genMakefileLinkRule(std::ostream &os) const =0CodeGenerator::BackendBasepure virtual
genMakefilePreamble(std::ostream &os) const =0CodeGenerator::BackendBasepure virtual
genMergedExtraGlobalParamPush(CodeStream &os, const std::string &suffix, size_t mergedGroupIdx, const std::string &groupIdx, const std::string &fieldName, const std::string &egpName) const =0CodeGenerator::BackendBasepure virtual
genMSBuildCompileModule(const std::string &moduleName, std::ostream &os) const =0CodeGenerator::BackendBasepure virtual
genMSBuildConfigProperties(std::ostream &os) const =0CodeGenerator::BackendBasepure virtual
genMSBuildImportProps(std::ostream &os) const =0CodeGenerator::BackendBasepure virtual
genMSBuildImportTarget(std::ostream &os) const =0CodeGenerator::BackendBasepure virtual
genMSBuildItemDefinitions(std::ostream &os) const =0CodeGenerator::BackendBasepure virtual
genNeuronIndexCalculation(CodeStream &os, const NeuronUpdateGroupMerged &ng, unsigned int batchSize) constCodeGenerator::BackendBaseprotected
genNeuronPrevSpikeTimeUpdateKernel(CodeStream &os, const Substitutions &kernelSubs, const ModelSpecMerged &modelMerged, size_t &idStart) constCodeGenerator::BackendSIMTprotected
genNeuronSpikeQueueUpdateKernel(CodeStream &os, const ModelSpecMerged &modelMerged, size_t &idStart) constCodeGenerator::BackendSIMTprotected
genNeuronUpdate(CodeStream &os, const ModelSpecMerged &modelMerged, HostHandler preambleHandler, HostHandler pushEGPHandler) const =0CodeGenerator::BackendBasepure virtual
genNeuronUpdateKernel(CodeStream &os, const Substitutions &kernelSubs, const ModelSpecMerged &modelMerged, size_t &idStart) constCodeGenerator::BackendSIMTprotected
genPopulationRNG(CodeStream &definitions, CodeStream &definitionsInternal, CodeStream &runner, CodeStream &allocations, CodeStream &free, const std::string &name, size_t count, MemAlloc &memAlloc) const =0CodeGenerator::BackendBasepure virtual
genPopulationRNGInit(CodeStream &os, const std::string &globalRNG, const std::string &seed, const std::string &sequence) const =0CodeGenerator::BackendSIMTpure virtual
genPopulationRNGPostamble(CodeStream &os, const std::string &globalRNG) const =0CodeGenerator::BackendSIMTpure virtual
genPopulationRNGPreamble(CodeStream &os, Substitutions &subs, const std::string &globalRNG, const std::string &name="rng") const =0CodeGenerator::BackendSIMTpure virtual
genPopVariableInit(CodeStream &os, const Substitutions &kernelSubs, Handler handler) const finalCodeGenerator::BackendSIMTvirtual
genPostsynapticUpdateKernel(CodeStream &os, const Substitutions &kernelSubs, const ModelSpecMerged &modelMerged, size_t &idStart) constCodeGenerator::BackendSIMTprotected
genPresynapticUpdateKernel(CodeStream &os, const Substitutions &kernelSubs, const ModelSpecMerged &modelMerged, size_t &idStart) constCodeGenerator::BackendSIMTprotected
genReturnFreeDeviceMemoryBytes(CodeStream &os) const =0CodeGenerator::BackendBasepure virtual
genRunnerPreamble(CodeStream &os, const ModelSpecMerged &modelMerged, const MemAlloc &memAlloc) const =0CodeGenerator::BackendBasepure virtual
genSharedMemBarrier(CodeStream &os) const =0CodeGenerator::BackendSIMTpure virtual
genSparseSynapseVariableRowInit(CodeStream &os, const Substitutions &kernelSubs, Handler handler) const finalCodeGenerator::BackendSIMTinlinevirtual
genStepTimeFinalisePreamble(CodeStream &os, const ModelSpecMerged &modelMerged) const =0CodeGenerator::BackendBasepure virtual
genSynapseDendriticDelayUpdateKernel(CodeStream &os, const ModelSpecMerged &modelMerged, size_t &idStart) constCodeGenerator::BackendSIMTprotected
genSynapseDynamicsKernel(CodeStream &os, const Substitutions &kernelSubs, const ModelSpecMerged &modelMerged, size_t &idStart) constCodeGenerator::BackendSIMTprotected
genSynapseIndexCalculation(CodeStream &os, const SynapseGroupMergedBase &sg, unsigned int batchSize) constCodeGenerator::BackendBaseprotected
genSynapseUpdate(CodeStream &os, const ModelSpecMerged &modelMerged, HostHandler preambleHandler, HostHandler pushEGPHandler) const =0CodeGenerator::BackendBasepure virtual
genTimer(CodeStream &definitions, CodeStream &definitionsInternal, CodeStream &runner, CodeStream &allocations, CodeStream &free, CodeStream &stepTimeFinalise, const std::string &name, bool updateInStepTime) const =0CodeGenerator::BackendBasepure virtual
genVariableAllocation(CodeStream &os, const std::string &type, const std::string &name, VarLocation loc, size_t count, MemAlloc &memAlloc) const =0CodeGenerator::BackendBasepure virtual
genVariableDefinition(CodeStream &definitions, CodeStream &definitionsInternal, const std::string &type, const std::string &name, VarLocation loc) const =0CodeGenerator::BackendBasepure virtual
genVariableFree(CodeStream &os, const std::string &name, VarLocation loc) const =0CodeGenerator::BackendBasepure virtual
genVariableImplementation(CodeStream &os, const std::string &type, const std::string &name, VarLocation loc) const =0CodeGenerator::BackendBasepure virtual
genVariableInit(CodeStream &os, const std::string &count, const std::string &indexVarName, const Substitutions &kernelSubs, Handler handler) const finalCodeGenerator::BackendSIMTvirtual
genVariablePull(CodeStream &os, const std::string &type, const std::string &name, VarLocation loc, size_t count) const =0CodeGenerator::BackendBasepure virtual
genVariablePush(CodeStream &os, const std::string &type, const std::string &name, VarLocation loc, bool autoInitialized, size_t count) const =0CodeGenerator::BackendBasepure virtual
genVariablePushPull(CodeStream &push, CodeStream &pull, const std::string &type, const std::string &name, VarLocation loc, bool autoInitialized, size_t count) constCodeGenerator::BackendBaseinline
getAllocateMemParams(const ModelSpecMerged &) constCodeGenerator::BackendBaseinlinevirtual
getAtomic(const std::string &type, AtomicOperation op=AtomicOperation::ADD, AtomicMemSpace memSpace=AtomicMemSpace::GLOBAL) const =0CodeGenerator::BackendSIMTpure virtual
getBlockID(unsigned int axis=0) const =0CodeGenerator::BackendSIMTpure virtual
getCLZ() const =0CodeGenerator::BackendSIMTpure virtual
getDeviceMemoryBytes() const =0CodeGenerator::BackendBasepure virtual
getDeviceVarPrefix() const finalCodeGenerator::BackendSIMTinlinevirtual
getFilesToCopy(const ModelSpecMerged &) constCodeGenerator::BackendBaseinlinevirtual
getHashDigest() const =0CodeGenerator::BackendBasepure virtual
getHostVarPrefix() constCodeGenerator::BackendBaseinlinevirtual
getKernelBlockSize(Kernel kernel) constCodeGenerator::BackendSIMTinline
getKernelBlockSize() constCodeGenerator::BackendSIMTinlineprotected
getLowestValue(const std::string &type) constCodeGenerator::BackendBase
getMergedGroupFieldHostType(const std::string &type) const =0CodeGenerator::BackendBasepure virtual
getMergedGroupMemorySpaces(const ModelSpecMerged &modelMerged) const =0CodeGenerator::BackendBasepure virtual
getMergedGroupSimRNGType() const =0CodeGenerator::BackendBasepure virtual
getNumConnectivityInitThreads(const SynapseGroupInternal &sg)CodeGenerator::BackendSIMTstatic
getNumInitialisationRNGStreams(const ModelSpecMerged &modelMerged) constCodeGenerator::BackendSIMT
getNumInitThreads(const SynapseGroupInternal &sg)CodeGenerator::BackendSIMTstatic
getNumInitThreads(const CustomUpdateWUInternal &cg)CodeGenerator::BackendSIMTstatic
getNumPostsynapticUpdateThreads(const SynapseGroupInternal &sg)CodeGenerator::BackendSIMTstatic
getNumPresynapticUpdateThreads(const SynapseGroupInternal &sg, const PreferencesBase &preferences)CodeGenerator::BackendSIMTstatic
getNumSynapseDynamicsThreads(const SynapseGroupInternal &sg)CodeGenerator::BackendSIMTstatic
getPaddedNumCustomUpdateThreads(const CustomUpdateInternal &cg, unsigned int batchSize) constCodeGenerator::BackendSIMT
getPaddedNumCustomUpdateTransposeWUThreads(const CustomUpdateWUInternal &cg, unsigned int batchSize) constCodeGenerator::BackendSIMT
getPaddedNumCustomUpdateWUThreads(const CustomUpdateWUInternal &cg, unsigned int batchSize) constCodeGenerator::BackendSIMT
getPointerPrefix() constCodeGenerator::BackendBaseinlinevirtual
getPreferences() constCodeGenerator::BackendBaseinline
getPreferences() constCodeGenerator::BackendBaseinline
getScalarAddressPrefix() constCodeGenerator::BackendBaseinline
getSharedPrefix() const =0CodeGenerator::BackendSIMTpure virtual
getSize(const std::string &type) constCodeGenerator::BackendBase
getSynapticMatrixRowStride(const SynapseGroupInternal &sg) const finalCodeGenerator::BackendSIMTvirtual
getThreadID(unsigned int axis=0) const =0CodeGenerator::BackendSIMTpure virtual
GroupHandler typedefCodeGenerator::BackendBase
Handler typedefCodeGenerator::BackendBase
HostHandler typedefCodeGenerator::BackendBase
isDeviceScalarRequired() const finalCodeGenerator::BackendSIMTinlinevirtual
isDeviceType(const std::string &type) constCodeGenerator::BackendSIMTprotected
isGlobalDeviceRNGRequired(const ModelSpecMerged &modelMerged) const finalCodeGenerator::BackendSIMTvirtual
isGlobalHostRNGRequired(const ModelSpecMerged &modelMerged) const finalCodeGenerator::BackendSIMTvirtual
isHostReductionRequired() const =0CodeGenerator::BackendBasepure virtual
isPopulationRNGInitialisedOnDevice() const =0CodeGenerator::BackendBasepure virtual
isPopulationRNGRequired() const finalCodeGenerator::BackendSIMTinlinevirtual
isPostsynapticRemapRequired() const finalCodeGenerator::BackendSIMTinlinevirtual
KernelNamesCodeGenerator::BackendSIMTstatic
MemorySpaces typedefCodeGenerator::BackendBase
padKernelSize(size_t size, Kernel kernel) constCodeGenerator::BackendSIMTprotected
setPointerBytes(size_t pointerBytes)CodeGenerator::BackendBaseinlineprotected
supportsNamespace() const =0CodeGenerator::BackendBasepure virtual
~BackendBase()CodeGenerator::BackendBaseinlinevirtual