Hi Alex,

I've seen that method, but I don't see how can I use it for initialization purposes. It creates Acc (Array e i) from Array e i, but what should I do while I don't have Array yet? And when Array is already initialized, 'use' will transfer it to GPU memory which will add some extra timings, but won't optimize what I have at the moment.

However, I'll try to use it somehow. Maybe I misunderstand the mechanics. Thanks a lot!

On 20 February 2012 16:06, Alex Gremm <algremm@googlemail.com> wrote:
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:
>
> http://hpaste.org/64036
>
> 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:
>
> http://hpaste.org/64037
>
> 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