Hi, thank you for reading this topic.
I want to get some help on my current issue about strange delay on CUDA initialization.
I’m using three GTX480 cards with no-SLI mode, and running my CUDA application on Linux platform.
In addition, I have another system consisted of three GTX285 cards with no-SLI mode, and running same platform.
When I running my program on the first platform(3 GTX480) at initialization step,
one card will initialized almost immediately(about 0.2ms), while another two cards will take 3000ms±0.5ms.
This is not appear only the first time to execute after re-booting, but it occurs again from second running.
This is also occurs not only in the initialization step(cudaSetDevice function), but also in the data transfer step(first cudaSend function)
But this phenomenon doesn’t occurs in the second platform(3 GTX285) and it makes me crazy…
Consequently, this strange delay yields 6 secs(sometimes 9 secs) delay to my first system.
I tried nvidiasmi tool to hold up the device initialization in the Linux system as I searched, but it doesn’t work at all.
So I think I have another problem on my system, but I can’t find what it is.
Is that problem solved by actual driver? I have this problem too, which is a real problem as this makes 1/5 of my total program running time. Persistent Mode is enabled.
Well I had the same problem as well… It seemed by adding “cudaSetDevice(0);” to the very beginning of my program worked to initialize the GPU. Even though the time is greatly reduced, now it takes about 60ms which is still not fast.
I have a GTX560 TI
Btw, How exactly do you enable Persistent Mode? I’m using VS2010