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.

Problème latence VM Win 11

Featured Replies

Bonjour,

 

Possesseur d'un core i7 13700K, je me sers de ma machine principalement pour jouer mais aussi serveur de fichiers, serveur de jeu, domotique, plex. (1 ou 2 VM gaming avec chacun leur SSD/GPU "passthrough", uniquement sur les coeurs hautes performances)  

 

Mon problème Quand j'utilise ma VM gaming, je constate de gros pics de latence en jouant (observable via le logiciel LatencyMon) :

 

REPORTED DPCs
_________________________________________________________________________________________________________
DPC routines are part of the interrupt servicing dispatch mechanism and disable the possibility for a process to utilize the CPU while it is interrupted until the DPC has finished execution.

Highest DPC routine execution time (µs):              11663,727911
Driver with highest DPC routine execution time:       ntoskrnl.exe - NT Kernel & System, Microsoft Corporation

Highest reported total DPC routine time (%):          0,014317
Driver with highest DPC total execution time:         dxgkrnl.sys - DirectX Graphics Kernel, Microsoft Corporation

 

J'ai donc décidé de tester sans UNRAID en bootant sur le SSD directement et là, aucun problème de latence, une joie d'avoir des performances libérée ce qui me fait parfois alterner avec UNRAID et sans UNRAID en fonction des besoins mais ce n'est vraiment pratique me direz vous...

J'ai déjà testé plusieurs solutions trouvées sur les forums ici ou sur Reddit, mais je constate toujours des ralentissements (voir micro freeze, le son "craque") quand je suis sous VM UNRAID. 

 

Est-ce que quelqu'un aurait des pistes pour m'aider à isoler le problème et possiblement le résoudre ? 

Merci d'avance.

 

PS : ci après la configuration de la VM gaming "principale"

 

<?xml version='1.0' encoding='UTF-8'?>
<domain type='kvm' id='1'>
  <name>Windows 11 G</name>
  <uuid>ca2d998f-3bf0-c590-1b56-1853a91cc511</uuid>
  <metadata>
    <vmtemplate xmlns="unraid" name="Windows 11" icon="windows11.png" os="windowstpm"/>
  </metadata>
  <memory unit='KiB'>12582912</memory>
  <currentMemory unit='KiB'>12582912</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>16</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'/>
    <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'/>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-i440fx-7.2'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi-tpm.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/ca2d998f-3bf0-c590-1b56-1853a91cc511_VARS-pure-efi-tpm.fd</nvram>
    <boot dev='fd'/>
  </os>
  <features>
    <acpi/>
    <apic/>
    <hyperv mode='custom'>
      <relaxed state='on'/>
      <vapic state='on'/>
      <spinlocks state='on' retries='8191'/>
      <vendor_id state='on' value='none'/>
    </hyperv>
  </features>
  <cpu mode='host-passthrough' check='none' migratable='on'>
    <topology sockets='1' dies='1' cores='8' threads='2'/>
    <cache mode='passthrough'/>
  </cpu>
  <clock offset='localtime'>
    <timer name='hypervclock' present='yes'/>
    <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='cdrom'>
      <driver name='qemu' type='raw'/>
      <source file='/mnt/user/isos/virtio-win-0.1.262-2.iso' index='1'/>
      <backingStore/>
      <target dev='hdb' bus='ide'/>
      <readonly/>
      <alias name='ide0-0-1'/>
      <address type='drive' controller='0' bus='0' target='0' unit='1'/>
    </disk>
    <controller type='usb' index='0' model='qemu-xhci' ports='15'>
      <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='sata' index='0'>
      <alias name='sata0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </controller>
    <controller type='ide' index='0'>
      <alias name='ide'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <alias name='virtio-serial0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:46:93:72'/>
      <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 type='isa-serial' port='0'>
        <model name='isa-serial'/>
      </target>
      <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 11 G/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>
    <tpm model='tpm-tis'>
      <backend type='emulator' version='2.0' persistent_state='yes'/>
      <alias name='tpm0'/>
    </tpm>
    <audio id='1' type='none'/>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
      </source>
      <alias name='hostdev0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x01' slot='0x00' function='0x1'/>
      </source>
      <alias name='hostdev1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x00' slot='0x14' function='0x0'/>
      </source>
      <alias name='hostdev2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x00' slot='0x14' function='0x3'/>
      </source>
      <alias name='hostdev3'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x09' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
      </source>
      <alias name='hostdev4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x0a' function='0x0'/>
    </hostdev>
    <memballoon model='none'/>
  </devices>
  <seclabel type='dynamic' model='dac' relabel='yes'>
    <label>+0:+100</label>
    <imagelabel>+0:+100</imagelabel>
  </seclabel>
</domain>


LatencyMon, sans Unraid

LatencyMon Win11 - no VM.png

LatencyMon, sous VM Unraid avec tous les cœurs haute performance activés 

LatencyMon Win 11 - VM UNRAID.png

Edited by Gusssss

  • Community Expert

Alors déjà ton CPU doit être super violent !

1) As tu essayé avec un VM en Q35 au lieu de pc-i440fx ?

2) As tu essayé d'isoler les CPU exclisivement pour Winodws ?

Car si je ne me trompe pas, tu utilise tout les CPU disponibles pour Windows ? unRAID utilise donc aussi les CPU ?

Je réserve toujours des CPU pour unRAID...

Tu nous diras.

  • Author
4 hours ago, PicPoc said:

Alors déjà ton CPU doit être super violent !

1) As tu essayé avec un VM en Q35 au lieu de pc-i440fx ?

2) As tu essayé d'isoler les CPU exclisivement pour Winodws ?

Car si je ne me trompe pas, tu utilise tout les CPU disponibles pour Windows ? unRAID utilise donc aussi les CPU ?

Je réserve toujours des CPU pour unRAID...

Tu nous diras.

Bonjour, merci d'avoir pris le temps de me répondre.

- Au sujet du CPU, les coeurs hautes performances sont isolés sur la ou les VM. Les coeurs efficients ne sont pas attribués afin de faire fonctionner Unraid et les Dockers.

- Concernant le passage en VM Q35, j'ai déjà  essayé mais sans succès, je reste bloqué sur le BIOS, peux être un paramétrage à faire... Je vais retenter dès que possible pour voir si le problème persiste.

 

Sinon oui le 13700K envoie du lourd, quand il est bien exploité ... 😀

 

Guillaume.

  • Community Expert
41 minutes ago, Gusssss said:

- Concernant le passage en VM Q35, j'ai déjà  essayé mais sans succès, je reste bloqué sur le BIOS, peux être un paramétrage à faire... Je vais retenter dès que possible pour voir si le problème persiste.

Pour "basculer" en Q35, tu dois refaire la configuration de la VM car ça ne fonctionne pas en changement.

Si ca ne fonctionne pas, réinstaller windows à la suite de la nouvelle config.

 

Hello tu as un post sur le sujet

 

 

Pour ma part j'ai essayé mais j'ai pas observer de changement flagrant bon après j'utilise rarement ma vm uniquement pour les jeux qui ne marche pas avec Docker donc je suis pas un exemple très probant :) 

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

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.