kvm-21 release
This is mostly to fix a regression on Core processors, but also to bring you a few performance improvements.
Changes from kvm-20:
- fix regression on Core (not Core 2) processors
- performance improvements (Eddie Dong, Anthony Liguori)
- minor fixes
Notes:
If you use the modules from kvm-21, you can use any version of Linux
from 2.6.9 upwards.
If you use the modules from Linux 2.6.20, you need to use kvm-12. If you use the modules from Linux 2.6.21, you need to use kvm-17.
API/ABI stability is planned for Linux 2.6.22.
Signature · 8 lines
error compiling committee.c: too many arguments to function ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/
A message that is not in the archive (sent off-list or not yet received): 4631F988.4040306-atKUWr5tajBWk0Htik3J/[email protected]
#PF & shadow
I am looking into the efficiency of shadow code and get
interesting sight: Increasing KVM_NUM_MMU_PAGES doesn't help performance which is quit stranger, and the #PF is realitively higher than other virtualization solution.
If any of you have any sight, please let me know.
thanks, eddie
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
A message that is not in the archive (sent off-list or not yet received): 10EA09EFD8728347A513008B6B0DA77A014E8AA1-wq7ZOvIWXbNpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org
Re: #PF & shadow
Quoted 7 lines · Eddie
I am looking into the efficiency of shadow code and get
interesting sight: IncreasingKVM_NUM_MMU_PAGESdoesn't help performance which is quit stranger, and the #PF is realitively higher than other virtualization solution.
If any of you have any sight, please let me know.
thanks, eddie
I know of the following issues in the mmu; of course there are likely more:
1. eviction is based on a FIFO policy instead of an approximation of an LRU.
2. the heuristics of when to unshadow a page (kvm_mmu_pre_write) have not been tuned. This can have two effects:
- a page is unshadowed prematurely, causing many shadow faults later on
- a page is not unshadowed soon enough, causing too many emulations
(a page should be unshadowed if the guest page is no longer a page table, or if it is batch updated as in fork())
3. when we emulate a write, we zero out the shadow entry, but we could instead translate the guest pte and install it in the shadow page. That's the purpose of kvm_mmu_post_post_write() which is currently empty. This could reduce the cost of a guest minor fault from three vmexits to two (one for the guest fault, one for the pte update). I started implementing this but got distracted.
4. not strictly mmu: after an mmio read, we re-enter the guest and get a vmexit directly. Instead we should enter the emulator immediately after an mmio read. I implemented that (b0092d187cfa19dfcada3b85d728af5ae27989dc), but backed it out soon after due to a regression it introduced with nonpae guests. I'll look into redoing it.
Signature · 8 lines
Do not meddle in the internals of kernels, for they are subtle and quick to panic. ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/
A message that is not in the archive (sent off-list or not yet received): 4632E472.20005-atKUWr5tajBWk0Htik3J/[email protected]
Re: #PF & shadow
Quoted 7 lines · Avi Kivity
4. not strictly mmu: after an mmio read, we re-enter the guest and get a vmexit directly. Instead we should enter the emulator immediately after an mmio read. I implemented that (
b0092d187cfa19dfcada3b85d728af5ae27989dc), but backed it out soon after due to a regression it introduced with nonpae guests. I'll look into redoing it.
I've just committed (9bf671a47ed6af3164524a31dbef9360f1b66fb5) and pushed this. All my guests seem to be faring well.
Signature · 8 lines
error compiling committee.c: too many arguments to function ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/