示例#1
0
 protected override float Calculate(float[] dataArr)
 {
     CUDATools.SetValue(_inPtr, dataArr);
     CUDAKernelTools.SumFloat(_inPtr, _outPtr, dataArr.Length);
     CUDATools.GetValue(_outPtr, _outArr);
     return(_outArr[0]);
 }
示例#2
0
        public FloatSumTest_CUDA2()
        {
            _testName = "FloatSum" + "CUDA_V2";
            int dataSize = _sampleTestData.Length * sizeof(float);

            _inPtr  = CUDATools.Malloc(dataSize);
            _outPtr = CUDATools.Malloc(dataSize);
            _outArr = new float[1];
        }
示例#3
0
 protected override float Calculate(float[] dataArr)
 {
     if (_isFirst == true)
     {
         CUDATools.SetValue(_inPtr, dataArr);
     }
     CUDAKernelTools.SumFloat(_inPtr, _outPtr, dataArr.Length);
     if (_isFirst == true)
     {
         _isFirst = false;
         CUDATools.GetValue(_outPtr, _outArr);
     }
     return(_outArr[0]);
 }