Description

Title:Dual GPU usage a possibility? (SLI)
Category:Workflow
Status:Considered
Priority:
Posted By:tobbeo ( Tobbe Olsson )
Date Created:16 October 2015
Description:

Not sure if this is possible but since Nvidia developed Flex for their cards I was hoping they would have support for dual GPUs in SLI mode. Would be so easy to stick another 980 in my box and get double the ram and perhaps not twice the performance, but a fair amound anyway?

Follow Ups

I was actually wondering this myself. I guess one way to test it is totry an SLI setup and see if both GPUs are utilized during simulation.

Marsel Khadiyev (Software Developer, EPHERE Inc.)

If Flex is using CUDA, SLI is not supported by CUDA (multi-gpu depends on how the software can adapt to such situation), if it is not using CUDA I don't know, although in the driver settings it seems pretty clear it's not possible to select more than one GPU for computation. It makes sense because at any moment every GPU involved would need to know the exact position, velocity and whatever else of every particle to interract, which probably wouldn't be possible without sacrificing so much performance in data transfer that it would kill completely the advantage of using multiple GPUs. It's not a 'blind' process like rendering with very little or no data transfer between each GPU. However, Houdini recently showed that their FLIP particle solver can do distributed computation of fluids by splitting it in blocks, and also constrain the computation to the camera frustrum which are leads on how to do such things maybe.

At least that's how I understand it :)

Right, and Flex does use CUDA. I'd still be interested in running some tests with an SLI. If I could find a set up somewhere where I could remote desktop and perform some tests I will surely try it out. I am also looking to see if we can push the limits of particle count and speed on something with a Tesla GPU on it in the future.

Marsel Khadiyev (Software Developer, EPHERE Inc.)

Thanks for info, I guess dual GPUs wouldn't make a difference then unless the chips were on the same card like the Titans.

If flex uses CUDA, then CUDA disables SLI on runtime (in the early version of CUDA it was even mandatory to disable it manually or CUDA would crash). Now is there a possibility to use the SLI connector to get very high speed sync, I don't know but the SLI technology is not supported by CUDA as far as I know.

Wouldn't be possible to use dual GPU without SLI?

I currently use this config to render GPU with vray RT and works like a charm!

When i run the simulation i can see GPU activity only in the main card, not in the second (980ti 6 gb)

Flex does not segment its simulation, everything needs to exist within the same VRAM. So the only way to utilize two GPUs would be to run two separate simulations, that don't interact with one another.

Marsel Khadiyev (Software Developer, EPHERE Inc.)

Flex does not segment its simulation, everything needs to exist within the same VRAM. So the only way to utilize two GPUs would be to run two separate simulations, that don't interact with one another.

It would still be great to have the ability to run 2 independent simulations at once, even if they wont interact with each other. For example, you could partition heavy sims by assigning specific groups to different simulations and then assigning those groups to different GPUs. Right now it could be done by starting another max session, but it would be awesome to have this option in interface.

Thank you for the suggestion, that would be possible to implement.

Marsel Khadiyev (Software Developer, EPHERE Inc.)