[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] Simulates the MSIx table read operation
On Wed, Aug 04, 2010 at 10:35:26AM +0800, Liu, Yuan B wrote: > Hi, > This patch simulates the MSIx table read operation to avoid read > traffic caused by guest Linux kernel in a multiple guests environments > running with high interrupt rate workload.(We tested 24 guests with iperf by > 10Gb workload) > > [Background] > The assumptions about underlying hardware of OS running in > the virtual machine environment would not hold for some cases. This is > particularly perceived when considering the CPU virtualization that, the VCPU > of the OS would be scheduled out while physical CPU of OS would never be. > This cause the corner case trouble of OS designed inherently by the > assumption targeting the physical CPU. We have seen the _lock-holder > preemption_ case. Now SR-IOV issue is yet another one. > [Issue] > Linux generic IRQ logic for edge interrupt, during the > 'Writing EOI' period, has been written the way that in a high rate interrupt > environment, the subsequent interrupt would cause the guest busy > masking/unmasking interrupt if the previous one isn't handled immediately(For > e.g. the guest is scheduled out). > The mask/unmask operation would cause a read operation to flush the previous > PCI transactions to ensure the write is successful. This corner case isn't > handled by the Xen which only intercept the Guests' mask/unmask operation and > forward other requests(read/write table) to qemu. > This special case doesn't appear in the light workload but > in the case of many (for e.g. 24) guests, it would cause the CPU utilization > of Dom0 up to 140%(This is proportional to the number of the guests), which > definitely limit the scalability and performance of virtualization technology. > [Effect] > This patch emulates the read operation in the Xen and test > showed that all the abnormal MMIO read operation is eliminated completely > during iperf running in a heavy workload. The CPU utilization has been > dropped to 60% in my test. I am having a hard time understanding this. Is the issue here that read/write of the MSI-X table is being done in QEMU, and it is much better to do so in the hypervisor which traps already the mask/unmaks operation so that QEMU is not overwhelmed by having to do this? With this in patch in place, wouldn't QEMU still do the read operation? > > Thanks, > Yuan > _______________________________________________ > Xen-devel mailing list > Xen-devel@xxxxxxxxxxxxxxxxxxx > http://lists.xensource.com/xen-devel _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |