Page 1 of 1

Running asynchronously

PostPosted: Fri Jul 12, 2013 12:25 pm
by doug25
Is it possible to launch/run a CULA routine asynchronously?

I need to find the eigenvalues & eigenvectors for many small matrices. I'm using culaDeviceSsyev(). This CPU/GPU process is taking twice as long as a CPU-only routine.

Having to launch the process from the CPU kills the concurrency of the larger process. The matrix data is generated by an asynchronous running stream in the GPU. Having to synchronous the CPU with the GPU is expensive.

I'm not seeing a way to launch & run CULA from a GPU stream at all. (Is there one?)
Is there a way to speed up Ssyev for small matrices (3x3,4x4,5x5)?

Re: Running asynchronously

PostPosted: Fri Jul 12, 2013 12:35 pm
by john
I'm afraid that CULA is not designed for batch operations on small matrices; there are several threads you can search here to find more details. We could do these on a custom basis, but be advised that we've found that the matrix count should be in the millions before there is any payoff versus a CPU.