Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

stubynyc

macrumors newbie
Original poster
May 4, 2022
13
1
I'm a noob and have Monterey working great on my Mac Pro 2008 3,1 with Opencore. When I run Windows 10 via Parallels 17 it is pretty slow and it looks like my VT-X is not running.

I found this post on how to enable VT-X with rEFIt.

Is there a way to modify the Opencore EFI in a similar way to enable VT-X? As I'm not too familiar as to how this works and I don't want to mess up my current configuration.

If not, are there any other good solutions to getting Parallels to run quicker on 3,1? I also have a MacPro 5,1 set up similarly and Parallels runs fine on that machine.

Thanks!
 

Dayo

macrumors 68020
Dec 21, 2018
2,257
1,279
VMX/VT-X support is only available as from the Westmere CPU.
This precludes the MP31 (Penryn), MP41 (Nehalem) as well as Nehalem CPU MP51 (some have this).
 
Last edited:

stubynyc

macrumors newbie
Original poster
May 4, 2022
13
1
Thanks Dayo, this will save me some unnecessary headache!

Any other suggestions to speed up Parallels? I had Windows running on this 3,1 machine with Dosdude's Catalina patcher and it seemed to run fine.
 

Dayo

macrumors 68020
Dec 21, 2018
2,257
1,279
Sorry, I don't know much about Parallels.

For the benefit of anyone coming across this in future, the information in the link to setting VMX support using rEFIt is outdated (posted in 2006). On rEFit variants such as rEFInd and RefindPlus, you only need to enable the enable_and_lock_vmx option in the config file to activate this.

The enable_and_lock_vmx code from rEFInd has been ported to OpenCore and can be activated there by enabling the EnableVmx option in the OpenCore config file.

In both cases, OpenCore and rEFIt variants, this option should only be activated on Intel CPUs that support VMX.
 

stubynyc

macrumors newbie
Original poster
May 4, 2022
13
1
Thanks Dayo for all your info. I'm a bit confused, however. I followed the instructions on this post to determine if my machine supports VT-X.

The output shows that my MacPro 3,1 does support it (highlighted in blue).
sysctl -a | grep machdep.cpu.features


Screen Shot 2022-05-04 at 1.59.18 PM.png


sysctl kern.hv_support results:

shows that the feature is turned off:
Screen Shot 2022-05-04 at 2.07.43 PM.png


Is this an inaccurate method of determining my CPU's capability? Is it worth trying the OpenCore activation?
 
Last edited:

joevt

macrumors 604
Jun 21, 2012
6,967
4,262
Parallels stopped performing properly (Windows runs unbearably slow) on MacPro3,1 when Mojave 10.14.4 was released. Use Mojave 10.14.3 or get a new Intel Mac or PC.
 

Dayo

macrumors 68020
Dec 21, 2018
2,257
1,279
The output shows that my MacPro 3,1 does support it
In addition to Joevt's post, I assume you ran your check while booted via OpenCore or a patched installation and you might be seeing spoofed output.

You will want to check CPU features only when booted natively.
 

stubynyc

macrumors newbie
Original poster
May 4, 2022
13
1
In addition to Joevt's post, I assume you ran your check while booted via OpenCore or a patched installation and you might be seeing spoofed output.

You will want to check CPU features only when booted natively.
Ah, I see! Thanks so much for all this information. I guess it is asking too much from this old dog☹️
 

joevt

macrumors 604
Jun 21, 2012
6,967
4,262
I had Windows running on this 3,1 machine with Dosdude's Catalina patcher and it seemed to run fine.
I am curious about this. You're saying Parallels performed well in Catalina? did you compare with High Sierra or Mojave 10.14.3 or earlier?
 

stubynyc

macrumors newbie
Original poster
May 4, 2022
13
1
VMX/VT-X support is only available as from the Westmere CPU.
This precludes the MP31 (Penyryn), MP41 (Nehalem) as well as Nehalem CPU MP51 (some have this). When I run

My MacPro 4,1 was flashed to a 5,1 with OpenCore Monterey, Parallels 17 and Win10 & Metal which performs well.
When I run the command
sysctl kern.hv_support

It outputs:
kern.hv_support: 1.
Is that spoofed or the actual processor?

joevt
Yes, I believe I was using Parallels 10 with DosDude's Catalina on the 3,1 and I didn't compare it to the previous OSs. My VM worked very well for a while but messed it up with an improper shutdown. At that point I upgraded to OpenCore Monterey w/ Metal and had to switch to Parallels 17...then the slowdown.
 

Dayo

macrumors 68020
Dec 21, 2018
2,257
1,279
Is that spoofed or the actual processor?
No idea. As said earlier, any information you get while running OpenCore MAY be spoofed.

I could be wrong and there might be MP41 versions with Westmere CPUs ... Didn't check
You could try this Applescript snippet from MyBootMgr to check yours ... Paste into 'Script Editor' and run:
AppleScript:
set IsWestmere to false
set ResultString to "Westmere CPU"
try
    set FeaturesCPU to do shell script ("sysctl -a | grep machdep.cpu.features")
    if FeaturesCPU contains "VMX" then
        set StrCPU to do shell script ("sysctl -a | grep machdep.cpu.brand_string")
        if StrCPU contains "E56" or StrCPU contains "L56" or StrCPU contains "X56" or StrCPU contains "W36" then
            set IsWestmere to true
        end if
    end if
on error
    set ResultString to "Completed"
end try
if IsWestmere is false then set ResultString to "*NOT*" & space & ResultString
display dialog ResultString buttons {"OK"} default button 1

OpenCore probably does not spoof the CPU brand string but then, it just as easily could do so.
Therefore best run it, as with any attempt to get real information about your unit, when booted natively into MacOS.
 
Last edited:

stubynyc

macrumors newbie
Original poster
May 4, 2022
13
1
Dayo, thank you so much! I'll try to load an old system on it to see what the Applescript spits out.

There seems to multiple variables affecting my setup- Parallels version, OS upgrade, CPU. Was hoping enabling VT-X was the magic bullet.
 

Dayo

macrumors 68020
Dec 21, 2018
2,257
1,279
You could try it on the OC instance and if it says it isn't a Westmere/Gulftown, then it definitely isn't since OC wouldn't spoof an older less capable CPU if doing any spoofing.
 

stubynyc

macrumors newbie
Original poster
May 4, 2022
13
1
Screen Shot 2022-05-05 at 8.57.27 AM.png

Thank you!
 

Attachments

  • Screen Shot 2022-05-05 at 8.57.27 AM.png
    Screen Shot 2022-05-05 at 8.57.27 AM.png
    10.4 KB · Views: 91

tsialex

Contributor
Jun 13, 2016
13,455
13,601
I could be wrong and there might be MP41 versions with Westmere CPUs ... Didn't check
The Westmere Xeon family was launched by Intel back in January 7 2010, the first Macs to have one from the factory were the mid-2010 i27" Mac in May and some weeks later in July, the mid-2010 Mac Pro with the high end hexa-core models.

Apple continued to use Nehalem Xeons with several of the mid-2010s and some of the mid-2012s models, usually the entry level/cheaper ones.

Apple never used a Westmere with an early-2009 Mac Pro and the MP4,1 firmware does not even support one, you need to cross-flash to MP5,1 to install a Westmere Xeon in an early-2009 Mac Pro.
 
  • Like
Reactions: JedNZ and Dayo

Dayo

macrumors 68020
Dec 21, 2018
2,257
1,279
Apple never used a Westmere with an early-2009 Mac Pro
Btw, on reconsidering things following the engagement on this thread, it just struck me that while I have been limiting MyBootMgr setting VMX support based on Westmere and advised the OP accordingly, Westmere CPUs did add Apple HyperVisor support but this is perhaps not the same thing as a CPU having VMX capability.

That is, older CPUs may indeed have VMX support but not Apple HyperVisor support. In this case, they might be able to have VMX enabled in OpenCore or rEFIt variants for Windows.

Any thoughts on this?
 
Last edited:

stubynyc

macrumors newbie
Original poster
May 4, 2022
13
1
The Westmere Xeon family was launched by Intel back in January 7 2010, the first Macs to have one from the factory were the mid-2010 i27" Mac in May and some weeks later in July, the mid-2010 Mac Pro with the high end hexa-core models.

Apple continued to use Nehalem Xeons with several of the mid-2010s and some of the mid-2012s models, usually the entry level/cheaper ones.

Apple never used a Westmere with an early-2009 Mac Pro and the MP4,1 firmware does not even support one, you need to cross-flash to MP5,1 to install a Westmere Xeon in an early-2009 Mac Pro.
Oh man, I just remembered I did a Xeon 5650 upgrade when I first got the 4,1 and flashed it to 5,1. Totally forgot about that. Apologies, I'm sure that makes a big difference.
 

tsialex

Contributor
Jun 13, 2016
13,455
13,601
Btw, on reconsidering things following the engagement on this thread, it just struck me that while I have been limiting MyBootMgr setting VMX support based on Westmere and advised the OP accordingly, Westmere CPUs did add Apple HyperVisor support but this is perhaps not the same thing as a CPU having VMX capability.

That is, older CPUs may indeed have VMX support and just not Apple HyperVisor support. In this case, they might be able to have VMX enabled in OpenCore or rEFIt variants for Windows.

Any thoughts on this?
From memory, the Westmere added the VMX unrestricted support, with several changes related to memory support like huge pages, Apple Hypervisor and several other applications, like Docker, require it. The question is, enabling VMX with a CPU that doesn't have VMX unrestricted support will help anyone? Docker for example won't run with anything older than a Westmere Xeon.
 
  • Like
Reactions: Dayo

mattspace

macrumors 68040
Jun 5, 2013
3,344
2,975
Australia
Did hardware passthrough for secondary video cards (ignored by the macOS host) ever end up happening, or is that just a no-way, no-how in macOS?
 

tsialex

Contributor
Jun 13, 2016
13,455
13,601
Did hardware passthrough for secondary video cards (ignored by the macOS host) ever end up happening, or is that just a no-way, no-how in macOS?
AFAIK, never worked with Apple Hypervisor, but works with other type 1 (or type 1 like) hypervisors - KVM works for this.

Proxmox seems to be the choice for this today with several people using it successfully with Mac Pros, there is a thread about it here.
 
  • Like
Reactions: mattspace

mattspace

macrumors 68040
Jun 5, 2013
3,344
2,975
Australia
AFAIK, never worked with Apple Hypervisor, but works with other type 1 (or type 1 like) hypervisors - KVM works for this.

Proxmox seems to be the choice for this today with several people using it successfully with Mac Pros, there is a thread about it here.
I'm assuming these are things you install to the bare metal, rather than having macOS booting directly on the hardware?
 

stubynyc

macrumors newbie
Original poster
May 4, 2022
13
1

After searching and tinkering a bit, this brought Parallels to a decent, usable state. I downgraded to Parallels 16 and set it up with the following configuration:

Processors used: 1
Memory 4 GB (4096 MB)
Adaptive hypervisor: Off
Graphics card: memory automatically.
 

joevt

macrumors 604
Jun 21, 2012
6,967
4,262
I had stopped using Parallels for Windows VM on my MacPro3,1 because performance was terrible since Mojave 10.14.4. My Windows 7 VM had 4 CPUs.

I just tried using latest Parallels on MacPro3,1, Monterey 12.3.1. Using one CPU in the VM, 8 GB memory, 2 GB vram. It seems to have reasonable performance. I have 62 GB, so I'll try upping the RAM. It seems to work fine with 32 GB memory assigned as well. It seems to work slower with 2 CPUs but still usable. I then tried one CPU and Adaptive Hypervisor: On. That seems to work even better than one CPU without Adaptive Hypervisor.
4 CPUs is still unusable.
 

stubynyc

macrumors newbie
Original poster
May 4, 2022
13
1
I had stopped using Parallels for Windows VM on my MacPro3,1 because performance was terrible since Mojave 10.14.4. My Windows 7 VM had 4 CPUs.

I just tried using latest Parallels on MacPro3,1, Monterey 12.3.1. Using one CPU in the VM, 8 GB memory, 2 GB vram. It seems to have reasonable performance. I have 62 GB, so I'll try upping the RAM. It seems to work fine with 32 GB memory assigned as well. It seems to work slower with 2 CPUs but still usable. I then tried one CPU and Adaptive Hypervisor: On. That seems to work even better than one CPU without Adaptive Hypervisor.
4 CPUs is still unusable.
Strange that the best performance is with 1 CPU, isn't it? I'm just glad it is working again. Which version of Parallels are you using?
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.