VIDEO GUIDE***How to pass through an NVIDIA GPU as primary or only gpu in unRAID


SpaceInvaderOne

Recommended Posts

gridrunner, my mobo is x99-m ws from asus. i could not find an option to change the primary GPU, altogh i searched for it during the last days.

 

checking on internet, maybe asus did not put this option for x99, but only for the platforms with IGP

 

will check again thou

 

the 1060 zotac mini 3g rom file is located here:

http://www.filedropper.com/zotac1060mini3g

 

(please, it's my first time using this file upload service, not sure on reliability or if any issues)

Link to comment

gridrunner, my mobo is x99-m ws from asus. i could not find an option to change the primary GPU, altogh i searched for it during the last days.

 

checking on internet, maybe asus did not put this option for x99, but only for the platforms with IGP

 

will check again thou

 

the 1060 zotac mini 3g rom file is located here:

http://www.filedropper.com/zotac1060mini3g

 

(please, it's my first time using this file upload service, not sure on reliability or if any issues)

 

thanks for the rom file i have added it to the list at top of this post  :)

Link to comment

at least this i can contribute :)

 

regarding asus x99-m ws & chosing the primary GPU - no option like this in my bios.

I have only the "privilege" to see the cards, in a very generic way (e.g. it shows "NVIDIA GPU" for both the cards, but no model).

It also shows the speed for each card (e.g. x8, x16).

 

i guess i'm out of options. probably newer card plays better?

was considering a cheap 710 - anybody having success with it? e.g. dump rom while in second slot, then passthrough while in first slot...

 

-d

Link to comment

at least this i can contribute :)

 

regarding asus x99-m ws & chosing the primary GPU - no option like this in my bios.

I have only the "privilege" to see the cards, in a very generic way (e.g. it shows "NVIDIA GPU" for both the cards, but no model).

It also shows the speed for each card (e.g. x8, x16).

 

i guess i'm out of options. probably newer card plays better?

was considering a cheap 710 - anybody having success with it? e.g. dump rom while in second slot, then passthrough while in first slot...

 

-d

 

I have a couple 710 cards and a 730. I just feed them straight to OS X with no issues. I'll try to post rom's soon.

 

Link to comment

 

I have a couple 710 cards and a 730. I just feed them straight to OS X with no issues. I'll try to post rom's soon.

 

Thanks 1812 - that would help :)

 

i was about to mention this:

"also, please provide the exact model and part number, so that i can order same :)"

 

But, few restarts later, it seems i will stick with 550ti for now, because i have some great news :)

 

I downloaded the rom for 550ti from techpowerup (~60kb).

i just booted into the os, passing through the 550ti, writing now from that os :)

 

Also did some tests for VM restart and power-off then power-on the VM - and it works great! the gpu does not hang after first boot!

 

One thing to note, there are several part numbers for evga 550ti. some cards are 2 gbs, others are 1 gb.

But i can confirm that the rom in techpowerup for my card with part number 01G-P3-1556-PK (so 1 gb ram) is working fine!

 

The link for the rom:

https://www.techpowerup.com/vgabios/102599/EVGA.GTX550ti.1024.110225.rom

 

cheers

-d

 

Link to comment
  • 2 weeks later...

EVGA 1060 SC 6GB (non-SC version posted in the original topic gave me Error 43)

 

P/N 06G-P4-6163-KR

BIOS 86.06.39.00.62

 

Works perfect now, great performance and runs very cool as I was able to undervolt it to 0.903V at only 30 Mhz below stock clockspeed. Never goes above 65% power limit.

 

http://gpuz.techpowerup.com/17/02/02/ega.png

https://www.expirebox.com/download/707fd4d24328be8bc174bc6136d9fcd5.html

Link to comment

EVGA 1060 SC 6GB (non-SC version posted in the original topic gave me Error 43)

 

P/N 06G-P4-6163-KR

BIOS 86.06.39.00.62

 

Works perfect now, great performance and runs very cool as I was able to undervolt it to 0.903V at only 30 Mhz below stock clockspeed. Never goes above 65% power limit.

 

http://gpuz.techpowerup.com/17/02/02/ega.png

https://www.expirebox.com/download/707fd4d24328be8bc174bc6136d9fcd5.html

 

hi lionceau, what was the solution? to undervolt?

 

As much as possible, i would suggest to try dumping the rom yourself - this will ensure best results.

I did so for my 1060 3gb zotac mini, and never encountered an issue.

-d

 

 

Link to comment

hi

 

I want to follow up on my previous posts and to share with the forum my experience while passing through the evga 550ti 1gb GPU.

I'll explain some issues/symptoms and workarounds - hopefully this might help others to troubleshoot similar problems with old cards...

 

 

1) I failed to dump the rom - exact error while dumping: "cat: rom: Input/output error"

This was regardless of 550ti being in use, not in use, VM never initialized, restarted, bind, unbind - and any possible combination of these :) - so i gave up trying

 

2) Passthrough while in second slot, without the rom in xml, works only once per unraid restart.

After start/stop of vm with the 550ti passthrough, consequent attempts to start VM will keep failing - so there's a need to restart the unraid box

 

3) I managed to passthrough 550ti by using the relevant ROM from techpowerup, but it works only partially, because :

- it never worked in first pcie slot - so i had to use second slot. When i tried to use it in first slot, the fan went 100% - abnormal for the card, as it never goes above 70-80% even on when 100% load

- it does not display anything in TEXT mode - so some OS's will not install with this GPU passthrough - as a workaround, i'm installing the OS's with my other GPU (zotac 1060 mini 3g), configure video drivers, etc, then switch back to 550ti. Because of this issue, after starting the VM, there is nothing displayed on the screen till the login, where it switches to Graphic mode.

- Windows 10 VM and Linux Mint 18.1 does not like this card being passthrough, so the trick above did not work at all. I tried with both ovmf and seabios, same result... i vaguely remember that also Elementary OS 0.4 didn't like this card, but i'm not 100% sure, maybe i need to dig more.

Ubuntu Gnome 16.04, Kali 2016.2 and Fedora 25 work ok, either directly or by using this trick to swap the cards after drivers installed.

 

gridrunner, if you will, please add in your OP a small link to this post, as a note to the 550ti rom - to save some frustration...

 

Edit:

1) adding all info in one place: the GPU part number i have is 01G-P3-1556-PK and the exact relevant rom was found in techpowerup. I did not try other roms.

2) despite the small inconveniences, i did not encounter stability problems with this card passthrough via rom file. Once it's initialized in Graphic mode, all is ok!

Link to comment

So I'm a bit confused here. I may have missed something here but in a VM that I have, in the GPU selection area of the GUI settings, I can pick my GeForce 210. When I fire up the VM and install nvidia drivers it shows the GeForce 210 in device manager. I assume that means it's working so what is the idea of doing these bios dumps and editing the XML file to point to that?

 

Sorry if I missed something, I've been away from the community for awhile.

 

Thanks

Link to comment

@zerrikan

 

unraid uses 1 GPU for displaying the console output

usually, that's the integrated GPU.

Or in case of platforms without integrated GPU, unraid will use the GPU in the first pcie slot (a.k.a primary).

 

This guide refers to passing through an NVIDIA primary GPU. Basically telling unraid to give up using that GPU for console, but to use it as passthrough in a VM. A rom file will be required in order for the procedure to work.

 

As of today, one cannot passthrough an NVIDIA primary GPU without doing the steps in this guide.

 

 

to comment on your specific confusion, i assume you have 2 GPU's in your system (Integrated + 210). Passing the non primary GPU 210 to a VM will be easier and might not require the steps in the guide.

 

Link to comment

Thank you for the explanation!

 

At the time of testing yesterday I only had the 210 in there but did not have it connected to a monitor for output. I do plan to pick up a 980 GTX shorty and it sounds like I should just pop that into the 2nd PCIE slot and pass that through to the VM and I would not have to go through this procedure.

 

Edit: Sorry I should explain that at this time I will only be using this VM with GPU passthrough for steam streaming to my laptop and Steam link so I dont need to pass it to a monitor. I should also mention that I recently updated to unraid 6.3.0.

 

@zerrikan

 

unraid uses 1 GPU for displaying the console output

usually, that's the integrated GPU.

Or in case of platforms without integrated GPU, unraid will use the GPU in the first pcie slot (a.k.a primary).

 

This guide refers to passing through an NVIDIA primary GPU. Basically telling unraid to give up using that GPU for console, but to use it as passthrough in a VM. A rom file will be required in order for the procedure to work.

 

As of today, one cannot passthrough an NVIDIA primary GPU without doing the steps in this guide.

 

 

to comment on your specific confusion, i assume you have 2 GPU's in your system (Integrated + 210). Passing the non primary GPU 210 to a VM will be easier and might not require the steps in the guide.

Link to comment

sure

if you see the GPU in the VM definition listed for passthrough, it does not mean that it will work :)

if it's the only GPU in your system (something that you didn't clarify), it will not work (give video output) unless you use the rom trick (this is relevant for NVIDIA; AMD i heard deos not have this issue, but i cannot personally confirm)

Link to comment
  • 3 weeks later...

I was hoping for some help. I have tried this with 5 video cards on two different systems (and three different versions of unraid) and have gotten the same result each time so it has to be something I'm missing.

 

Whenever I go to start a VM with a GPU assigned as the passthrough, I am met with the following:

 

Execution error

 

internal error: process exited while connecting to monitor: 2017-02-24T16:31:08.340691Z qemu-system-x86_64: -device vfio-pci,host=02:00.0,id=hostdev0,bus=pci.0,addr=0x5: vfio: failed to set iommu for container: Operation not permitted
2017-02-24T16:31:08.340724Z qemu-system-x86_64: -device vfio-pci,host=02:00.0,id=hostdev0,bus=pci.0,addr=0x5: vfio: failed to setup container for group 11
2017-02-24T16:31:08.340729Z qemu-system-x86_64: -device vfio-pci,host=02:00.0,id=hostdev0,bus=pci.0,addr=0x5: vfio: failed to get group 11
2017-02-24T16:31:08.340744Z qemu-system-x86_64: -device vfio-pci,host=02:00.0,id=hostdev0,bus=pci.0,addr=0x5: Device initialization failed

 

No amount of googling or searching on unraid forums has explained why this might be happening or how I might fix it. Any ideas?

 

vt-x and vt-d enabled in BIOS, UNRAID 6.3.2, using OVMF and "i440fx-2.7", Windows 10 VM, currently trying to passthrough an Nvidia 1070 Founder's Edition and also have an EVGA GTX 1060 SC 3GB (and several other older cards, 550ti, 8600, etc.), GPU is all alone in IOMMU group 11, Enable PCIe ACS Override set to "No"

Link to comment

@Kudjo

 

Try changing your sys linux config file to add vfio_iommu_type1.allow_unsafe_interrupts=1

 

after the append part

 

so the config file it would look like this.

default /syslinux/menu.c32
menu title Lime Technology, Inc.
prompt 0
timeout 50
label unRAID OS
  menu default
  kernel /bzimage
append vfio_iommu_type1.allow_unsafe_interrupts=1 initrd=/bzroot  
label unRAID OS GUI Mode
  kernel /bzimage
  append initrd=/bzroot,/bzroot-gui
label unRAID OS Safe Mode (no plugins, no GUI)
  kernel /bzimage
  append initrd=/bzroot unraidsafemode
label Memtest86+
  kernel /memtest
Link to comment

rahool, nobody confirmed so far that the dump for zotac 1060 3g mini works for them. lack of evidence does not means it's not working, it's just that probably nobody tried it yet, or bothered to reply it's fine.

 

gridrunner, here's is the rom for zotac 1050ti oc 4g (https://www.newegg.com/Product/Product.aspx?Item=N82E16814500410&cm_re=zotac_1050ti_4g_oc-_-14-500-410-_-Product)

http://www.filedropper.com/zotac1050tioc4g

-d

  • Upvote 1
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.