Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

VM CPU allocation help please

Featured Replies

Hi Guys

 

I have been looking around the forums and even did some testing my self and i could not find the 100% i am looking for.  Is there a definitive answer which of the cpu pinning in the vm allocation is the actual core and which are the hyperthreaded cores? From my own benchmarks i seem to get better speed from the top row which are 0,1,2,3 then the bottom row. I am trying to get the gaming side sorted as i seem to be having some pretty serious cpu bottlenecking on my i7 3770. thank you in advanced.

 

Ps. my setup is purely to be used for 2x gaming machines in the same case not interested in allocating cpu power to other apps in unraid.

  • Author

Hi Guys i guess the amount of views and no replies implies i am not the only one that is not sure what setting works best. I have played some more and found that setting the below gets the most constant fps in games. Also hyper v option seems to give a lot more fps as well

VM1 =  <vcpupin vcpu='0' cpuset='0'/>

            <vcpupin vcpu='1' cpuset='4'/>

            <vcpupin vcpu='2' cpuset='2'/>

            <vcpupin vcpu='3' cpuset='6'/>

 

VM2 =  <cputune>

            <vcpupin vcpu='0' cpuset='1'/>

            <vcpupin vcpu='1' cpuset='5'/>

            <vcpupin vcpu='2' cpuset='3'/>

            <vcpupin vcpu='3' cpuset='7'/>

 

Probably need to give a little more time for folks to respond, especially since you seem to be either a night owl or posting from another country.

 

We are relabeling that section of the UI in an upcoming release.  "Cores" is a misleading label there.  It's actually logical CPUs.  So a 4 core hyperthreaded processor will show up with 8 logical CPUs.

 

I've not worked with the exact CPU you have, but I can tell you that with mine, I've not really seen giant performance differences that were dependent on CPU/thread alignment in assignment.  That said, we have done some experimenting with CPU latency and what you'll find is that thread pairs belonging to the same physical core offer the lowest latency.  On my i7-4790k CPU, my thread pairs are 0/4, 1/5, 2/6, and 3/7.  If I assign 0/4/1/5 to VM1 and 2/6/3/7 to the other, it offers the lowest CPU latency.  However, on my setup, this hasn't really mattered at all because the latency impact seems to matter most when you're having other problems like audio glitching and whatnot, which on my CPU, I have yet to experience.

 

In the future, we want to build in mechanisms to auto-detect these latencies and provide recommendations in the UI as to how logical CPUs should be aligned for various purposes.

 

Another thing worth considering here is that you aren't leaving any logical CPUs open for the host itself, meaning that you will have context-switching occur from time to time as host operations interfere with guest operations.  I would probably reduce my CPU count per VM to 3 and then leave the remaining 2 for the host.

 

If you have more questions, I'm happy to answer them, but please be a little more patient in awaiting a response.

How do you detect which Core is the "Hyper-Thread" of which Core?

Alex Williamson came up with a script to check the latencies between different logical CPUs.

  • Author

Probably need to give a little more time for folks to respond, especially since you seem to be either a night owl or posting from another country.

 

We are relabeling that section of the UI in an upcoming release.  "Cores" is a misleading label there.  It's actually logical CPUs.  So a 4 core hyperthreaded processor will show up with 8 logical CPUs.

 

I've not worked with the exact CPU you have, but I can tell you that with mine, I've not really seen giant performance differences that were dependent on CPU/thread alignment in assignment.  That said, we have done some experimenting with CPU latency and what you'll find is that thread pairs belonging to the same physical core offer the lowest latency.  On my i7-4790k CPU, my thread pairs are 0/4, 1/5, 2/6, and 3/7.  If I assign 0/4/1/5 to VM1 and 2/6/3/7 to the other, it offers the lowest CPU latency.  However, on my setup, this hasn't really mattered at all because the latency impact seems to matter most when you're having other problems like audio glitching and whatnot, which on my CPU, I have yet to experience.

 

In the future, we want to build in mechanisms to auto-detect these latencies and provide recommendations in the UI as to how logical CPUs should be aligned for various purposes.

 

Another thing worth considering here is that you aren't leaving any logical CPUs open for the host itself, meaning that you will have context-switching occur from time to time as host operations interfere with guest operations.  I would probably reduce my CPU count per VM to 3 and then leave the remaining 2 for the host.

 

If you have more questions, I'm happy to answer them, but please be a little more patient in awaiting a response.

 

Thank you Jon i appreciate your reply i didn't mean to come across as impatient i originally thought the answer maybe a simple known setting buy i think it varies as you have mentioned. I will look into the reducing of cores i did try putting only 3 cores on each but games like battlefield 4 ran really bad i will try again though. On your processor what cores would you assign to the vm1 and vm2?

 

I will also try the script to check cpu latency. I had noticed i got weird drops in performance which i was suspecting maybe not enough overhead for unraid to do it's thing

 

Archived

This topic is now archived and is closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.