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.

CPU Mode and Nested VMs

Featured Replies

Hi guys, thank you in advance for your thoughts!

 

I have a Ubuntu KVM/VM client running on unraid, it in turn is a VirtualBox host which then has several VMs running on that. This all works fine for the most part, however I do have a question regarding virtualization of the CPU.

 

BTW, I tried getting VirtualBox running natively on Unraid with little success, I think I read all the post for this here, plus posts from other sources and still never got it to work. So, this is why I have this setup in the first place. If anyone has VirtualBox running on unraid, please let me know.

 

I first started out with "Host Passthrough" which (i would think) exposed the CPU to the Ubuntu Client, which in turn exposed that to the VirtualBox clients. For this test, I had 8 of my 8 cores allocated to the Ubuntu VM and have allocated a single core to the VirtualBox Client.

 

I noticed that when a started a process within a VirtualBox windows Client, it pinned one of the processors on the unraid box. To me, this behavior makes sense because it is just using the "passed-through" cores as if it were naively owned by the VM client and it is simply using only one core because I only allocated one core to the VirtualBox client.

 

What would be nice is if I allocation 1 core to the VirtualBox client that it would use 1/8th the processing power spread across the 8 host cores I have allocated. I thought that, in order for this to work that way, I would have to not pass through the CPU and virtualize the CPU layer. I changed my Ubuntu VM settings to do this, I allocated 8 cores to it but it is not set to "qemu64"

 

  <cpu mode='custom' match='exact' check='none'>
    <model fallback='forbid'>qemu64</model>
  </cpu>
 

for fun I also added <vcpu placement='static'>32</vcpu> to give me 32 virtual cores

 

so, my thinking was that if this is truly virtual that if I allocate just 4 of the 32 cores (1/8th again) to a VirtualBox client, that when is runs something, it would use 4/32 (or 1/8) of the 8 "real" cores and the workload would be spread across the 8 real cores.

 

This does not seem to be what is happening, when I run a process on the VirtualBox client and watch the usage on the unraid server, it is still pinning 1 core and all the others seem to be pretty much idle.

 

This could just be how qemu64 CPU virtualization layer is coded or maybe I am misunderstanding what CPU virtualization is completely.

 

Any input would be helpful.

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.