Jump to content

Assigning Logical CPUs to VMs and unRAID

4 posts in this topic Last Reply

Recommended Posts

Would someone be kind enough to explain to me how best to assign Logical CPUs?


As you can see from the attached image, I have logical CPUs 0-71 (dual E5-2699 V3s).


When I create VMs, I tend to click CPU0-CPU3, so that I get a 4 core VM.


Then I started wondering. Are ALL my VMs using/sharing the same physical cores?


Should I instead do something like this:

  VM1: CPU0-CPU3  - 4 core VM

  VM2: CPU4-CPU7,  - 4 core VM

  VM3: CPU8-CPU15 - 8 core VM.


Reading other threads, I see mention of "reserving" cores for unRAID. Do I need to do this?




EDIT: Just looked at the XML of one of my VMs and saw this:

  <vcpu placement='static'>16</vcpu>


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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



Can someone explain what these lines mean or do?


Share this post

Link to post

A lot of your questions can be answered in this thread http://lime-technology.com/forum/index.php?topic=49051.0 please take a read.


To your specific questions, it is best to assign the core and its related thread pair to the same VM.

This output should be shown in the system devices screen, if not there, it's within UnRAID if you look around (not at my machine currently).


It is likely that 0-17 are cores, and 18-35 are the thread pairs, repeat this for the 2nd CPU.

So for your question, if you wanted 4 actual cores your example is correct, however it is recommended to not use core 0, as UnRAID favors the use of that one.

However I would add the thread pairs along with that, which is likely (and you need to check) CPU0-3 and 17-20 for your 1st example above; VM1.


As to reserving cores, you certainly have enough of them if you choose to go that route!  ;)

In my personal observations (and opinion) I don't fell the need to isolate cores unless my VM shows signs of unacceptable latency, or just general lag.

If you have these issues, or notice things as such, I'd then recommend to isolate the cores and continue testing to see if it helped alleviate that condition.

Share this post

Link to post

Very cool!


Thanks a bunch, took a look at that thread, and it does answer my questions.


Uhmm, got to work on my thread search skills  :-\ I did not find it, during my search for an answer.

Share this post

Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.