cuCtxCreate: Invalid device with two different Nvidia cards

I'm running Ubuntu 14.04 with Nvidia drivers 375.66 installed from the Nvidia site. I've got two cards: a GeForce GTX 560 and a GeForce GTX 1060 3GB. Using Blender 2.79 downloaded from blender.org, if I enable CUDA and use Cycles with GPU, everything works fine if I use either card individually. But if I use both cards, though, I get "CUDA error at cuCtxCreate: Invalid device". I'm using the default scene, so there's no memory issue.

I looked around the web and found a couple other posts with the same issue. The only one with a solution was here and the bug mentioned there. Unfortunately, the fix there, a clean install of Ubuntu, didn't help me---I had the same problem. (Though I used KDE neon, not Ubuntu 16.04.)

I'm using the downloaded 375.66 as if I use the Ubuntu provided driver, nvidia-384, performance using the 560 is terrible---it takes 30 seconds to render the default cube. However, I do get the same bug with the 384 driver.

Questions: (1) Is this something that has any chance of working? Or are the cards just too far apart in what CUDA versions they support?

(2) If this might work, an ideas on what to do to track down and fix whatever's causing the problem?

[edit]cegaton suggests that the 560 is not worth bothering with. Perhaps, but based on my benchmark runs, it's not nothing; the benchmarks I've run show it running about 1/3 as fast (that is, taking about 3 times longer for most scenes). Also, the 560 has 2GB of memory compared to 3GB for the 1060 so the memory issue isn't as big as suggested.

I will try the suggestion, though, and see if it speeds up the 1060.[/edit]

  • 2
    $\begingroup$ I see no point in trying to use both of them for a single render. The 560 has 336 cuda cores with a cuda compute capability of 2.1 vs 1280 on the 1060 with a compute capability of 6.1 Not only will the 560 slow down the overall render, but it will limit the available memory to only 1Gb of vRAM or less.(vRAM memory does not get added, but is limited to the amount on the smaller card). My suggestion would be for you to use the 560 to drive the monitor(s) and use the 1060 for GPU rendering. $\endgroup$ – user1853 Dec 18 '17 at 6:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.