Forked from Misairu-G/[GUIDE] Optimus laptop dGPU passthrough.md
Last active
November 26, 2017 00:45
-
-
Save mskarbek/5c74a4e84b9e4ebba448a514f945e481 to your computer and use it in GitHub Desktop.
Revisions
-
Misairu-G revised this gist
Nov 25, 2017 . 1 changed file with 1 addition and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -556,11 +556,10 @@ For RemoteFX connection: - Only windowed game can work, full screen will triger d3d11 0x087A0001 cannot set resolution blablabla problem. Media player does not affect by this. - As a solution, use [borderless gaming](https://github.com/Codeusa/Borderless-Gaming) or other equivalence. - Mouse will go wild due to relative mouse is unsupported in RDSH/RDVH connection. - Redirect a XBOX controller or USB joystick might solve this? - [Using Hyper-V for a high-end desktop computer](https://blogs.msdn.microsoft.com/virtual_pc_guy/2011/01/17/using-hyper-v-for-a-high-end-desktop-computer/) - [RemoteFX Question](https://social.technet.microsoft.com/Forums/windowsserver/en-US/28373bb0-d9a6-4876-bf0b-02f2ba6ea6b3/remotefx-question?forum=winserverhyperv) - [Erratic mouse movement in 3D games over RDP with RemoteFX](https://superuser.com/questions/849918/erratic-mouse-movement-in-3d-games-over-rdp-with-remotefx) # Reference -
Misairu-G revised this gist
Nov 25, 2017 . 1 changed file with 10 additions and 3 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -551,9 +551,16 @@ Try nvidia gamestream with moonlight client, or Parsec. Or just pick whatever ha # Known issue For RemoteFX connection: - Only windowed game can work, full screen will triger d3d11 0x087A0001 cannot set resolution blablabla problem. Media player does not affect by this. - As a solution, use [borderless gaming](https://github.com/Codeusa/Borderless-Gaming) or other equivalence. - Mouse will go wild due to relative mouse is unsupported in RDSH/RDVH connection. - Redirect a XBOX controller might solve this? - [Using Hyper-V for a high-end desktop computer](https://blogs.msdn.microsoft.com/virtual_pc_guy/2011/01/17/using-hyper-v-for-a-high-end-desktop-computer/) - [RemoteFX Question](https://social.technet.microsoft.com/Forums/windowsserver/en-US/28373bb0-d9a6-4876-bf0b-02f2ba6ea6b3/remotefx-question?forum=winserverhyperv) - [Erratic mouse movement in 3D games over RDP with RemoteFX](https://superuser.com/questions/849918/erratic-mouse-movement-in-3d-games-over-rdp-with-remotefx) - # Reference -
Misairu-G revised this gist
Nov 23, 2017 . 1 changed file with 1 addition and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -130,8 +130,7 @@ For people who encounter Code 43 with a MUXless scheme. Here are some speculatio 3. Nvidia driver don't allow MUXless dGPU running independently by checking SSID/SVID. Maybe a proper masqueraded SSID/SVID can fool the Nvidia driver and make it work. (SSID/SVID can be found inside Nvidia driver, by extracting it with WinRAR or some other tools. Follow [this guide](http://null-bin.blogspot.com/2015/08/how-to-modify-nvidia-notebook-driver.html)) 4. You need both a MUXed dGPU ROM and its corresponding SSID/SVID. 5. Nvidia driver try to read your dGPU ROM from system BIOS instead of using the ROM you provided through vfio-pci (this is actually how a real MUXless dGPU get its ROM). Maybe some patch for OVMF will make it work. (Credit to jscinoz from reddit) 6. ~~MUXless non-MXM dGPU don't support running independently due to hardware limitation. No fix.~~ Should not be a problem. Clevo P650RG is a MUXed laptop with soldered dGPU. This laptop also support G-Sync (with appropriate display panel and GPU of casue) when using Discrete mode, and its MSHybrid mode stands for Optimus). # Bumblebee setup guide -
Misairu-G revised this gist
Nov 23, 2017 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -131,7 +131,7 @@ For people who encounter Code 43 with a MUXless scheme. Here are some speculatio 4. You need both a MUXed dGPU ROM and its corresponding SSID/SVID. 5. Nvidia driver try to read your dGPU ROM from system BIOS instead of using the ROM you provided through vfio-pci (this is actually how a real MUXless dGPU get its ROM). Maybe some patch for OVMF will make it work. (Credit to jscinoz from reddit) 6. ~~MUXless non-MXM dGPU don't support running independently due to hardware limitation. No fix.~~ - Should not be a problem. Clevo P650RG is a MUXed laptop with soldered dGPU. This laptop also support G-Sync when using Discrete mode (and MSHybrid mode stands for Optimus). # Bumblebee setup guide -
Misairu-G revised this gist
Nov 23, 2017 . 1 changed file with 2 additions and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -130,7 +130,8 @@ For people who encounter Code 43 with a MUXless scheme. Here are some speculatio 3. Nvidia driver don't allow MUXless dGPU running independently by checking SSID/SVID. Maybe a proper masqueraded SSID/SVID can fool the Nvidia driver and make it work. (SSID/SVID can be found inside Nvidia driver, by extracting it with WinRAR or some other tools. Follow [this guide](http://null-bin.blogspot.com/2015/08/how-to-modify-nvidia-notebook-driver.html)) 4. You need both a MUXed dGPU ROM and its corresponding SSID/SVID. 5. Nvidia driver try to read your dGPU ROM from system BIOS instead of using the ROM you provided through vfio-pci (this is actually how a real MUXless dGPU get its ROM). Maybe some patch for OVMF will make it work. (Credit to jscinoz from reddit) 6. ~~MUXless non-MXM dGPU don't support running independently due to hardware limitation. No fix.~~ - Should not be a problem. Clevo P650RG is a MUXed laptop with soldered dGPU. This laptop also support G-Sync when using Discrete mode (and MSHybrid mode stands for Optimus). # Bumblebee setup guide -
Misairu-G revised this gist
Nov 23, 2017 . 1 changed file with 7 additions and 5 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -120,20 +120,22 @@ Now for switchable graphics, there are three different solutions: MUXed(Old), MU  Most modern Optimus laptop use MUXless scheme, while some others, HP/Thinkpad/Dell mobile workstation, Clevo P650, some Alienware, etc. use MUXed scheme. At the dark age before Optimus solution came out, there is an old MUXed scheme which require reboot to switch graphics card and can only use one at a time, while the modern MUXed allow switch between Optimus and dGPU only, and can even have display output port hooked directly to the dGPU when using Optimus. The only thing unchanged is you need to get in BIOS to switch between these modes. For people who encounter Code 43 with a MUXless scheme. Here are some speculations (read the [dGPU passthrough guide](#dgpu-passthrough-guide) first if you cannot understand things below): 1. Your ROM don't support UEFI. 2. ROM for MUXless dGPU don't support running independently. Maybe a ROM from dGPU who support MUXed will fix this. - As all MXM GPU can be install in a MUXed laptop, ROM from MXM GPU should work. 3. Nvidia driver don't allow MUXless dGPU running independently by checking SSID/SVID. Maybe a proper masqueraded SSID/SVID can fool the Nvidia driver and make it work. (SSID/SVID can be found inside Nvidia driver, by extracting it with WinRAR or some other tools. Follow [this guide](http://null-bin.blogspot.com/2015/08/how-to-modify-nvidia-notebook-driver.html)) 4. You need both a MUXed dGPU ROM and its corresponding SSID/SVID. 5. Nvidia driver try to read your dGPU ROM from system BIOS instead of using the ROM you provided through vfio-pci (this is actually how a real MUXless dGPU get its ROM). Maybe some patch for OVMF will make it work. (Credit to jscinoz from reddit) 6. MUXless non-MXM dGPU don't support running independently due to hardware limitation. No fix. # Bumblebee setup guide **Note**: For people who don't want to setup bumblebee, follow [this](https://www.reddit.com/r/VFIO/comments/7d27sz/you_can_now_passthrough_your_dgpu_as_you_wish/dpvwka6/) to get your GPU's ACPI address, and power it on/off by refering script [here](https://www.reddit.com/r/VFIO/comments/7d27sz/you_can_now_passthrough_your_dgpu_as_you_wish/dpvubpd/). (Credit to Verequies from reddit) **Note**: You might need to disable secure boot before following this guide. **Note**: This bumblebee setup is based on [this guide](https://gist.github.com/whizzzkid/37c0d365f1c7aa555885d102ec61c048). Thank you whizzzkid. -
Misairu-G revised this gist
Nov 23, 2017 . 1 changed file with 2 additions and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -43,6 +43,8 @@ Depends on your hardware, you can have a laptop that:  \*This is my laptop running in Optimus mode with a 1080p@120Hz panel (I swapped the original 1080p@60Hz myself) and a MXM form factor Quadro P5000(QS). This laptop is MUXed. # Prerequisites With all that said, this tutorial does not mean any laptop with a Optimus setup will be able to passthrough their dGPU. Generally, a pretty high end laptop is still required, and it is highly possible you will success if you have a laptop that use a swappable MXM form factor graphics card. -
Misairu-G revised this gist
Nov 23, 2017 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -438,7 +438,7 @@ We will first go through my bumblebee setup process. I did install bumblebee fir - Enable remote desktop in Windows VM: - Right click `This PC`, click `Remote settings` in the right panel. - Verify that your GPU have correct the hardware ID. `Device manager` -> double click your dGPU -> `Detail`tab -> `Hardware Ids` - For me, its `PCI\VEN_10DE&DEV_1BB6&SUBSYS_07B11028`. I'll get `PCI\VEN_10DE&DEV_1BB6&SUBSYS_00000000` if I did't have it masqueraded. - In some cases, you will find your dGPU as a `Video controller(VGA compatible)` under `Unknown Device` before your install nvidia driver. - Install the official nvidia driver. - If everything goes smoothly, you will now be able to see your GPU within `Performance` tab in `Task Manager`. -
Misairu-G revised this gist
Nov 23, 2017 . 1 changed file with 2 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -118,7 +118,7 @@ Now for switchable graphics, there are three different solutions: MUXed(Old), MU  Most modern Optimus laptop use MUXless scheme, while some others, HP/Thinkpad/Dell mobile workstation, Clevo P650, etc. use MUXed scheme. At the dark age before Optimus solution came out, there is an old MUXed scheme which require reboot to switch graphics card and can only use one at a time, while the modern MUXed allow switch between Optimus and dGPU only, and can even have display output port hooked directly to the dGPU when using Optimus. The only thing unchanged is you need to get in BIOS to switch between these modes. For people who encounter Code 43 with a MUXless scheme. Here are some speculations (read the [dGPU passthrough guide](#dgpu-passthrough-guide) if you cannot understand things below): @@ -127,7 +127,7 @@ For people who encounter Code 43 with a MUXless scheme. Here are some speculatio - As all MXM dGPU card can be install in a MUXed laptop, ROM from MXM GPU should work. 3. Nvidia driver don't allow MUXless dGPU running independently by checking SSID/SVID. Maybe a proper masqueraded SSID/SVID can fool the Nvidia driver and make it work. 4. You need both a MUXed dGPU ROM and its corresponding SSID/SVID. (SSID/SVID can be found inside Nvidia driver, by extracting it with WinRAR or some other tools. Follow [this guide](http://null-bin.blogspot.com/2015/08/how-to-modify-nvidia-notebook-driver.html)) 5. Nvidia driver try to read your dGPU ROM from system BIOS instead of using the ROM you provided through vfio-pci (this is actually how a real MUXless dGPU get its ROM). Maybe some patch for OVMF will make it work. (Credit to jscinoz from reddit) 6. MUXless non-MXM dGPU don't support running independently due to hardware limitation. No fix. # Bumblebee setup guide -
Misairu-G revised this gist
Nov 22, 2017 . 1 changed file with 6 additions and 5 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -122,12 +122,13 @@ Most modern Optimus laptop use MUXless scheme, while some others, HP/Thinkpad/De For people who encounter Code 43 with a MUXless scheme. Here are some speculations (read the [dGPU passthrough guide](#dgpu-passthrough-guide) if you cannot understand things below): 1. Your ROM don't support UEFI. 2. ROM for MUXless dGPU don't support running independently. Maybe a ROM from dGPU who support MUXed will fix this. - As all MXM dGPU card can be install in a MUXed laptop, ROM from MXM GPU should work. 3. Nvidia driver don't allow MUXless dGPU running independently by checking SSID/SVID. Maybe a proper masqueraded SSID/SVID can fool the Nvidia driver and make it work. 4. You need both a MUXed dGPU ROM and its corresponding SSID/SVID. (SSID/SVID can be found inside Nvidia driver, by extracting it with WinRAR or some other tools. Follow [this guide](http://null-bin.blogspot.com/2015/08/how-to-modify-nvidia-notebook-driver.html)) 5. Nvidia driver try to read your dGPU ROM from system BIOS instead of using the ROM you provided through vfio-pci (this is actually how a real MUXless dGPU get its ROM). Maybe some patch for OVMF will make it work. 6. MUXless non-MXM dGPU don't support running independently due to hardware limitation. No fix. # Bumblebee setup guide -
Misairu-G revised this gist
Nov 22, 2017 . 1 changed file with 24 additions and 4 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -6,6 +6,7 @@ - [Prerequisites](#prerequisites) - [Hardware](#hardware) - [System & Software](#system--software) - [Update: Attention for MUXless laptop](#update-attention-for-muxless-laptop) - [Bumblebee setup guide](#bumblebee-setup-guide) - [dGPU passthrough guide](#dgpu-passthrough-guide) - [System & Environment setup](#system--environment-setup) @@ -64,9 +65,11 @@ With all that said, this tutorial does not mean any laptop with a Optimus setup - Example: - ``` # output from lspci: # 00:01.0 PCI bridge: Intel Corporation Sky Lake PCIe Controller (x16) (rev 05) # 01:00.0 VGA compatible controller: NVIDIA Corporation Device 1bb6 (rev a1) # output from dmesg [ 0.000000] DMAR: IOMMU enabled [ 0.086383] DMAR-IR: IOAPIC id 2 under DRHD base 0xfed91000 IOMMU 1 [ 1.271222] iommu: Adding device 0000:00:00.0 to group 0 @@ -93,8 +96,6 @@ With all that said, this tutorial does not mean any laptop with a Optimus setup - Here the GPU and its root port are in the same group, and there is no other device in this group, thus make it a decent IOMMU layout. ## System & Software - Host: @@ -106,8 +107,27 @@ With all that said, this tutorial does not mean any laptop with a Optimus setup - Currently running a Intel GVT-g version QEMU (2.9.0, for testing iGPU virtualization), other main stream QEMU should also work. - RDP Client: - Freerdp 2.0 or above for RDP 8 with RemoteFX connection. **Note**: Keep your dual-boot Windows if you want to use software like XTU. ## Update: Attention for MUXless laptop Not sure anyone succeseded with a MUXless laptop yet (Or failed with a MUXed laptop). If you do, please leave a comment with your setup (laptop model, what ROM for your GPU and what SSID/SVID are you using). Consider this as a request. Now for switchable graphics, there are three different solutions: MUXed(Old), MUXless and MUXed(New)  Most modern Optimus laptop use MUXless scheme, while some others, HP/Thinkpad/Dell mobile workstation, Clevo P650, etc. use MUXed scheme. At the dark age before Optimus solution came out, there is an old MUXed scheme which require reboot to switch graphics card and can only use one at a time, while the modern MUXed allow switch between Optimus or dGPU only, and can even have display output port hooked directly to the dGPU when using Optimus. The only thing unchanged is you need to get in BIOS to switch between these modes. For people who encounter Code 43 with a MUXless scheme. Here are some speculations (read the [dGPU passthrough guide](#dgpu-passthrough-guide) if you cannot understand things below): 1. ROM for MUXless dGPU don't support running independently. Maybe a ROM from dGPU who support MUXed will fix this. - As all MXM dGPU card can be install in a MUXed laptop, ROM from MXM GPU should work. 2. Nvidia driver don't allow MUXless dGPU running independently by checking SSID/SVID. Maybe a proper masqueraded SSID/SVID can fool the Nvidia driver and make it work. 3. You need both a MUXed dGPU ROM and its corresponding SSID/SVID. (SSID/SVID can be found inside Nvidia driver, by extracting it with WinRAR or some other tools. Follow [this guide](http://null-bin.blogspot.com/2015/08/how-to-modify-nvidia-notebook-driver.html)) 4. Nvidia driver try to read your dGPU ROM from system BIOS instead of using the ROM you provided through vfio-pci (this is actually how a real MUXless dGPU get its ROM). Maybe some patch for OVMF will make it work. 5. MUXless non-MXM dGPU don't support running independently due to hardware limitation. No fix. # Bumblebee setup guide -
Misairu-G revised this gist
Nov 22, 2017 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -526,7 +526,7 @@ Try nvidia gamestream with moonlight client, or Parsec. Or just pick whatever ha # Known issue For RemoteFX connection, only windowed game can work, full screen will triger d3d11 0x087A0001 cannot set resolution blablabla problem. Media player does not affect by this. As a solution, use [borderless gaming](https://github.com/Codeusa/Borderless-Gaming) or other equivalence. -
Misairu-G revised this gist
Nov 22, 2017 . 1 changed file with 3 additions and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -526,7 +526,9 @@ Try nvidia gamestream with moonlight client, or Parsec. Or just pick whatever ha # Known issue For RemoteFX connection, only windowed game can work, full screen will triger d3d11 0x087A0001 cannot set resolution balblabla problem. Media player doesn't not affect by this. As a solution, use [borderless gaming](https://github.com/Codeusa/Borderless-Gaming) or other equivalence. # Reference -
Misairu-G revised this gist
Nov 19, 2017 . 1 changed file with 2 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -459,7 +459,7 @@ Lifting 30-ish fps restriction: 5. Right-click **DWMFRAMEINTERVAL**, click **Modify**. 6. Click **Decimal**, type 15 in the **Value data** box, and then click **OK**. This sets the maximum frame rate to 60 frames per second (FPS). Verify codec usage and fine tuning your frame rate: - Bring up your task manager, if a simple start menu pop-up animation (Windows 10) could consume you 40+ Mbps, then you are NOT using RemoteFX codec but just vanilla RDP. With a 1600x900 resolution, the start menu pop-up animation should consume a bandwidth less than 25 Mbps, while a 1600x900 Heaven benchmark consume less than 170 Mbps at peak. - Fire up a benchmark like Unigine Heaven in the VM, check if your dGPU can maintain a higher than 90~95% utility stably. If not, tune down your resolution and try again. You will find a sweet spot that suits your hardware. @@ -492,7 +492,7 @@ Well, except for laptop that use MXM graphics card, vBIOS of onboard graphics ca - For the record, I did success without `romfile` option, but there is no guarantee for this approach. - For MXM graphics card, try using nvflash instead of GPU-Z. (In Windows) Disable your dGPU in device manager and run command `nvflash -6 xxx.rom` with privilege will extract your vBIOS as xxx.rom (This is the way I did). Try different version of nvflash if you fail. - For on board GPU: - Put the AFUDOS.EXE (or other BIOS backup tool depending on your BIOS) in a DOS-bootable USB device, then use it to extract your entire BIOS. - Then boot to windows and use PhoenixTool (or other similar tools) to extract modules contain in that BIOS. - Noted that those extracted modules will have weird name thus you can't be sure which one is for your onboard graphics card. - Finally use some vBIOS Tweaker (MaxwellBiosTweaker or Mobile Pascal Tweaker or other equivalence) to find out which module is your vBIOS. -
Misairu-G revised this gist
Nov 16, 2017 . 1 changed file with 6 additions and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -459,11 +459,16 @@ Lifting 30-ish fps restriction: 5. Right-click **DWMFRAMEINTERVAL**, click **Modify**. 6. Click **Decimal**, type 15 in the **Value data** box, and then click **OK**. This sets the maximum frame rate to 60 frames per second (FPS). Verification codec usage and fine tuning your frame rate: - Bring up your task manager, if a simple start menu pop-up animation (Windows 10) could consume you 40+ Mbps, then you are NOT using RemoteFX codec but just vanilla RDP. With a 1600x900 resolution, the start menu pop-up animation should consume a bandwidth less than 25 Mbps, while a 1600x900 Heaven benchmark consume less than 170 Mbps at peak. - Fire up a benchmark like Unigine Heaven in the VM, check if your dGPU can maintain a higher than 90~95% utility stably. If not, tune down your resolution and try again. You will find a sweet spot that suits your hardware. - For those don't concern much about image quality, try adding `/gfx-h264:AVC444` option to your FreeRDP script. This will use RDP 8.1 with H.264 444 codec, which consume only 20~30-ish bandwidth even when runing full window Heaven benchmark. But artifacts this codec bring is more than noticeable. For gaming: - 1600x900 or lower resolution RFX connection is recommended for most Core i7 laptop. - 1080p connection with game running at 1600x900 windowed mode have the same performance as above. For other task: -
Misairu-G revised this gist
Nov 16, 2017 . 1 changed file with 6 additions and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -20,6 +20,7 @@ - [What about GVT-g? Can I replicate a Optimus system inside a VM?](#what-about-gvt-g-can-i-replicate-a-optimus-system-inside-a-vm) - [What about those bare-bone laptop?](#what-about-those-bare-bone-laptop) - [Options other than RemoteFX?](#options-other-than-remotefx) - [Known issue](#known-issue) - [Reference](#reference) Just like most of you, and partially because of the lack of success report, I once thought that this is a mission impossible for a laptop. But here we are, with the lack of words to express my excitement, I am now sharing my success and this tutorial to help you achieve the goal you might have been striving for so long. @@ -461,6 +462,7 @@ Lifting 30-ish fps restriction: For gaming: - 1600x900 or lower resolution RFX connection is recommended for most Core i7 laptop. - 1080p connection with game running at 1600x900 windowed mode have the same performance as above. - Fire a benchmark like Unigine Heaven in VM, check if your dGPU can maintain a higher than 90~95% utility stably. If not, tune down your connection resolution and try again. You will find a sweet spot that suits your hardware. For other task: @@ -517,6 +519,10 @@ For those bare-bone laptops who have two dGPUs, passing one to your VM sounds pr Try nvidia gamestream with moonlight client, or Parsec. Or just pick whatever handful for you. # Known issue For RemoteFX connection, only windowed game can work, full screen will triger d3d11 0x087A0001 cannot set resolution problem. Media player doesn't not affect by this. # Reference [XPS-15 9560 Getting Nvidia To Work on KDE Neon](https://gist.github.com/whizzzkid/37c0d365f1c7aa555885d102ec61c048) -
Misairu-G revised this gist
Nov 16, 2017 . 1 changed file with 2 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -11,7 +11,7 @@ - [System & Environment setup](#system--environment-setup) - [Prepare your script](#prepare-your-script) - [Run your VM and configure guest side](#run-your-vm-and-configure-guest-side) - [RemoteFX configure and fine tuning](#remotefx-configure-and-fine-tuning) - [External display setup](#external-display-setup) - [FAQ](#faq) - [How did you extract you vBIOS?](#how-did-you-extract-you-vbios) @@ -442,7 +442,7 @@ Configure RemoteFX FreeRDP client configuration: - Make sure your have FreeRDP 2.0 (Do NOT use Remmina from Ubuntu Official PPA) - Compile one yourself or get a nightly build from [here](https://ci.freerdp.com/job/freerdp-nightly-binaries/) - Get your Windows VM IP address (or assign a static one), here we use `192.168.99.2` as an example. - `xfreerdp /v:192.168.99.2:3389 /w:1600 /h:900 /bpp:32 +clipboard +fonts /gdi:hw /rfx /rfx-mode:video /sound:sys:pulse +menu-anims +window-drag` -
Misairu-G revised this gist
Nov 16, 2017 . 1 changed file with 62 additions and 54 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -8,6 +8,9 @@ - [System & Software](#system--software) - [Bumblebee setup guide](#bumblebee-setup-guide) - [dGPU passthrough guide](#dgpu-passthrough-guide) - [System & Environment setup](#system--environment-setup) - [Prepare your script](#prepare-your-script) - [Run your VM and configure guest side](#run-your-vm-and-configure-guest-side) - [Fine tuning RemoteFX](#fine-tuning-remotefx) - [External display setup](#external-display-setup) - [FAQ](#faq) @@ -16,6 +19,7 @@ - [What about AMD dGPU?](#what-about-amd-dgpu) - [What about GVT-g? Can I replicate a Optimus system inside a VM?](#what-about-gvt-g-can-i-replicate-a-optimus-system-inside-a-vm) - [What about those bare-bone laptop?](#what-about-those-bare-bone-laptop) - [Options other than RemoteFX?](#options-other-than-remotefx) - [Reference](#reference) Just like most of you, and partially because of the lack of success report, I once thought that this is a mission impossible for a laptop. But here we are, with the lack of words to express my excitement, I am now sharing my success and this tutorial to help you achieve the goal you might have been striving for so long. @@ -61,7 +65,7 @@ With all that said, this tutorial does not mean any laptop with a Optimus setup - ``` # 00:01.0 PCI bridge: Intel Corporation Sky Lake PCIe Controller (x16) (rev 05) # 01:00.0 VGA compatible controller: NVIDIA Corporation Device 1bb6 (rev a1) [ 0.000000] DMAR: IOMMU enabled [ 0.086383] DMAR-IR: IOAPIC id 2 under DRHD base 0xfed91000 IOMMU 1 [ 1.271222] iommu: Adding device 0000:00:00.0 to group 0 @@ -100,7 +104,7 @@ With all that said, this tutorial does not mean any laptop with a Optimus setup - QEMU: - Currently running a Intel GVT-g version QEMU (2.9.0, for testing iGPU virtualization), other main stream QEMU should also work. - RDP Client: - Freerdp 2.0 or above for RDP 8 with RemoteFX connection. **Note**: Keep your dual-boot Windows if you want to use software like XTU. @@ -253,6 +257,8 @@ We will first go through my bumblebee setup process. I did install bumblebee fir # dGPU passthrough guide ## System & Environment setup 1. Set up QEMU: - QEMU from Ubuntu official PPA should work, just `sudo apt install qemu-kvm qemu-utils qemu-efi ovmf`. @@ -287,11 +293,7 @@ We will first go through my bumblebee setup process. I did install bumblebee fir sudo checkinstall ``` 2. Setup kernel module and parameters: - Add `intel_iommu=on,igfx_off kvm.ignore_msrs=1` to `GRUB_CMDLINE_LINUX_DEFAULT` in `/etc/default/grub`, then `sudo update-grub`. @@ -313,18 +315,20 @@ We will first go through my bumblebee setup process. I did install bumblebee fir - `lsmod` for verification. 3. (Optional) Setup hugepages - Check `cat /proc/cpuinfo` see if it has the `pse` flag (for 2MB pages) or the `pdpe1gb` flag (for 1GB pages) - For `pdpe1gb`: - Add `default_hugepagesz=1G hugepagesz=1G hugepages=8 transparent_hugepage=never` to `GRUB_CMDLINE_LINUX_DEFAULT` in `/etc/default/grub`, this will assign a 8GB huge page. - For `pse`: - Add `default_hugepagesz=2M hugepagesz=2M hugepages=4096 transparent_hugepage=never` to `GRUB_CMDLINE_LINUX_DEFAULT` in `/etc/default/grub`, this does the same thing above. - `sudo update-grub` when finish. - Reboot. - `ls /dev | grep hugepages` for verification. ## Prepare your script 1. Get your Subsystem ID (SSID) and Subsystem Vendor ID (SVID): - Run `optirun lspci -nnk -s 01:00.0`, you will get an output like this: @@ -337,7 +341,7 @@ We will first go through my bumblebee setup process. I did install bumblebee fir - Here, `1028` is the SVID and `07b1` is the SSID. We will use them later. 2. Setup VM: - **Note**: Command here just serve as a reference, check QEMU documentation for more detail. @@ -352,7 +356,6 @@ We will first go through my bumblebee setup process. I did install bumblebee fir - Create two script for tap networking: - tap_ifup (check file below in this gist) - tap_ifdown (check file below in this gist) - Use `dpkg -L ovmf` to locate your `OVMF_VARS.fd` file, copy that to the directory where you store your VM image, then rename it to `WIN_VARS.fd`(or other names you like). @@ -401,48 +404,49 @@ We will first go through my bumblebee setup process. I did install bumblebee fir -device virtio-net-pci,netdev=net0,addr=19.0,mac=<address your generate> ``` ## Run your VM and configure guest side 1. Binding your dGPU to vfio-pci driver: - `echo "10de 1bb6" > "/sys/bus/pci/drivers/vfio-pci/new_id"` 2. Run the QEMU launching script - Install your Windows system through host side VNC (`127.0.0.1:5901`). - Add `192.168.99.0/24` to your Windows VM firewall exception: - In `Control Panel\System and Security\Windows Defender Firewall`, click `Advance settings` in the right panel, and `Inbound Rules` -> `New rules`. - Make sure you can `ping` to your VM from host. - Enable remote desktop in Windows VM: - Right click `This PC`, click `Remote settings` in the right panel. - Verify that your GPU have correct the hardware ID. `Device manager` -> double click your dGPU -> `Detail`tab -> `Hardware Ids` - For me, its `PCI\VEN_10DE&DEV_1BB6&SUBSYS_07B11028` - In some cases, you will find your dGPU as a `Video controller(VGA compatible)` under `Unknown Device` before your install nvidia driver. - Install the official nvidia driver. - If everything goes smoothly, you will now be able to see your GPU within `Performance` tab in `Task Manager`. 3. Post VM shut down operation: - Unbind your dGPU from vfio-pci driver, `echo "0000:01:00.0" > "/sys/bus/pci/drivers/vfio-pci/0000:01:00.0/driver/unbind"` - Power off your dGPU, `echo "OFF" >> /proc/acpi/bbswitch` - Run `optirun nvidia-smi` for verification. ## RemoteFX configure and fine tuning Configure RemoteFX 1. Run `gpedit.msc` through `Win`+`R`. 2. Locate yourself to `Computer Configuration` -> `Administrative Templates` -> `Windows Components` -> `Remote Desktop Service` -> `Remote Desktop Session Host` -> `Remote Session Environment` - Enable `Use advanced RemoteFX graphics for RemoteApp` - (Optional) Enable `Configure image quality for RemoteFX adaptive Graphics`, set it to `High` - Enable `Enable RemoteFX encoding for RemoteFX clients designed for Windows Servier 2008 R2 SP1` - Enable `Configure compression for RemoteFX data`, set it to `Do not use an RDP compression algorithm` - Connection compression will result extra latency for encode and decode, we don't want this. 3. Locate yourself to `Computer Configuration` -> `Administrative Templates` -> `Windows Components` -> `Remote Desktop Service` -> `Remote Desktop Session Host` -> `Remote Session Environment` -> `RemoteFX for Windows Server 2008 R2` - Enable `Configure RemoteFX` - (Optional) Enable `Optimize visual experience when using RemoteFX`, set both option to `Highest`. FreeRDP client configuration: - Make sure your have FreeRDP 2.0 - Compile one yourself or get a nightly build from [here](https://ci.freerdp.com/job/freerdp-nightly-binaries/) - Get your Windows VM IP address (or assign a static one), here we use `192.168.99.2` as an example. - `xfreerdp /v:192.168.99.2:3389 /w:1600 /h:900 /bpp:32 +clipboard +fonts /gdi:hw /rfx /rfx-mode:video /sound:sys:pulse +menu-anims +window-drag` - Refer [here](https://github.com/awakecoding/FreeRDP-Manuals/blob/master/User/FreeRDP-User-Manual.markdown) for more detail. Lifting 30-ish fps restriction: @@ -509,6 +513,10 @@ Bare-bone laptop with desktop CPU already have their iGPU disabled in a way you For those bare-bone laptops who have two dGPUs, passing one to your VM sounds pretty possible. Though, be sure to take extra care if you have two identical dGPU. Check [here](https://wiki.archlinux.org/index.php/PCI_passthrough_via_OVMF#Using_identical_guest_and_host_GPUs) for more detail. ## Options other than RemoteFX? Try nvidia gamestream with moonlight client, or Parsec. Or just pick whatever handful for you. # Reference [XPS-15 9560 Getting Nvidia To Work on KDE Neon](https://gist.github.com/whizzzkid/37c0d365f1c7aa555885d102ec61c048) -
Misairu-G revised this gist
Nov 16, 2017 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -418,7 +418,7 @@ We will first go through my bumblebee setup process. I did install bumblebee fir - In some cases, you will find your dGPU as a `Video controller(VGA compatible)` under `Unknown Device` before your install nvidia driver. - Install the official nvidia driver. - If everything goes smoothly, you will now be able to see your GPU within `Performance` tab in `Task Manager`. - **!!!Important!!!** Configure RemoteFX - Run `gpedit.msc` through `Win`+`R`. - Locate yourself to `Computer Configuration` -> `Administrative Templates` -> `Windows Components` -> `Remote Desktop Service` -> `Remote Desktop Session Host` -> `Remote Session Environment` - Enable `Use advanced RemoteFX graphics for RemoteApp` -
Misairu-G revised this gist
Nov 16, 2017 . 1 changed file with 3 additions and 3 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -418,13 +418,13 @@ We will first go through my bumblebee setup process. I did install bumblebee fir - In some cases, you will find your dGPU as a `Video controller(VGA compatible)` under `Unknown Device` before your install nvidia driver. - Install the official nvidia driver. - If everything goes smoothly, you will now be able to see your GPU within `Performance` tab in `Task Manager`. - **(!!!Important!!!)** Configure RemoteFX - Run `gpedit.msc` through `Win`+`R`. - Locate yourself to `Computer Configuration` -> `Administrative Templates` -> `Windows Components` -> `Remote Desktop Service` -> `Remote Desktop Session Host` -> `Remote Session Environment` - Enable `Use advanced RemoteFX graphics for RemoteApp` - (Optional) Enable `Configure image quality for RemoteFX adaptive Graphics`, set it to `High` - Enable `Enable RemoteFX encoding for RemoteFX clients designed for Windows Servier 2008 R2 SP1` - Enable `Configure compression for RemoteFX data`, set it to `Do not use an RDP compression algorithm` - Connection compression will result extra latency for encode and decode, we don't want this. - Locate yourself to `Computer Configuration` -> `Administrative Templates` -> `Windows Components` -> `Remote Desktop Service` -> `Remote Desktop Session Host` -> `Remote Session Environment` -> `RemoteFX for Windows Server 2008 R2` - Enable `Configure RemoteFX` -
Misairu-G revised this gist
Nov 16, 2017 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -418,7 +418,7 @@ We will first go through my bumblebee setup process. I did install bumblebee fir - In some cases, you will find your dGPU as a `Video controller(VGA compatible)` under `Unknown Device` before your install nvidia driver. - Install the official nvidia driver. - If everything goes smoothly, you will now be able to see your GPU within `Performance` tab in `Task Manager`. - **Configure RemoteFX** - Run `gpedit.msc` through `Win`+`R`. - Locate yourself to `Computer Configuration` -> `Administrative Templates` -> `Windows Components` -> `Remote Desktop Service` -> `Remote Desktop Session Host` -> `Remote Session Environment` - Enable `Use advanced RemoteFX graphics for RemoteApp` -
Misairu-G revised this gist
Nov 16, 2017 . 1 changed file with 6 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,3 +1,5 @@ [Reddit post](https://www.reddit.com/r/VFIO/comments/7d27sz/you_can_now_passthrough_your_dgpu_as_you_wish/) #### Table of Content - [What to expect?](#what-to-expect) @@ -16,8 +18,6 @@ - [What about those bare-bone laptop?](#what-about-those-bare-bone-laptop) - [Reference](#reference) Just like most of you, and partially because of the lack of success report, I once thought that this is a mission impossible for a laptop. But here we are, with the lack of words to express my excitement, I am now sharing my success and this tutorial to help you achieve the goal you might have been striving for so long. # What to expect? @@ -33,6 +33,10 @@ Depends on your hardware, you can have a laptop that: - No need for external display (depend on your hardware and the version of Windows your VM running), - Can connect external display directly to your VM (only some machine with specific setup).   # Prerequisites With all that said, this tutorial does not mean any laptop with a Optimus setup will be able to passthrough their dGPU. Generally, a pretty high end laptop is still required, and it is highly possible you will success if you have a laptop that use a swappable MXM form factor graphics card. -
Misairu-G revised this gist
Nov 16, 2017 . 1 changed file with 3 additions and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -16,6 +16,8 @@ - [What about those bare-bone laptop?](#what-about-those-bare-bone-laptop) - [Reference](#reference) [Reddit post](https://www.reddit.com/r/VFIO/comments/7d27sz/you_can_now_passthrough_your_dgpu_as_you_wish/) Just like most of you, and partially because of the lack of success report, I once thought that this is a mission impossible for a laptop. But here we are, with the lack of words to express my excitement, I am now sharing my success and this tutorial to help you achieve the goal you might have been striving for so long. # What to expect? @@ -462,6 +464,7 @@ For other task: External display require a BIOS setting that can rarely be seen on Optimus laptop. - For some Dell laptop (such as mine), There is a `Display port direct output mode` option in `Video` -> `Switchable Graphics`, enable it and it will assign all display port (mDP, HDMI, Thunder Bolt etc.) directly to the dGPU. Check if your BIOS offer some similar options. - To also get the audio output from display port, follow [this guide](https://www.reddit.com/r/VFIO/comments/7d27sz/you_can_now_passthrough_your_dgpu_as_you_wish/dpvwka6/) and [this reference script](https://pastebin.com/zLQPHPQk). Thanks for Verequies from reddit. - However, you will lose your capability to extend your host machine display. As there is no display output port connect to the iGPU, e.g. your host. - While RemoteFX will compress the image in exchange for performance (which is not good if you required extreme image quality for professional use), such problem don't exist for external display setup, as it hook the dGPU directly. -
Misairu-G revised this gist
Nov 15, 2017 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -355,7 +355,7 @@ We will first go through my bumblebee setup process. I did install bumblebee fir - Recall that our GPU have a SVID `1028`, and a SSID `07b1`. Convert these two hexadecimal value to decimal. Which is `4136` for SVID, and `1969` for SSID. Use these two value to set the corresponding vfio-pci options (see script below). - This will solve the SSID/SVID all zero problem inside the VM. - ```shell #!/bin/bash -
Misairu-G revised this gist
Nov 15, 2017 . 1 changed file with 9 additions and 7 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -44,7 +44,7 @@ With all that said, this tutorial does not mean any laptop with a Optimus setup - A motherboard that support IOMMU with decent IOMMU layout e.g. your dGPU is in its own IOMMU group aside from other devices. - For the reason that there is no ACS support for laptop (maybe some bare-bone does) so far, a decent IOMMU layout is crucial since the ACS override patch is not applicable. - Verification: @@ -82,27 +82,27 @@ With all that said, this tutorial does not mean any laptop with a Optimus setup - Here the GPU and its root port are in the same group, and there is no other device in this group, thus make it a decent IOMMU layout. **Note**: If your laptop use a mobile server grade motherboard, e.g. Chipset model that start with letter "C", you are good to go. Most high-end laptop that use MXM graphics card come with a chipset like that. For example, MSI GT72/73, Dell Precision 7000 series mobile workstation. ## System & Software - Host: - I'm currently running Ubuntu 16.04 (with 4.10 kernel), but it should also work on other distribution. - System should be installed in UEFI mode, and boot via UEFI. - Guest: - A Windows that support RemoteFX (If you don't want an external display). The latest Windows 10 Pro for example. - QEMU: - Currently running a Intel GVT-g version QEMU (2.9.0, for testing iGPU virtualization), other main stream QEMU should also work. - RDP Client: - Freerdp 2.0 or above for RDP 8 with RemoteFX connection. **Note**: Keep your dual-boot Windows if you want to use software like XTU. # Bumblebee setup guide **Note**: You might need to disable secure boot before following this guide. **Note**: This bumblebee setup is based on [this guide](https://gist.github.com/whizzzkid/37c0d365f1c7aa555885d102ec61c048). Thank you whizzzkid. We will first go through my bumblebee setup process. I did install bumblebee first and setup passthrough the second. But it should work the other way around. @@ -514,4 +514,6 @@ For those bare-bone laptops who have two dGPUs, passing one to your VM sounds pr [GVTg_Setup_Guide](https://github.com/intel/gvt-linux/wiki/GVTg_Setup_Guide) [CUDA installation guide](http://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html) [Frame rate is limited to 30 FPS in Windows 8 and Windows Server 2012 remote sessions](https://support.microsoft.com/en-us/help/2885213/frame-rate-is-limited-to-30-fps-in-windows-8-and-windows-server-2012-r) -
Misairu-G renamed this gist
Nov 15, 2017 . 1 changed file with 0 additions and 0 deletions.There are no files selected for viewing
File renamed without changes. -
Misairu-G revised this gist
Nov 15, 2017 . 1 changed file with 15 additions and 4 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,9 +1,20 @@ #### Table of Content - [What to expect?](#what-to-expect) - [Prerequisites](#prerequisites) - [Hardware](#hardware) - [System & Software](#system--software) - [Bumblebee setup guide](#bumblebee-setup-guide) - [dGPU passthrough guide](#dgpu-passthrough-guide) - [Fine tuning RemoteFX](#fine-tuning-remotefx) - [External display setup](#external-display-setup) - [FAQ](#faq) - [How did you extract you vBIOS?](#how-did-you-extract-you-vbios) - [Did you success with AMD CPU?](#did-you-success-with-amd-cpu) - [What about AMD dGPU?](#what-about-amd-dgpu) - [What about GVT-g? Can I replicate a Optimus system inside a VM?](#what-about-gvt-g-can-i-replicate-a-optimus-system-inside-a-vm) - [What about those bare-bone laptop?](#what-about-those-bare-bone-laptop) - [Reference](#reference) Just like most of you, and partially because of the lack of success report, I once thought that this is a mission impossible for a laptop. But here we are, with the lack of words to express my excitement, I am now sharing my success and this tutorial to help you achieve the goal you might have been striving for so long. -
Misairu-G revised this gist
Nov 15, 2017 . 1 changed file with 3 additions and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,5 +1,8 @@ #### Table of Content [What to expect?](#what-to-expect) [System & Software](#system--software) [WIP] Just like most of you, and partially because of the lack of success report, I once thought that this is a mission impossible for a laptop. But here we are, with the lack of words to express my excitement, I am now sharing my success and this tutorial to help you achieve the goal you might have been striving for so long. -
Misairu-G revised this gist
Nov 15, 2017 . 1 changed file with 1 addition and 29 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,34 +1,6 @@ #### Table of Content [WIP] Just like most of you, and partially because of the lack of success report, I once thought that this is a mission impossible for a laptop. But here we are, with the lack of words to express my excitement, I am now sharing my success and this tutorial to help you achieve the goal you might have been striving for so long. -
Misairu-G revised this gist
Nov 15, 2017 . 1 changed file with 23 additions and 9 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,19 +1,33 @@ #### Table of Content [What to expect?](#What-to-expect?) [Prerequisites](#Prerequisites) [Hardware](#Hardware) [System & Software](#System-&-Software) [Bumblebee setup guide](#Bumblebee-setup-guide) [dGPU passthrough guide](#dGPU-passthrough-guide) [Fine tuning RemoteFX](#Fine-tuning-RemoteFX) [External display setup](#External-display-setup) [FAQ](#FAQ) [How did you extract you vBIOS?](#How-did-you-extract-you-vBIOS?) [Did you success with AMD CPU?](#Did-you-success-with-AMD-CPU?) [What about AMD dGPU?](#What-about-AMD-dGPU?) [What about GVT-g? Can I replicate a Optimus system inside a VM?](#What-about-GVT-g? Can-I-replicate-a- Optimus-system-inside-a-VM?) [What about those bare-bone laptop?](#What-about-those-bare-bone-laptop?) [Reference](#Reference) Just like most of you, and partially because of the lack of success report, I once thought that this is a mission impossible for a laptop. But here we are, with the lack of words to express my excitement, I am now sharing my success and this tutorial to help you achieve the goal you might have been striving for so long.
NewerOlder