public override void DoIterationCycle(int numIterationsPerThread)
        {
            if (paletteImage.IsNull())
            {
                return;
            }

            iterateKernel.LaunchAsync(mainStream,
                                      xRes,
                                      yRes,
                                      iterPosStateBuffer.Ptr.RawPtr,
                                      iterColorStateBuffer.Ptr.RawPtr,
                                      iterStatBuffer.Ptr.RawPtr,
                                      globalStatBuffer.Ptr.RawPtr,
                                      entropyXBuffer.Ptr.RawPtr,
                                      entropyCBuffer.Ptr.RawPtr,
                                      accumBuffer.Ptr.RawPtr,
                                      (uint)numIterationsPerThread
                                      );

            updateStatsKernel.LaunchAsync(mainStream,
                                          xRes,
                                          yRes,
                                          (uint)IteratorCount,
                                          iterStatBuffer.Ptr.RawPtr,
                                          globalStatBuffer.Ptr.RawPtr
                                          );
        }
Exemple #2
0
        public override void DoIterationCycle(int numIterationsPerThread)
        {
            if (paletteImage.IsNull())
            {
                return;
            }
            //cycleIterEvt.Record();
            iterateKernel.LaunchAsync(mainStream, (uint)numIterationsPerThread);
            //cycleStatEvt.Record();
            updateStatsKernel.LaunchAsync(mainStream);
            //cycleEndEvt.Record();

            //double iterationCycleTime = Event.ElapsedTime(cycleIterEvt,cycleStatEvt);
        }