Jump to content

Gaming Excellent, Internet Meh


Recommended Posts

HI all

 

So I have been having a nagging issue ever since you guys talked me into VMs...which are awesome!

I can play a cutting edge game on my rig no issue, right now I'm plowing through mad max/fallout4

But when it comes to internet surfing my rig seems to suffer, and I would think those issues would be reverse

 

  • if I'm watching a video on youtube and try to open a new tab, youtube shutters
  • If I try to watch a video on Vimeo, it plays if i had the very first dial up modem
  • If I visit certain websites, like www.equestriadaily.com/ it locks up my browser
  • If I try to surf the net with a video or game running the audio and video lags or skips

These could be all related or all issues on their own I guess

The way I have the System/VM set up is just one Ethernet port that's bonded and bridge...and I'm wondering if that's the issue

Is it better to have a dedicated network card for the VM slice?

Or are there some settings that might help address my issue?

 

What do you all think?

As always thanks in advance

Link to comment
<domain type='kvm' id='58' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>Main</name>
  <uuid>11593592-c37a-6295-c3d4-5ee1be345db3</uuid>
  <metadata>
    <vmtemplate name="Custom" icon="windows.png" os="windows"/>
  </metadata>
  <memory unit='KiB'>30932992</memory>
  <currentMemory unit='KiB'>30932992</currentMemory>
  <memoryBacking>
    <nosharepages/>
    <locked/>
  </memoryBacking>
  <vcpu placement='static'>6</vcpu>
  <cputune>
    <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'/>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-i440fx-2.3'>hvm</type>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough'>
    <topology sockets='1' cores='6' 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/bin/qemu-system-x86_64</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/cache/VMs/Main/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-part1/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-part1/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>
    <controller type='usb' index='0' model='nec-xhci'>
      <alias name='usb'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x08' 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:cc:ba:f4'/>
      <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/Main.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>
    <hostdev mode='subsystem' type='usb' managed='yes'>
      <source>
        <vendor id='0x0461'/>
        <product id='0x4d75'/>
        <address bus='1' device='6'/>
      </source>
      <alias name='hostdev0'/>
    </hostdev>
    <memballoon model='virtio'>
      <alias name='balloon0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
    </memballoon>
  </devices>
  <qemu:commandline>
    <qemu:arg value='-device'/>
    <qemu:arg value='ioh3420,bus=pci.0,addr=1c.0,multifunction=on,port=2,chassis=1,id=root.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=04:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=04:00.1,bus=root.1,addr=00.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=00:12.0,bus=root.1,addr=00.2'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=00:12.2,bus=root.1,addr=00.3'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=00:13.0,bus=root.1,addr=00.4'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=00:13.2,bus=root.1,addr=00.5'/>
  </qemu:commandline>
</domain>

Link to comment

Might be better off unpinning CPU 0 as that's the one allocated to Unraid, so as soon as Unraid needs a bit more grunt, it steals from that one...

This is what always confuses me.

 

The way that I understand it is that using KVM through unRaid is that unRaid has NO cpu's pinned to it at all.  Instead it has (and always will) have access to any and all cores that it requires.  Pinning cores only affects VM's (and dockers if you choose) and merely limits that particular VM to the cores specified.

 

Am I wrong?

Link to comment

Might be better off unpinning CPU 0 as that's the one allocated to Unraid, so as soon as Unraid needs a bit more grunt, it steals from that one...

This is what always confuses me.

 

The way that I understand it is that using KVM through unRaid is that unRaid has NO cpu's pinned to it at all.  Instead it has (and always will) have access to any and all cores that it requires.  Pinning cores only affects VM's (and dockers if you choose) and merely limits that particular VM to the cores specified.

 

Am I wrong?

 

I'm not entirely clear either.  Despite having read a few explanations of it, but I figure it's worth a try....  ???

Link to comment

so far that seemed to do the trick

I'll keep the post updated throughout the weekend if it crashes

But for fun I had mad max running a youtube and was on some of the troubled sites all at the same time and besides confusing audio no lags lol

 

Now my original config i actually left core 7 and 8 and 2GB of RAM set aside for unraid

Do I need to do that

Or just set core 0 aside for unraid and max out the ram on the VM?

Link to comment

Dunno tbh, here's where I read about core 0....

 

I've read about it somewhere else as well but can't find that post....

I think this is the key:

 

I wouldn't pin anything to core 0 because unRAID starts with core 0 when it is doing its various tasks.

This merely sounds to me like normal linux process scheduling.  Same as any other multitasking system.  If the VM pinned cores happen to be idle, then a docker container starts unraring a download and uses all of possible cores, then processor time is going to wind up being stolen from the VM's

 

But then again I'm not an expert on linux process scheduling.  I'm sure that there are tweaks that can be made to the process scheduler, but I doubt that LT has included them by default

 

Link to comment

so far that seemed to do the trick

I'll keep the post updated throughout the weekend if it crashes

But for fun I had mad max running a youtube and was on some of the troubled sites all at the same time and besides confusing audio no lags lol

 

Now my original config i actually left core 7 and 8 and 2GB of RAM set aside for unraid

Do I need to do that

Or just set core 0 aside for unraid and max out the ram on the VM?

Do not set the VM to use all your RAM. That is asking for trouble. There have been some cases lately with unstable VMs caused by allocating to much memory to the VM. What happens then is that unraid shuts it down when it finds out that it need more RAM.

Link to comment

so far that seemed to do the trick

I'll keep the post updated throughout the weekend if it crashes

But for fun I had mad max running a youtube and was on some of the troubled sites all at the same time and besides confusing audio no lags lol

 

Now my original config i actually left core 7 and 8 and 2GB of RAM set aside for unraid

Do I need to do that

Or just set core 0 aside for unraid and max out the ram on the VM?

Do not set the VM to use all your RAM. That is asking for trouble. There have been some cases lately with unstable VMs caused by allocating to much memory to the VM. What happens then is that unraid shuts it down when it finds out that it need more RAM.

 

What saarg said, that's the same exact thing that happened to me: https://lime-technology.com/forum/index.php?topic=45342.0

Link to comment

UnRAID OS is not restricted to any particular CPUs and will utilize whichever are most available automatically (gotta love Linux!).

 

If you wish to reserve CPUs so that unRAID cannot touch them, you can add your following parameter after the "append" in your syslinux.cfg file:  isolcpus=

 

After the =, you can enter which logical CPUs you have wish to isolate in the form of 0,1,2 or 0-2 or a combo thereof such as 0-2,4,7

 

So to limit unRAID to only cores 0 and 1 for example:

 

isolcpus=0-1

 

OR

 

isolcpus=0,1

Link to comment

UnRAID OS is not restricted to any particular CPUs and will utilize whichever are most available automatically (gotta love Linux!).

 

If you wish to reserve CPUs so that unRAID cannot touch them, you can add your following parameter after the "append" in your syslinux.cfg file:  isolcpus=

 

After the =, you can enter which logical CPUs you have wish to isolate in the form of 0,1,2 or 0-2 or a combo thereof such as 0-2,4,7

 

So to limit unRAID to only cores 0 and 1 for example:

 

isolcpus=0-1

 

OR

 

isolcpus=0,1

Someone should really start a KVM FAQ and begin stickying these tidbits
Link to comment

UnRAID OS is not restricted to any particular CPUs and will utilize whichever are most available automatically (gotta love Linux!).

 

If you wish to reserve CPUs so that unRAID cannot touch them, you can add your following parameter after the "append" in your syslinux.cfg file:  isolcpus=

 

After the =, you can enter which logical CPUs you have wish to isolate in the form of 0,1,2 or 0-2 or a combo thereof such as 0-2,4,7

 

So to limit unRAID to only cores 0 and 1 for example:

 

isolcpus=0-1

 

OR

 

isolcpus=0,1

Someone should really start a KVM FAQ and begin stickying these tidbits

We will put a control for that in the webgui eventually.

Link to comment

I'm with Squid on this one jon, we're seeing more and more people who are sold on the gaming rig on Unraid concept, but struggle to get things setup, maybe V6.2 will be super easy to use, and that would be great, but at the moment it's not available and I really thing documentation is a bit haphazard. 

 

It's all there, just needs stickying and amalgamating....

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.

×
×
  • Create New...