Hi - Our VMM was doing a lot of unnecessary mmaps and munmaps. The latter trigger TLB shootdowns. This patchset cuts out most of the mmap/munmaps associated with task thread creation (every guest core timer tick) and eventfd_write (virtio-mmio kicks).
As a side note, we don't need to use eventfds in virtio - we should use uthread sync directly and avoid the kernel. Barret The following changes since commit 9db45c3e6abf403a0bfe10ead3950d086e15c827: Fix matrix bug in gethostbyname (XCC) (2017-07-30 12:45:09 -0700) are available in the git repository at: [email protected]:brho/akaros.git vmm for you to fetch changes up to 35cc026dc354164086324e24a5502aa27c6feacf: eventfd: Use write_hex_to_fd() (XCC) (2017-07-31 16:23:25 -0400) ---------------------------------------------------------------- View this online at: https://github.com/brho/akaros/compare/9db45c3e6abf...35cc026dc354 ---------------------------------------------------------------- Barret Rhoden (5): x86: Don't enter the monitor for invalid opcode parlib: slab: Use the modern ctor/dtor interface parlib: slab: mmap with PROT_EXEC vmm: Use a task_thread cache eventfd: Use write_hex_to_fd() (XCC) kern/arch/x86/trap.c | 5 --- .../glibc-2.19-akaros/sysdeps/akaros/eventfd.c | 9 +--- user/iplib/epoll.c | 7 ++-- user/parlib/dtls.c | 4 +- user/parlib/include/parlib/slab.h | 10 +++-- user/parlib/slab.c | 48 ++++++++++++++-------- user/vmm/sched.c | 48 +++++++++++++++++----- 7 files changed, 81 insertions(+), 50 deletions(-) -- You received this message because you are subscribed to the Google Groups "Akaros" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. For more options, visit https://groups.google.com/d/optout.
