From ae0febb5d4817dbd33f9d2fc9b170348ca29d17e Mon Sep 17 00:00:00 2001 From: Bernhard Manfred Gruber Date: Sat, 29 Oct 2022 15:00:56 +0200 Subject: [PATCH] Rewrite randomCells2D to use zero_memcpy --- example/randomCells2D/src/randomCells2D.cpp | 23 ++++++++++----------- 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/example/randomCells2D/src/randomCells2D.cpp b/example/randomCells2D/src/randomCells2D.cpp index 0fadc08e475d..9872582fa846 100644 --- a/example/randomCells2D/src/randomCells2D.cpp +++ b/example/randomCells2D/src/randomCells2D.cpp @@ -186,25 +186,22 @@ auto main() -> int // Setup buffer. BufHost bufHostS{alpaka::allocBuf(devHost, extent)}; float* const ptrBufHostS{alpaka::getPtrNative(bufHostS)}; - BufAcc bufAccS{alpaka::allocBuf(devAcc, extent)}; - float* const ptrBufAccS{alpaka::getPtrNative(bufAccS)}; BufHost bufHostV{alpaka::allocBuf(devHost, extent)}; float* const ptrBufHostV{alpaka::getPtrNative(bufHostV)}; - BufAcc bufAccV{alpaka::allocBuf(devAcc, extent)}; - float* const ptrBufAccV{alpaka::getPtrNative(bufAccV)}; - BufAccRand bufAccRandS{alpaka::allocBuf, Idx>(devAcc, extent)}; - RandomEngineSingle* const ptrBufAccRandS{alpaka::getPtrNative(bufAccRandS)}; - BufAccRandVec bufAccRandV{alpaka::allocBuf, Idx>(devAcc, extent)}; - RandomEngineVector* const ptrBufAccRandV{alpaka::getPtrNative(bufAccRandV)}; InitRandomKernel initRandomKernel; + + BufAccRand bufAccRandS{alpaka::allocBuf, Idx>(devAcc, extent)}; + RandomEngineSingle* const ptrBufAccRandS{alpaka::getPtrNative(bufAccRandS)}; auto pitchBufAccRandS = alpaka::getPitchBytes<1u>(bufAccRandS); alpaka::exec(queue, workdiv, initRandomKernel, extent, ptrBufAccRandS, pitchBufAccRandS); alpaka::wait(queue); + BufAccRandVec bufAccRandV{alpaka::allocBuf, Idx>(devAcc, extent)}; + RandomEngineVector* const ptrBufAccRandV{alpaka::getPtrNative(bufAccRandV)}; auto pitchBufAccRandV = alpaka::getPitchBytes<1u>(bufAccRandV); alpaka::exec(queue, workdiv, initRandomKernel, extent, ptrBufAccRandV, pitchBufAccRandV); alpaka::wait(queue); @@ -221,8 +218,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( queue, @@ -233,10 +231,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( queue, @@ -247,7 +246,7 @@ auto main() -> int ptrBufAccV, pitchBufAccRandV, pitchBufAccV); - alpaka::memcpy(queue, bufHostV, bufAccV); + alpaka::zero_memcpy(queue, bufHostV, bufAccV); alpaka::wait(queue); float avgS = 0;