Jump to content

So last year Linus did this 

Is it possible to do the same thing on a single install of windows with Docker and https://github.com/NVIDIA/nvidia-docker?

Build: Intel S2600gz, 2x E5-2670, EVGA SC 1070, Zotac 1060 6GB mini, 48GB Micron 1333mhz ECC DDR3, 2x Intel DPS-750XB 750 watt PSU

https://pcpartpicker.com/user/elerek/saved/3T7D4D

Link to comment
https://linustechtips.com/topic/652664-2-gamers-1-cpu-with-docker/
Share on other sites

Link to post
Share on other sites

No, because Docker doesn't support a gui

 

More on this

 

This ins't gpu passthrough, this is passing through the cuda calls(not the same as a opengl/directx call).

 

Also you limited to running the same os as the host, so linux.

 

Just use a vm using something like Xen, ESXI, Kvm, or virtualbox on linux.

 

Hyper-v(virtualbox and ESXI also have a simmilar solution but its bad) has a vgpu thing so you can have mutiple users on one gpu.

 

If you want a good solution for multiple users on one gpu, you need nvidia tesla's or grid and use their vgpu on citrix xen or esxi.

Link to post
Share on other sites

4 hours ago, Electronics Wizardy said:

No, because Docker doesn't support a gui

 

More on this

 

This ins't gpu passthrough, this is passing through the cuda calls(not the same as a opengl/directx call).

 

Also you limited to running the same os as the host, so linux.

 

Just use a vm using something like Xen, ESXI, Kvm, or virtualbox on linux.

 

Hyper-v(virtualbox and ESXI also have a simmilar solution but its bad) has a vgpu thing so you can have mutiple users on one gpu.

 

If you want a good solution for multiple users on one gpu, you need nvidia tesla's or grid and use their vgpu on citrix xen or esxi.

AMD also has a line of server GPU's designed specifically for ESXi that uses SR-IOV to share a single GPU between multiple VMs. In some ways it's better than Nvidia's solution but of course it depends on your specific application/use case.

 

http://www.tomsitpro.com/articles/amd-firepro-s1750-firepro-s7150x2-hardware-virtualization,1-3129.html

Link to post
Share on other sites

So what about this then? https://www.google.com/url?sa=t&source=web&rct=j&url=https://github.com/thewtex/docker-opengl-nvidia&ved=0ahUKEwjovdWgjO7OAhXB3SYKHQOQCJAQFggbMAA&usg=AFQjCNExVIZcDqHVvSOG1s7laXdN3XV29Q&sig2=rBO8gu1tqH1fTYzkKIiCnA

 

I'm not trying to have multiple people in one gpu, I'm trying to get a docker image to output video on one of two gpus and possibly get a dual headed system without needing to buy two copies of Windows.

Build: Intel S2600gz, 2x E5-2670, EVGA SC 1070, Zotac 1060 6GB mini, 48GB Micron 1333mhz ECC DDR3, 2x Intel DPS-750XB 750 watt PSU

https://pcpartpicker.com/user/elerek/saved/3T7D4D

Link to post
Share on other sites

2 hours ago, Elerek said:

So what about this then? https://www.google.com/url?sa=t&source=web&rct=j&url=https://github.com/thewtex/docker-opengl-nvidia&ved=0ahUKEwjovdWgjO7OAhXB3SYKHQOQCJAQFggbMAA&usg=AFQjCNExVIZcDqHVvSOG1s7laXdN3XV29Q&sig2=rBO8gu1tqH1fTYzkKIiCnA

 

I'm not trying to have multiple people in one gpu, I'm trying to get a docker image to output video on one of two gpus and possibly get a dual headed system without needing to buy two copies of Windows.

Worth a shot, remember take note of the warning in the repo and don't expect good performance, shouldn't be a big issue unless you want to play games from within the docker container.

 

Remember what you are trying to do from a technical standpoint is share a GPU between more than one OS so the fundamental issues still apply between what you are wanting to do and having more than 1 VM using the same GPU.

 

Nvidia's core focus on your original linked git repo is to allow docker containers to use Nvidia server GPUs to do compute tasks and not to output any graphical information.

Link to post
Share on other sites

Okay, I might try it at some point. For now I'm building a vm based system like Linus did with an old server I got for cheap. So far so good there. Maybe in a year or so when docker for windows has gotten better I'll try a docker route. I'm not expecting anything amazing yet, I just really want it to be possible :P In the long run if it is possible to get a gpu and usb devices passed through to a docker and properly isolate them, it could be a more viable means of a multi-headed gaming rig than vms. Not only could you possibly have better performance with less OS overhead, but you could do it on just a single windows license instead of needing 1 for every vm. At least that was my thinking.

Build: Intel S2600gz, 2x E5-2670, EVGA SC 1070, Zotac 1060 6GB mini, 48GB Micron 1333mhz ECC DDR3, 2x Intel DPS-750XB 750 watt PSU

https://pcpartpicker.com/user/elerek/saved/3T7D4D

Link to post
Share on other sites

2 minutes ago, Elerek said:

Okay, I might try it at some point. For now I'm building a vm based system like Linus did with an old server I got for cheap. So far so good there. Maybe in a year or so when docker for windows has gotten better I'll try a docker route. I'm not expecting anything amazing yet, I just really want it to be possible :P In the long run if it is possible to get a gpu and usb devices passed through to a docker and properly isolate them, it could be a more viable means of a multi-headed gaming rig than vms. Not only could you possibly have better performance with less OS overhead, but you could do it on just a single windows license instead of needing 1 for every vm. At least that was my thinking.

Windows Server 2016 is releasing during Microsoft Ignite, September 25~, which has many improvements and includes Hyper-V containers. My work has been part of the early access/RDP/TAP program and I can definitely say Server 2016 has tons of really useful stuff coming, check it out when you can.

 

https://blogs.msdn.microsoft.com/msgulfcommunity/2015/06/20/what-is-windows-server-containers-and-hyper-v-containers/

https://blogs.msdn.microsoft.com/jcorioland/2016/05/31/create-and-run-hyper-v-containers-using-docker-on-windows-10-desktop/

Link to post
Share on other sites

3 hours ago, leadeater said:

Worth a shot, remember take note of the warning in the repo and don't expect good performance, shouldn't be a big issue unless you want to play games from within the docker container.

 

Remember what you are trying to do from a technical standpoint is share a GPU between more than one OS so the fundamental issues still apply between what you are wanting to do and having more than 1 VM using the same GPU.

 

Nvidia's core focus on your original linked git repo is to allow docker containers to use Nvidia server GPUs to do compute tasks and not to output any graphical information.

I don't think it would work at all though. This is only for cuda, no opengl/directx. This would also work with linux if im right(i don't know about docker on windows).

 

You also can't run a X screen from a docker container, so it doesn't matter how much gpu power you have.

Link to post
Share on other sites

1 hour ago, Electronics Wizardy said:

I don't think it would work at all though. This is only for cuda, no opengl/directx. This would also work with linux if im right(i don't know about docker on windows).

 

You also can't run a X screen from a docker container, so it doesn't matter how much gpu power you have.

You're wrong on both of those. That last link is explicitly for enabling opengl in the docker and there are multiple forums where people have talked about ways to get docker to successfully run programs with an x server.

Build: Intel S2600gz, 2x E5-2670, EVGA SC 1070, Zotac 1060 6GB mini, 48GB Micron 1333mhz ECC DDR3, 2x Intel DPS-750XB 750 watt PSU

https://pcpartpicker.com/user/elerek/saved/3T7D4D

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×