Skip to content

Commit

Permalink
Rewrite randomCells2D to use zero_memcpy
Browse files Browse the repository at this point in the history
  • Loading branch information
bernhardmgruber committed Jan 24, 2023
1 parent 45cc90f commit f374037
Showing 1 changed file with 11 additions and 13 deletions.
24 changes: 11 additions & 13 deletions example/randomCells2D/src/randomCells2D.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -186,25 +186,21 @@ auto main() -> int
// Setup buffer.
BufHost bufHostS{alpaka::allocBuf<float, Idx>(devHost, extent)};
float* const ptrBufHostS{alpaka::getPtrNative(bufHostS)};
BufAcc bufAccS{alpaka::allocBuf<float, Idx>(devAcc, extent)};
float* const ptrBufAccS{alpaka::getPtrNative(bufAccS)};

BufHost bufHostV{alpaka::allocBuf<float, Idx>(devHost, extent)};
float* const ptrBufHostV{alpaka::getPtrNative(bufHostV)};
BufAcc bufAccV{alpaka::allocBuf<float, Idx>(devAcc, extent)};
float* const ptrBufAccV{alpaka::getPtrNative(bufAccV)};

BufAccRand bufAccRandS{alpaka::allocBuf<RandomEngineSingle<Acc>, Idx>(devAcc, extent)};
RandomEngineSingle<Acc>* const ptrBufAccRandS{alpaka::getPtrNative(bufAccRandS)};

BufAccRandVec bufAccRandV{alpaka::allocBuf<RandomEngineVector<Acc>, Idx>(devAcc, extent)};
RandomEngineVector<Acc>* const ptrBufAccRandV{alpaka::getPtrNative(bufAccRandV)};

InitRandomKernel initRandomKernel;

BufAccRand bufAccRandS{alpaka::allocBuf<RandomEngineSingle<Acc>, Idx>(devAcc, extent)};
RandomEngineSingle<Acc>* const ptrBufAccRandS{alpaka::getPtrNative(bufAccRandS)};
auto pitchBufAccRandS = alpaka::getPitchBytes<1u>(bufAccRandS);
alpaka::exec<Acc>(queue, workdiv, initRandomKernel, extent, ptrBufAccRandS, pitchBufAccRandS);
alpaka::wait(queue);

BufAccRandVec bufAccRandV{alpaka::allocBuf<RandomEngineVector<Acc>, Idx>(devAcc, extent)};
RandomEngineVector<Acc>* const ptrBufAccRandV{alpaka::getPtrNative(bufAccRandV)};
auto pitchBufAccRandV = alpaka::getPitchBytes<1u>(bufAccRandV);
alpaka::exec<Acc>(queue, workdiv, initRandomKernel, extent, ptrBufAccRandV, pitchBufAccRandV);
alpaka::wait(queue);
Expand All @@ -221,8 +217,9 @@ auto main() -> int
}
}

BufAcc bufAccS{alpaka::zero_memcpy(queue, bufHostS)};
float* const ptrBufAccS{alpaka::getPtrNative(bufAccS)};
auto pitchBufAccS = alpaka::getPitchBytes<1u>(bufAccS);
alpaka::memcpy(queue, bufAccS, bufHostS);
RunTimestepKernelSingle runTimestepKernelSingle;
alpaka::exec<Acc>(
queue,
Expand All @@ -233,10 +230,11 @@ auto main() -> int
ptrBufAccS,
pitchBufAccRandS,
pitchBufAccS);
alpaka::memcpy(queue, bufHostS, bufAccS);
alpaka::zero_memcpy(queue, bufHostS, bufAccS);

BufAcc bufAccV{alpaka::zero_memcpy(queue, bufHostV)};
float* const ptrBufAccV{alpaka::getPtrNative(bufAccV)};
auto pitchBufAccV = alpaka::getPitchBytes<1u>(bufAccV);
alpaka::memcpy(queue, bufAccV, bufHostV);
RunTimestepKernelVector runTimestepKernelVector;
alpaka::exec<Acc>(
queue,
Expand All @@ -247,7 +245,7 @@ auto main() -> int
ptrBufAccV,
pitchBufAccRandV,
pitchBufAccV);
alpaka::memcpy(queue, bufHostV, bufAccV);
alpaka::zero_memcpy(queue, bufHostV, bufAccV);
alpaka::wait(queue);

float avgS = 0;
Expand Down

0 comments on commit f374037

Please sign in to comment.