skaushal
skaushal

Reputation: 705

CUDA programming: Is occupancy the way to achieve GPU slicing among different process?

There are ways through which GPU sharing can be achieved. I came across occupancy. Can I use it to slice the GPU among the processes (e.g. tensorflow) which are sharing GPU? slice here means GPU resources are always dedicated to that process. Using occupancy I will get know GPU & SMs details and based on that I launch kernel stating that create blocks for these GPU resources.
I am using NVIDIA Corporation GK210GL [Tesla K80] with cuda 9 toolkit installed
Please suggest. Thanks!

Upvotes: 1

Views: 407

Answers (1)

talonmies
talonmies

Reputation: 72349

There are ways through which GPU sharing can be achieved.

No there aren't. In general, there is no such thing as the type of GPU sharing that you envisage. There is the MPS server for MPI style multi process computing, but that is irrelevant in the context of running Tensorflow (see here for why MPS can't be used).

I came across occupancy. Can I use it to slice the GPU among the processes (e.g. tensorflow) which are sharing GPU?

No you can't. Occupancy is a performance metric. It has nothing whatsoever to do with the ability to share a GPUs resources amongst different processes,

Please suggest

Buy a second GPU.

Upvotes: 6

Related Questions