protected override void GpuFunction() { using (ComputeBufferSet _connectWeight = ConvertBuffer(connectWeight)) using (ComputeBufferSet _axsonConnectCount = ConvertBuffer(axsonConnectCount)) using (ComputeBufferSet _axsonConnectStartIndex = ConvertBuffer(axsonConnectStartIndex)) { SetParameter(_connectWeight); SetParameter(_axsonConnectCount); SetParameter(_axsonConnectStartIndex); Execute(cellCount); ReadBuffer(_connectWeight, ref connectWeight.Array.Data); } }
protected override void GpuFunction() { using (ComputeBufferSet _px = ConvertBuffer(px)) using (ComputeBufferSet _py = ConvertBuffer(py)) using (ComputeBufferSet _pz = ConvertBuffer(pz)) using (ComputeBufferSet _paxson = ConvertBuffer(paxson)) using (ComputeBufferSet _phasRef = ConvertBuffer(phasRef)) { SetParameter(_px); SetParameter(_py); SetParameter(_pz); SetParameter(_paxson); SetParameter(_phasRef); SetParameter(count, ValueMode.INT); SetParameter(connectcount, ValueMode.INT); Execute(count); ReadBuffer(_phasRef, ref phasRef.Array.Data); } }
protected override void GpuFunction() { using (ComputeBufferSet _cellValue = ConvertBuffer(cellValue)) using (ComputeBufferSet _cellSignal = ConvertBuffer(cellSignal)) using (ComputeBufferSet _cellActivity = ConvertBuffer(cellActivity)) using (ComputeBufferSet _cellState = ConvertBuffer(cellState)) using (ComputeBufferSet _connectWeight = ConvertBuffer(connectWeight)) using (ComputeBufferSet _cellEnergy = ConvertBuffer(cellEnergy)) using (ComputeBufferSet _axsonConnectCount = ConvertBuffer(axsonConnectCount)) using (ComputeBufferSet _axsonConnectStartIndex = ConvertBuffer(axsonConnectStartIndex)) using (ComputeBufferSet _axsonConnectMatrix = ConvertBuffer(axsonConnectMatrix)) using (ComputeBufferSet _resValue = ConvertBuffer(resValue)) using (ComputeBufferSet _resSignal = ConvertBuffer(resSignal)) using (ComputeBufferSet _resActivity = ConvertBuffer(resActivity)) using (ComputeBufferSet _resState = ConvertBuffer(resState)) { SetParameter(_cellValue); SetParameter(_cellSignal); SetParameter(_cellActivity); SetParameter(_cellState); SetParameter(_connectWeight); SetParameter(_cellEnergy); SetParameter(_axsonConnectCount); SetParameter(_axsonConnectStartIndex); SetParameter(_axsonConnectMatrix); SetParameter(_resValue); SetParameter(_resSignal); SetParameter(_resActivity); SetParameter(_resState); SetParameter(cellCount, ValueMode.INT); SetParameter(energy, ValueMode.FLOAT); SetParameter(denergy, ValueMode.FLOAT); SetParameter(mp, ValueMode.FLOAT); SetParameter(actrho, ValueMode.FLOAT); Execute(cellCount); ReadBuffer(_cellEnergy, ref cellEnergy.Array.Data); ReadBuffer(_connectWeight, ref connectWeight.Array.Data); ReadBuffer(_resValue, ref resValue.Array.Data); ReadBuffer(_resSignal, ref resSignal.Array.Data); ReadBuffer(_resActivity, ref resActivity.Array.Data); ReadBuffer(_resState, ref resState.Array.Data); } }
protected void ReadBuffer(ComputeBufferSet mem, ref Real[] buffer) { Queue[sellectionIndex].ReadFromBuffer(mem.Buffer, ref buffer, true, null); }
protected void SetParameter(ComputeBufferSet instance, ParamMode mode = FunctionBase.ParamMode.Memory) { GpuParameter[sellectionIndex].Add(new GpuParamSet(instance.Buffer, mode)); }