CPU Performance with a total Server Crash


Recommended Posts

Let me start by saying this forum has been a god sent

The members here helped me when I first started getting into Unraid and VMs

And through my early post and following threads I solved and learned a lot about my own rig and Unraid

But I've come to a point where I"m stuck again, and need the experts advice :)

 The last year I have had a rock solid Win 10 VM on my box, but over the last few months been trying to play a few games (Tales of Berseria and Neir) recently and noticed super lag, basically the characters and other aspects of the game are moving like they are wading through pudding.

Diving deeper, other oddities that have become the norm such as flash animations are coming to a screeching halt are starting to look more like symptoms of a big problem, and "confirming" my fears 3Dmark is rating my system at 1700!!

Over the last few weeks I've dug deep into various threads about performance and gaming pass though here but none of the advice (from making sure hyperthreading is on, to reducing the number of CPU cores and RAM, to isolating the CPUs) seem to improve performance at all

Staring at this stuff for weeks, everything is blending together, If anyone has any suggestions I"m willing to try anything at this point

 

System:

Unraid: 6.34
M/B: ASUSTeK COMPUTER INC. - M5A99FX PRO R2.0
CPU: AMD FX™-8320 Eight-Core @ 3500
GPU: EVGA GeForce GTX 960 4GB 
Memory: 32 GB (max. installable capacity 32 GB)
Kernel: Linux 4.9.30-unRAID x86_64

SYSLINUX

default /syslinux/menu.c32
menu title Lime Technology, Inc.
prompt 0
timeout 50
label unRAID OS
  menu default
  kernel /bzimage
  append isolcpus=4,5,6,7 initrd=/bzroot
label unRAID OS GUI Mode
  kernel /bzimage
  append isolcpus=4,5,6,7 initrd=/bzroot,/bzroot-gui
label unRAID OS Safe Mode (no plugins, no GUI)
  kernel /bzimage
  append isolcpus=4,5,6,7 initrd=/bzroot unraidsafemode
label unRAID OS GUI Safe Mode (no plugins)
  kernel /bzimage
  append initrd=/bzroot,/bzroot-gui unraidsafemode
label Memtest86+
  kernel /memtest

Win10 VM:

<domain type='kvm' id='1'>
  <name>Windows 10</name>
  <uuid>598f11fa-8da7-a59f-301d-af28c9b65d75</uuid>
  <metadata>
    <vmtemplate xmlns="unraid" name="Windows 10" icon="windows.png" os="windows10"/>
  </metadata>
  <memory unit='KiB'>17301504</memory>
  <currentMemory unit='KiB'>17301504</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>4</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='4'/>
    <vcpupin vcpu='1' cpuset='5'/>
    <vcpupin vcpu='2' cpuset='6'/>
    <vcpupin vcpu='3' cpuset='7'/>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-i440fx-1.4'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/598f11fa-8da7-a59f-301d-af28c9b65d75_VARS-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough'>
    <topology sockets='1' cores='4' threads='1'/>
  </cpu>
  <clock offset='localtime'>
    <timer name='rtc' tickpolicy='catchup'/>
    <timer name='pit' tickpolicy='delay'/>
    <timer name='hpet' present='no'/>
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/local/sbin/qemu</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/cache/Windows 10/vdisk1.img'/>
      <backingStore/>
      <target dev='hdc' bus='virtio'/>
      <boot order='1'/>
      <alias name='virtio-disk2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/disks/WDC_WD10EACS_07D6B0_WD_WCAU43599175/Main/vdisk2.img'/>
      <backingStore/>
      <target dev='hdd' bus='virtio'/>
      <alias name='virtio-disk3'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/disks/WDC_WD10EACS_07D6B0_WD_WCAU43599175/Main/vdisk3.img'/>
      <backingStore/>
      <target dev='hde' bus='virtio'/>
      <alias name='virtio-disk4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/disks/Samsung_SSD_840_EVO_250GB_S1DBNSCFA14644X/Windows 10/vdisk4.img'/>
      <backingStore/>
      <target dev='hdf' bus='virtio'/>
      <alias name='virtio-disk5'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/disks/Samsung_SSD_850_EVO_250GB_S21NNSAG729222N/Windows 10/vdisk5.img'/>
      <backingStore/>
      <target dev='hdg' bus='virtio'/>
      <alias name='virtio-disk6'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x09' function='0x0'/>
    </disk>
    <controller type='usb' index='0' model='nec-xhci'>
      <alias name='usb'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
    </controller>
    <controller type='pci' index='0' model='pci-root'>
      <alias name='pci.0'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <alias name='virtio-serial0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:73:ab:f8'/>
      <source bridge='br0'/>
      <target dev='vnet0'/>
      <model type='virtio'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </interface>
    <serial type='pty'>
      <source path='/dev/pts/0'/>
      <target port='0'/>
      <alias name='serial0'/>
    </serial>
    <console type='pty' tty='/dev/pts/0'>
      <source path='/dev/pts/0'/>
      <target type='serial' port='0'/>
      <alias name='serial0'/>
    </console>
    <channel type='unix'>
      <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-1-Windows 10/org.qemu.guest_agent.0'/>
      <target type='virtio' name='org.qemu.guest_agent.0' state='disconnected'/>
      <alias name='channel0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <input type='mouse' bus='ps2'>
      <alias name='input0'/>
    </input>
    <input type='keyboard' bus='ps2'>
      <alias name='input1'/>
    </input>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
      </source>
      <alias name='hostdev0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x0a' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x00' slot='0x14' function='0x2'/>
      </source>
      <alias name='hostdev1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x0b' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x00' slot='0x12' function='0x0'/>
      </source>
      <alias name='hostdev2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x0c' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x00' slot='0x12' function='0x2'/>
      </source>
      <alias name='hostdev3'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x0d' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x00' slot='0x14' function='0x5'/>
      </source>
      <alias name='hostdev4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x0e' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x00' slot='0x16' function='0x0'/>
      </source>
      <alias name='hostdev5'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x0f' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x00' slot='0x16' function='0x2'/>
      </source>
      <alias name='hostdev6'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x10' function='0x0'/>
    </hostdev>
    <memballoon model='virtio'>
      <alias name='balloon0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x11' function='0x0'/>
    </memballoon>
  </devices>
  <seclabel type='none' model='none'/>
  <seclabel type='dynamic' model='dac' relabel='yes'>
    <label>+0:+100</label>
    <imagelabel>+0:+100</imagelabel>
  </seclabel>
</domain>

 

Edited by Concelor
Link to comment

So a new part of the mystery arose:

 

While waiting for advice from the forum, I decided that maybe it was windows itself causing the hiccup; I did after all go from 8 to 8.1 to 10 without a clean install

So i shut down my main slice, and built up a brand new slice 100GB on the SSD cache

Installed the latest Nvidia drivers

Installed 3Dmark (just to get an rough idea of performance)

Started 3D mark test (Time Spy)...and it crashed

I don't mean the program, i don't mean the VM instance, I mean the entire physical server locked up and had to do a hard reboot on it

So now in my head I'm thinking "There must be a hardware issue"

I ran Memtest86 (full test), no issues though I re-seated all the RAM just to make sure

To crash the physical box there must be something up, unless 3mark is that poorly coded lol

 

So I rebooted my box, and in a rage I modified the original VM slice to be a power hog:

isolating CPU 0-1 for Linux use

Pinning 2,3,4,5,6,7 all for the one windows slice

I also for good measure gave it 28GB of RAM

...and you know what

3D mark at least ran, but gave me a score of 2023 but Tales of Berseria had very little slow down compared to before, though it still not playable

 

So after all said and done, I'm now more loss, because my guy says I have a faulty hardware server that when you go against VM norms and over provision it works decently

 

As always thanks in advance for the help I know will be coming for the VM guru

Link to comment

You could try a bare metal install of Windows on a separate disk and see if taking unRaid and VMs completely out of the equation has any effect.

 

Your symptoms are strange, normally failing hardware crashes the machine, doesn't slow things down. Could it be a video card problem?

Link to comment

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.

Guest
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.