Mac: Latest OLCP tricks disable dGPU,  searchpartyd spin

We’ve now transitioned four very different machines: MacBook Pro 2017, MacBook Pro 2014, MacBook Air 2012 and Mac mini 2011. TL;dr. Here is the latest update on getting all these old Macs to run, so a summary of the outstanding problems

  • Fixed. Sonoma is still pretty early I had to deinstall them on all the machines.
  • Fixed. MacBook Pro 2010 needed to disable the discrete GPU so that it is stable.
  • Open. Mac mini 2011 on Ventura has a searchpartyd spin problem. This machine is super, super slow, but it finally came up. The main issue is that the process called searchpartyd would just be in runaway mode. This supports the Find My application. I kept on trying to kill it but it seems stable now. The main problem is that searchpartyd spins and searchpartyusedagent ends up consuming all available RAM.

Here are the details on how we fixed the various problems

MacBook Pro 2010 mysteries

OK, this has got to be the most obscure thing that we can talk about. It’s all about how to turn on and off the dedicated GPU on MacBook Pros from 2010 or so. There are a few things to understand.

First is that these Macs had an Intel integrated GPU and then an nVidia discrete GPU and there was magic to switch between the two so that while on battery you used the power efficient iGPU and then when you were slamming graphics, it would switch to the dGPU.

There are two issues. First is that the dGPU would fail back then and you had to know how to disable it. The second is that with OpenCore Legacy Patcher you can run modern operating systems like Sonoma, but the GPU switching doesn’t work, so you can use this to disable the dGPU.

Getting to iGPU only

As documented before, you reset the NVRAM, boot into Command-S mode and then type in an nvram incantation. Then on reboot, you are in GPU-only mode. You can check this by looking at the About menu and you should see only the iGPU mentioned and not the nVidia dGPU.

# Power down
# Reset the NVRAM by holding down Command-Option-P-R and Power up
# Keeping holding until the second chime
# Now hold down the Command-S to get to single user mode
# now clear the NVRAM
nvram -c
exit
# GUID - Standard Apple Macbook Pro Early 2011-> 
GUID=fa4ce28d-b62f-4c99-9cc3-6815686e30f9
NVRAM_Variable=gpu-power-prefs
# Value for Integrated gpu - In this case Binary data Hexadecimal (%) -> IGPU=%01%00%00%00
# Value to turn on the Discrete GPU
DGPU=%00%00%00%00
sudo nvram $GUID:$NVRAM_Variable=$IGPU

Getting the dGPU Back

There is a magical incantation, but not much documentation on how this all works, but thanks to Alexandru Metai, now I know, so the basics are:

  1. When you do this, you need to do an SMC reset with Control-Option-Shift and the Power button to reset the System Management Control (SMC)
  2. How hit the power and hold Command-S, then you get into single-user mode. This is great because if you have a GPU issue, this doesn’t use graphics at all. So use Command-R to get into graphical recovery mode or Command-S if the graphics card is bad.
  3. There is a command nvram that writes to the non-volatile RAM and has low-level configuration information. The basic trick is that you can see what is there nvram -p and write about it. The relevant key is huge but nvram fa4ce28d-b62f-4c99-9cc3-6815686e30f9:gpu-power-prefs=%00%00%00%00 turns on the dGPU and then nvram fa4ce28d-b62f-4c99-9cc3-6815686e30f9:gpu-power-prefs=%01%00%00%00 turns off the dGPU. Then type exit and it tries to boot to graphical mode (if you were in iGPU mode it will be that way until you…)
  4. Then and then boot the computer up and reset the PRAM with Command-Option-P-R held down and if it works, it will “bong” twice, once to reset the PRAM and the next to boot MacOS
  5. I found that this doesn’t work correctly, but if you download the gfxstatus application, and then tell it to do dynamic, then you see both graphics cards in the Apple > About menu.

Now you can see if this works by going to the MacOS about and seeing if the nVidia GPU is mentioned

Getting OLCP on High Sierra

The other problem is that the Safari browser on High Sierra is so old that it won’t show the releases on Github for OLCP and brew doesn’t work either, so I had to use MacUpdate to get OLCP

I ended up having a dedicated High Sierra USB key with gfxCardStatus and OpenCore-Patcher and could see that as it changed in the status menu as it flipped from Intel only and then to showing both the discrete GPU and the integrated GPU.

Getting to Ventura on MacBook Pro 2010

Then finally I got to the MacBook Pro 2010 and discovered that the gfxstatus application can indeed flip the thing from iGPU only to discrete GPU, so I just use it to monitor where I am and not actually to change it. However, on every reboot, the nvram setting kept us at iGPU only as confirmed by Apple > About This Mac.

MacBook Pro 2010 Venture Kernel Panic when running gfxstatus

OK, I did get a kernel panic when I hit the F4 button. I’m not sure what this was as the iGPU was on, but continuing the installation now. One note on setting I had this is that I would have hangs all the time, then the idea of resetting the SMC with unplugging it from power and then holding the left-side SHIFT-OPTION-CONTROL keys worked. Followed by a PRAM reset by holding down power and then pressing Command-Option-P-R worked. Finally disabling gfxstatus which kept wanting to move to dynamic helped a lot.

Finally issue is that for some reason on the MacBook Pro 2010, Command-S would hang at the trim command and then reboot, so I had to use Command-R (Internet Recovery) to reset the NVRAM. This is actually pretty painful as you have to boot and then download from the Internet, but worked.

Once I disabled gfxstatus, all seems good.

MacBook Pro 2014 headaches: works but install to EFI may be needed twice

So the main issue here is that when you restart you end up High Sierra and you have to manually update to Big Sur before you do the OLCP Ventura update:

  1. Start all over with Command-R while hitting the power button.
  2. This will get you the High Sierra installation. I would just go to Disk Utility and erase the whole drive to make sure it clean
  3. Once this installation is done, go to the Mac App Store and download the Big Sur installer. You probably want to copy it to a bootable USB to save it so you don’t have to keep doing this.
  4. Once Big Sur is installed, you can install OpenCore Legacy Pather and download Ventura, build the new EFI boot partition
  5. One note is that with Ventura, you should not sign into Apple iCloud at the start, for some reason this causes the License Agreement screen that happens next not to show the OK button, so say Set Up Later and do it when it boots.
  6. Now hold the option key and power to boot and select EFI boot. And it should run
  7. The first time you start, OpenCore will detect you are booting from a USB drive and install on your boot drive and then you will be able to boot without the USB.
  8. On this particular machine, unlike the others you have to use the Option key to boot, you can’t just boot without it, and you get a no startup drive message the first time, but when I tried to reinstall the EFI boot partition, it magically started by itself.

MacBook Air 2014 Notes

MacBook Air 2012 on Ventura rebuild after failed OLCP root patch. OK, the main note here is that I tried to update to the latest OLCP 1.3 and I started uploading a bunch of updates and this failed. So I was back to the start. You need to have your install Ventura USB key handy and this worked, although it took over an hour to get it back. The main note is that you need to be careful when installing root patches, don’t do it over and over. What happened was the system just hung after the login. I think it was trying to rebuild the kext cache.

Mac mini 2011: the ghost of searchagentd

OK, this machine should be working great but has two strange problems:

  1. There is a process called searchagentd associated

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

I’m Rich & Co.

Welcome to Tongfamily, our cozy corner of the internet dedicated to all things technology and interesting. Here, we invite you to join us on a journey of tips, tricks, and traps. Let’s get geeky!

Let’s connect