[pve-devel] USB Host passthrough high cpu / interupt usage

Alexandre DERUMIER aderumier at odiso.com
Wed Mar 26 11:25:35 CET 2014


>>mhm cpu load is lower (while doing nothing than getting serial data at 
>>9600 baud) it is now 20% CPU Load instead of 30% before. But that's 
>>still a lot for stupid serial stuff. 

I don't know exactly how works serial->usb device, but maybe they send always interrupts, and not only when datas are sent

>>Do you know if i need to change the 
>>/usr/share/qemu-server/pve-usb.cfg 

I'm not sure we need it for usb3, as it's used to defined the usb1(uhci) on top of usb2(ehci) controller.
(and AFAIK, it's not possible to do usb1->usb3 currently).




----- Mail original ----- 

De: "Stefan Priebe - Profihost AG" <s.priebe at profihost.ag> 
À: "Alexandre DERUMIER" <aderumier at odiso.com> 
Cc: pve-devel at pve.proxmox.com 
Envoyé: Mercredi 26 Mars 2014 11:04:17 
Objet: Re: [pve-devel] USB Host passthrough high cpu / interupt usage 

Am 26.03.2014 10:49, schrieb Alexandre DERUMIER: 
>>> At least i could hack QemuServer.pm and try it before doing any real patch. 
> 
> Yes! 

mhm cpu load is lower (while doing nothing than getting serial data at 
9600 baud) it is now 20% CPU Load instead of 30% before. But that's 
still a lot for stupid serial stuff. 

But latency is still very high now 120ms. 

>>> Is it just replacing uhci with xhci all the time? 
> mmm,I'm not sure, because xhci don't support usb1 hub. (currently usb2 controller avec 1 usb1 controller plugged into it) 
> 
> doc is here: 
> http://git.qemu.org/?p=qemu.git;a=blob_plain;f=docs/usb2.txt;hb=HEAD 
> 
> 
> maybe simply add a new controller: 
> -device nec-usb-xhci,id=xhci.... 
> 
> 
> then change bus=xhci.0 in usb devices 

Yes did it that way. 

> 
>>> Does the machine type (pc vs q35) makes any difference? 
> Don't known for usb. I known that q35 should improve pci express support in guest. 

will try that too. 

Do you know if i need to change the 
/usr/share/qemu-server/pve-usb.cfg 

file? 

Stefan 


> 
> ----- Mail original ----- 
> 
> De: "Stefan Priebe - Profihost AG" <s.priebe at profihost.ag> 
> À: "Alexandre DERUMIER" <aderumier at odiso.com> 
> Cc: pve-devel at pve.proxmox.com 
> Envoyé: Mercredi 26 Mars 2014 09:57:56 
> Objet: Re: [pve-devel] USB Host passthrough high cpu / interupt usage 
> 
> 
> Am 26.03.2014 08:47, schrieb Alexandre DERUMIER: 
>> Hi Stefan, 
>> 
>> Do you see interrupts only when data transfer occur ? 
> 
> Not really sure how to check as data transfer occours all the time. 
> 
> 
>> I known that qemu usb3 implementation use less interrupts, 
>> maybe could we try to implemented it in proxmox. (xhci controller) 
>> (should not be a big task) 
> 
> At least i could hack QemuServer.pm and try it before doing any real patch. 
> 
> Is it just replacing uhci with xhci all the time? Does the machine type 
> (pc vs q35) makes any difference? 
> 
> Stefan 
> 
> 
>> ----- Mail original ----- 
>> 
>> De: "Stefan Priebe" <s.priebe at profihost.ag> 
>> À: pve-devel at pve.proxmox.com 
>> Envoyé: Mardi 25 Mars 2014 23:07:48 
>> Objet: [pve-devel] USB Host passthrough high cpu / interupt usage 
>> 
>> Hi, 
>> 
>> i'm trying to pass through 5 usb devices from the host to the guest. 
>> What i'm wondering is the very high interupt and cpu usage of the guest. 
>> 
>> These usb devices i'm passing are just tty / serial ones - so the data 
>> transfer is VERY low. 
>> 
>> Does anybody habe an idea? Latency for USB data is also very high around 
>> 130ms. 
>> 
>> Stefan 
>> _______________________________________________ 
>> pve-devel mailing list 
>> pve-devel at pve.proxmox.com 
>> http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel 
>> 



More information about the pve-devel mailing list