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.

Best way to assign hyper-threaded cores to VMs?

Featured Replies

I currently have an AMD Phenom II 1055T 6-core CPU in my unraid box.  I have one windows 10 VM with cores 0 through 3 assigned to it.  I have a second windows 10 VM with core 4 assigned to it.  The last core 5 is not assigned to any VM so it is left available for unraid and a couple of dockers (crashplan, Airvideo HD, MariaDB).  The two VMs both run 24/7 so therefore I have not assigned the same cores to more than one VM (although I assume that I could have done that??)

 

My system is being pushed to the limits so I am about to install an i7-6800K CPU.  This also has 6 cores but they are hyper-threaded so 12 "cores" will be assignable to my VMs.

 

I know that hyper threading is not the same as physical cores so I'm wondering what the best practices are around assigning these "cores" to VMs?  Is it fair to assume that core 0 and core 1 will now be the two "threads" from physical core #1?  ..and core 2/3 belong to physical core #2 etc?

 

When assigning these cores to my VMs, should I be sure to not do something like assign core (thread) 0 to one VM and core (thread) 1 to another VM since these actually belong to the same physical core?

 

Just looking for some advice before I start re-assigning cores to my VMs after the upgrade.  Thanks!

The core pairings are shown on the UnRaid Dashboard screen (At least in Beta they are). In my case the pairings go from 0 & 16, 1 & 17, 2 & 18 etc. all the way up to 15 & 31. You are better leaving the first pair for UnRaid to use, it favours core 0 I believe.

The core pairings are shown on the UnRaid Dashboard screen (At least in Beta they are). In my case the pairings go from 0 & 16, 1 & 17, 2 & 18 etc. all the way up to 15 & 31. You are better leaving the first pair for UnRaid to use, it favours core 0 I believe.

They are also shown properly in 6.1.9 release as well.

If there are no pairings shown that is because you dont have "hyperthreading". Some AMD systems dont have it at all.

 

For an intel 6 core 12 thread system the typical pairings are, but check the dashboard to be sure its not different with your hardware:

Core 0, 6

Core 1, 7

Core 2, 8

Core 3, 9

Core 4, 10

Core 5, 11

This was useful -- thank you.

 

I had just assigned cores sequentially but checking dashboard I now see the pairs. So just to be clear I should go back and re-do the core assignments so that pairs are assigned to the same VM?

  • Author

Good info regarding the cores, thank you...

 

Further to the question about how to then assign them to VMs:

 

1) Will unraid prefer core 0 or any specific core as was stated earlier?

2) will unraid still use other cores that have been assigned to VMs if they are not fully utilized and it temporarily needs the extra CPU power?

3) What is the best/proper method to assign the cores to multiple VMs?

 

 

Good info regarding the cores, thank you...

 

Further to the question about how to then assign them to VMs:

 

1) Will unraid prefer core 0 or any specific core as was stated earlier?

2) will unraid still use other cores that have been assigned to VMs if they are not fully utilized and it temporarily needs the extra CPU power?

3) What is the best/proper method to assign the cores to multiple VMs?

 

1) I believe unraid favors core 0

2) Cpu assignment for VMs means that the VM is not allowed to use any other core than what is assigned. Unraid and dockers can still use those cores assigned to the VMs. If you want to dedicate cores to VMs you have to use cpu isolation,  which is a kernel option. It tells unraid not to use those cores and when you assign them to VMs, only the VMs will use them.

3) Depends. You can assign the same cores to multiple VMs; they'll share them. I try to assign different cores to different VMs but I'm not too strict about it.

2) Cpu assignment for VMs means that the VM is not allowed to use any other core than what is assigned. Unraid and dockers can still use those cores assigned to the VMs. If you want to dedicate cores to VMs you have to use cpu isolation,  which is a kernel option. It tells unraid not to use those cores and when you assign them to VMs, only the VMs will use them.

If the VM is NOT running, will the dockers be able to utilize those cores?

Or is docker included in the "unRAID" side of thing?

  • 4 weeks later...

is there a command or a webgui place were  I can see what cores  i have assigned to what vm?

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.