The Notebook Review forums were hosted by TechTarget, who shut down them down on January 31, 2022. This static read-only archive was pulled by NBR forum users between January 20 and January 31, 2022, in an effort to make sure that the valuable technical information that had been posted on the forums is preserved. For current discussions, many NBR forum users moved over to NotebookTalk.net after the shutdown.
Problems? See this thread at archive.org.

    Retina MBP 15" and UEFI Windows

    Discussion in 'Apple and Mac OS X' started by psyq321, Nov 13, 2012.

  1. psyq321

    psyq321 Notebook Evangelist

    Reputations:
    242
    Messages:
    430
    Likes Received:
    58
    Trophy Points:
    41
    I noticed that if I boot Windows in UEFI mode (skipping BootCamp CSM) both NVidia 650M and Intel HD 4000 are visible - I suppose the CSM actually hides the Intel HD 4000 from the Windows (probably just removing it from PCI space and powering it off).

    Question for people who have experience running UEFI Windows on rMBP 15" - in UEFI mode, do you know if Intel or NVidia GPUs are being used in Windows?

    I assume it has to be only one of them, due to the Apple-specific switching which is probably not supported in vanilla Windows drivers.

    Also, for people using UEFI and Windows, did you notice any difference in battery life? The reason I am asking is that my low discharge rate is approx -16W in Windows installed via BootCamp.

    I checked the discharge rate while running UEFI Windows Installer, and it was -22W - now, it could be very well due to the fact that Windows installer does not have all the power management being active, but I just want to be sure before I remove the BootCamp partition and replace it with UEFI install... my fear is that UEFI Windows keeps Intel HD 4000 somehow active and draining unnecessary power...
     
  2. Speedy Gonzalez

    Speedy Gonzalez Xtreme Notebook Speeder!

    Reputations:
    5,447
    Messages:
    3,143
    Likes Received:
    27
    Trophy Points:
    116
    What about installing nvidia-intel gpu drivers and third party gpu virtualization software like Lucidlogix virtu to dynamically switch between gpu's almost like nvidia optimus
     
  3. Karamazovmm

    Karamazovmm Overthinking? Always!

    Reputations:
    2,365
    Messages:
    9,422
    Likes Received:
    200
    Trophy Points:
    231
    yes the CSM hides a lot of things, including the HD 4000. If you do a UEFI install, you are going to be faced with switchable gpus. I never measured the power draw, I dont have the tools, nor I do use the rmbp on battery on windows. But I suppose its going to be a smaller power draw
     
  4. psyq321

    psyq321 Notebook Evangelist

    Reputations:
    242
    Messages:
    430
    Likes Received:
    58
    Trophy Points:
    41
    Thanks! This looks like an interesting solution - did you try it by yourself?

    Although I am mostly using OpenGL (work), not D3D - it still sounds like an interesting proof of concept.

    @Karamazovmm, you do not need any special tool, power draw of the battery is exposed via standard ACPI interface, so tools like HWInfo64 can read it.

    As for "switchable graphics" - I think the problem is, although you do get access to both GPUs, due to the proprietary mux, you cannot dynamically switch them. PC laptops typically need special drivers that are aware of the switchable graphics, and there are several different implementations (muxed, muxless, etc..).

    So, unless Apple publishes drivers that support switching (which I see no reason for them to do it) or Linux community somehow reverse engineers Apple's design (which would be helpful, but for Linux users only) I do not think we'll be seeing GPU switching on the Windows OS level.
     
  5. Quix Omega

    Quix Omega Notebook Evangelist

    Reputations:
    78
    Messages:
    478
    Likes Received:
    3
    Trophy Points:
    31
    I thought about this a bit back when I was considering buying one of these. Even though there is a mux for the Apple switchable graphics it may be possible to get Optimus to work on this laptop anyway (because Optimus is muxless and doesn't require any additional hardware). Optimus simply draws to the framebuffer of supported iGPUs, (Intel 3000 and 4000) over the PCIe bus. It may even be as simple as hacking the device ID into Nvidia's standard Verde drivers.

    Anyway, I figured it would be a pain to try and get this to work so I bought something else. But for those of you with retina macbooks it's worth a try.
     
  6. psyq321

    psyq321 Notebook Evangelist

    Reputations:
    242
    Messages:
    430
    Likes Received:
    58
    Trophy Points:
    41
  7. Karamazovmm

    Karamazovmm Overthinking? Always!

    Reputations:
    2,365
    Messages:
    9,422
    Likes Received:
    200
    Trophy Points:
    231
    I actually use nvidia verde drivers and optimus is enabled. it works.
     
  8. too456

    too456 Resident Angry Bird

    Reputations:
    572
    Messages:
    836
    Likes Received:
    0
    Trophy Points:
    30
    Is there any special method you used to get Windows on UEFI mode to work, or is it as simple as just formatting the hard disk into two partitions, installing OSX on one partition and Windows on the other? I presume the same method would work on a non-Retina MBP.
     
  9. Shelltoe

    Shelltoe Notebook Enthusiast

    Reputations:
    0
    Messages:
    37
    Likes Received:
    0
    Trophy Points:
    15
    which version? and which HD 4000 Drivers?
    wasn't able to activate Optimus so far.
     
  10. Quix Omega

    Quix Omega Notebook Evangelist

    Reputations:
    78
    Messages:
    478
    Likes Received:
    3
    Trophy Points:
    31
    Cool, that actually makes the Mac a half-decent Windows laptop, even if you have to mess around with it first.
     
  11. Karamazovmm

    Karamazovmm Overthinking? Always!

    Reputations:
    2,365
    Messages:
    9,422
    Likes Received:
    200
    Trophy Points:
    231
    have you installed windows via uefi?
     
  12. Shelltoe

    Shelltoe Notebook Enthusiast

    Reputations:
    0
    Messages:
    37
    Likes Received:
    0
    Trophy Points:
    15
    counterquestion... nice. yes.
    Intel HD drivers installed without errors but no optimus at all. Tried nvidia 306 + 310 beta
     
  13. Karamazovmm

    Karamazovmm Overthinking? Always!

    Reputations:
    2,365
    Messages:
    9,422
    Likes Received:
    200
    Trophy Points:
    231
    counter I dont give a damn.
     
  14. Shelltoe

    Shelltoe Notebook Enthusiast

    Reputations:
    0
    Messages:
    37
    Likes Received:
    0
    Trophy Points:
    15
    you're taking trash.
    had optimus once by forcing its install but is was unfunctional. gt650m was used allways as it is primary boot device. (tray shows used by "display port") EFI Shell shows Intel HD isn't connected to any PCI bridge and has no access aswell.
    I was able to render with Intel HD offscreen tough.

    how you wanna change this?
     
  15. too456

    too456 Resident Angry Bird

    Reputations:
    572
    Messages:
    836
    Likes Received:
    0
    Trophy Points:
    30
    It is possible to force the driver to enable Optimus by modifying the .inf file for the Nvidia GPU. I would explain it in detail how to do it, but I did that and realised that it was a pain, and it was also very confusing. In short, you have to find a key in the driver install section of the inf file in the Nvidia driver that enables Optimus, and copy that key/flag and paste it such that the Nvidia GPU of the MBP has that key. Save the file, install the driver, allow unknown driver install and Optimus should be installed.
     
  16. psyq321

    psyq321 Notebook Evangelist

    Reputations:
    242
    Messages:
    430
    Likes Received:
    58
    Trophy Points:
    41
    @too456,

    Do you remember the key name?
     
  17. too456

    too456 Resident Angry Bird

    Reputations:
    572
    Messages:
    836
    Likes Received:
    0
    Trophy Points:
    30
    NVSupportOptimus = 1

    Find the device id for your GPU. It will say something like:
    Find the section that corresponds to your GPU (in this example case, Section072) and add the NVSupportOptimus = 1 key with the other NVSupport keys.
     
  18. Shelltoe

    Shelltoe Notebook Enthusiast

    Reputations:
    0
    Messages:
    37
    Likes Received:
    0
    Trophy Points:
    15
    the file is nvao.inf (NOT nvam.inf)
    Device ID for the 650M of your mbp 15" 2012 is 0FD5.00F2.106B
    Sections 50, 56 + 57
    simply adding NVSupportOptimus = 1 wont help at all -_- rofl
    take a look at this for example


    If you can make it youll end up with my results posted earlier.
    nothing like the out of the box optimus karama tells us about -_-
    there's no optiums for my 650m anywhere by default. older drivers than 306 (eg 304 beta) don't even have it listed.
    maybe brazil has different drivers ... maybe he's just a troll with 6500 posts ... who knows
    its basically a waste of time as Intel HD is no primary boot device and 650m will be used all the time.

    we shouldn't talk about optimus unless someone is able to make intel hd 4000 render on internal screen
    even 2012 single gpu models have problems using hd 4000 with current drivers
     
  19. psyq321

    psyq321 Notebook Evangelist

    Reputations:
    242
    Messages:
    430
    Likes Received:
    58
    Trophy Points:
    41
    I am willing to try to hack around, but that's gonna wait at least ~10 days as I need to go on a business trip tomorrow, and I cannot afford a broken laptop :)

    The fact that Linux guys managed to get GPU switching work on 15" MBPR is a good sign meaning that it is definitely possible to do it after system boots in UEFI mode and outside of OS X environment.

    I'll check out the vgaswitcheroo patches they did to support MBPR, but Windows is a harder nut to crack, as drivers are closed source, so it will be either driver patching or writing additional kernel-mode code that would actually force the switch. And that is also very risky on Windows 8 as applications might hold GPU surfaces etc... so I am not sure at all that it could be made to work without direct support in NVidia/Intel drivers.
     
  20. Shelltoe

    Shelltoe Notebook Enthusiast

    Reputations:
    0
    Messages:
    37
    Likes Received:
    0
    Trophy Points:
    15
    yeah I've have seen the gmux driver aswell and tried to do it via efi shell (mm -IO command) without results.
    (i was able to disable igpu/dgpu or enable vga for my thunderbolt ports though which helped me to setup my egpu.)

    you'll probably have to change the io adresses from within windows.
    you'll have to use some IO library as windows blocks those interactions by default.


    after all the gmux driver switches gpu's access to your LCD panel and gt650m will be shut down while intel hd renders (0x750 = 0).
    apple doesnt use anything like optimus. they switch gpus on and off which seem to share memory while optimus combines both gpus.
    additionally intel hd won't be a primary boot device anyway unless some apple developer tells us how to edit efi boot
    its pretty hard or even impossible to make optimus work properly but we'll see.
     
  21. psyq321

    psyq321 Notebook Evangelist

    Reputations:
    242
    Messages:
    430
    Likes Received:
    58
    Trophy Points:
    41
    I can try writing a simple Windows driver that pokes the same ports/registers.

    I'll try it in the coming days as soon as I find some time.
     
  22. Shelltoe

    Shelltoe Notebook Enthusiast

    Reputations:
    0
    Messages:
    37
    Likes Received:
    0
    Trophy Points:
    15
    Looking forward to it. Good Luck.
     
  23. psyq321

    psyq321 Notebook Evangelist

    Reputations:
    242
    Messages:
    430
    Likes Received:
    58
    Trophy Points:
    41
    Spent some time installing UEFI Windows over the weekend - unfortunately, after installing the latest NVidia driver, brightness control stopped working, which is a deal breaker to me, so I had to revert back to BootCamp Windows installation due to work.

    I ordered 2.5" USB3 SSD adapter, so I will keep UEFI Windows install as external option - I will then try to write something.
     
  24. Shelltoe

    Shelltoe Notebook Enthusiast

    Reputations:
    0
    Messages:
    37
    Likes Received:
    0
    Trophy Points:
    15

    Hm... didn't had those issues and I installed it like 10 times in the past weeks.
    be sure to deactivate adaptive brightness in your advanced power options. Take a look at this link
    seems to be a common win8 problem
     
  25. Shelltoe

    Shelltoe Notebook Enthusiast

    Reputations:
    0
    Messages:
    37
    Likes Received:
    0
    Trophy Points:
    15
    Some news regarding Optimus:

    I'm in touch with a Linux developer who patched/updated the gmux_driver for current MBP 10,1 which uses a new version of gmux.
    A message box interface is used so commands look a bit different from previous versions.

    For now I successfully disconnected the internal screen from GT650M using the folloing startup.nsh:
    Code:
    mm 7c2 ;IO :1
    mm 7d4 ;IO :28
    mm 7c2 ;IO :2
    mm 7d4 ;IO :10
    mm 7c2 ;IO :2
    mm 7d4 ;IO :40
    
    Intel HD still doesn't recognize the internal but I guess Optimus is getting really close.
     
  26. Shelltoe

    Shelltoe Notebook Enthusiast

    Reputations:
    0
    Messages:
    37
    Likes Received:
    0
    Trophy Points:
    15
    Graphics switching works. My system definitely boots using Intel HD but LCD blanks out at Login Screen and reboots shortly after that. For now I'm back to on Intel Drivers as they seem to crash with igdkmd64.sys error (just like it does on current single GPU setups)
     
  27. shaglord

    shaglord Newbie

    Reputations:
    0
    Messages:
    4
    Likes Received:
    0
    Trophy Points:
    5
    Has there been any progress on this subject? I'm thinking on buying a MB 15 Retina solely to run windows (uefi). Would be nice to know that there is a workaround for the problem of enabling switchable graphics under windows.

    I'm not only interested in the battery lifetime but in heat/powerdraw/fan noise in general. As I think most people are. I almost never use my laptops on battery anyway.

    Cheers!

    /s
     
  28. saturnotaku

    saturnotaku Notebook Nobel Laureate

    Reputations:
    4,879
    Messages:
    8,926
    Likes Received:
    4,707
    Trophy Points:
    431
  29. shaglord

    shaglord Newbie

    Reputations:
    0
    Messages:
    4
    Likes Received:
    0
    Trophy Points:
    5
  30. helgarox

    helgarox Newbie

    Reputations:
    0
    Messages:
    1
    Likes Received:
    0
    Trophy Points:
    5
    Go get a Samsung Series 9, the build is arguably better than the rMBP's build, lighter and stronger. I have an rMBP but don't buy it just to run windows, its a waste of money, since most of the windows laptops that run windows better than the Apple are far cheaper. The Series 9 is an amazing laptop, and if you want windows, it's the way to go.
     
  31. shaglord

    shaglord Newbie

    Reputations:
    0
    Messages:
    4
    Likes Received:
    0
    Trophy Points:
    5
    The samsung looks nice but ... Even though I like the good sounding speakers, assymetrical fans and an unbreakable power connector from the MBP, the dealbreaker would probably have to be the screen not being closer to the ips 16:10 with resolution over 1920 that the MBP has. Lets see what samsung will be rolling out in the near future to compete with the MBP.

    Other small features like a middle mouse button would also be nice to have when you're lazy and don't want to make gestures.

    Do you by any chance know if the Samsung uses synaptics touchpads on this series? That is also kind of important... glide and chiral scrolling is hard to live without after getting used to it.

    Cheers!
    /s