I have two GPUs, how can I just let it complete a specific CUDA task?

New to CUDA, but you have time to compute, and I have at home in the house and tesla (same generation) in the office.

I have two gpus installed on one computer, one of them is GK110 (computational ability 3.5), the other is GF110 (computational ability 2.0), I undertake to use GK110 for the calculation task ONLY and GF110 for display, this is a calculation, there is Is there a way to do this using driver settings, or do I still need to rewrite some of my codes?

In addition, if I understood correctly, if the GK110 display port is not connected, then the annoying window timeout detection will not try to reset, even if the calculation time is very long?

Btw my CUDA codes are compiled with both compute_35 and compute20, so the codes can be run on both GPUs, however I plan to use functions that are exclusive to GK110, so the codes may not work on GF110 at all in the future, and the OS will these are windows 7.

+4
source share
1 answer

With the GeForce GTX Titan (or any GeForce product) on Windows, I don’t believe that there is a way to prevent the GPU from appearing in the system in WDDM mode, which means that windows will build the display driver stack on it, even if there is no physical display on the card attached to it. This way you can get stuck with the TDR window mechanism. You can try experimenting with this to confirm it. (The behavior of TDR in Windows can be changed by hacking the registry).

As for the CUDA control tasks for the GTX Titan, a choice must be provided on the control panel of the display driver. It can be located in the "Manage 3D Settings" area or in some other area, depending on which driver you have. When you find the appropriate settings area, a selection will appear called "CUDA - GPU", which is likely to be set to "All." If you change the Global Presets selection to Basic Profile, you can change this CUDA-GPU setting. Clicking on it should give you a choice of "All" or a set of flags for each detected GPU. If you uncheck the GF110 device and check the GK110 device, then CUDA programs that do not select a specific GPU via cudaSetDevice () should be configured on the GK110 device based on this check box. You can also experiment with this to confirm.

In addition, as indicated in the comments, using the software method, you can always request the properties of the device, and then select the device that reports itself as a cc3.5 device.

+1
source

All Articles