Re: [Haskell-cafe] Data.Array.Accelerate initialization timings

Yep. It doesn't help:
generateArray1 n = Acc.use $ Acc.fromList (Acc.Z Acc.:. n*n*n) [0..n*n*n]
still takes the same amount of time. I guess something's wrong elsewhere.
On 20 February 2012 16:06, Alex Gremm
Hi Paul,
even though I just started reading about Accelerate, it seems to me that you didn't use the "use" method which according to [1] initiates asynchronous data transfer from host to GPU.
Cheers, Alex
[1]: http://www.cse.unsw.edu.au/%7Echak/papers/acc-cuda.pdf On 20/02/12 14:46, Paul Sujkov wrote:
Hi everyone,
since accelerate mail list seems to be defunct, I'm trying to ask specific questions here. The problem is: array initialization in Data.Array.Accelerate takes a 10x amount of time in contrast to both Data.Array and bare C++ CUDA array initialization. This can be due to Data.Array.Accelerate having two backends (however, it's own tests show that my nVidia card is CUDA-capable), but I'm not aware of how can I profile GPU to check whether it is used or not. Anyway, here's code:
both generateArray (DIM3) and generateArray1 (DIM1) take the same amount of time to initialize array. I'd say the problem is in GPU memory copying time, but here's bare C++ code:
which does exactly the same, but 10 times faster. I'm wandering what am I doing wrong and how to check if I really am. Thanks in advance if anyone can point me on my mistakes!
-- Regards, Paul Sujkov
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
-- Regards, Paul Sujkov
participants (1)
-
Paul Sujkov