[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 0/2] Dynamic module support for block drivers
From: |
Marc Marí |
Subject: |
Re: [Qemu-devel] [PATCH v2 0/2] Dynamic module support for block drivers |
Date: |
Mon, 21 Sep 2015 15:27:37 +0200 |
Ping!
Anyone has more comments for the next version?
Thanks
Marc
>On Tue, 8 Sep 2015 15:53:20 +0200
>Marc Marí <address@hidden> wrote:
>
> The current module infrastructure has been improved to enable dynamic
> module loading.
>
> This reduces the load time for very simple guests. For the following
> configuration (very loaded)
>
> ./configure --enable-sdl --enable-gtk --enable-vte --enable-curses \
> --enable-vnc --enable-vnc-{jpeg,tls,sasl,png} --enable-virtfs \
> --enable-brlapi --enable-curl --enable-fdt --enable-bluez \
> --enable-kvm --enable-rdma --enable-uuid --enable-vde \
> --enable-linux-aio --enable-cap-ng --enable-attr
> --enable-vhost-net \ --enable-vhost-scsi --enable-spice --enable-rbd
> --enable-libiscsi \ --enable-smartcard-nss --enable-guest-agent
> --enable-libusb \ --enable-usb-redir --enable-lzo --enable-snappy
> --enable-bzip2 \ --enable-seccomp --enable-coroutine-pool
> --enable-glusterfs \ --enable-tpm --enable-libssh2 --enable-vhdx
> --enable-numa \ --enable-tcmalloc --target-list=x86_64-softmmu
>
> With modules disabled, there are 142 libraries loaded at startup.
> Time is the following:
> LD time: 0.065 seconds
> QEMU time: 0.02 seconds
> Total time: 0.085 seconds
>
> With this patch series and modules enabled, there are 128 libraries
> loaded at startup. Time is the following:
> LD time: 0.02 seconds
> QEMU time: 0.02 seconds
> Total time: 0.04 seconds
>
> Where LD time is the time between the program startup and the jump to
> main, and QEMU time is the time between the start of main and the
> first kvm_entry.
>
> These results are just with a few block drivers, that were already a
> module. Adding more modules (block or not block) should be easy, and
> will reduce the load time even more.
>
> Marc Marí (2):
> Add dynamic module loading for block drivers
> Add dynamic generation of module_block.h
>
> .gitignore | 1 +
> Makefile | 10 ++-
> block.c | 70 +++++++++++++++++++++
> configure | 2 +-
> include/qemu/module.h | 3 +
> scripts/modules/module_block.py | 134
> ++++++++++++++++++++++++++++++++++++++++
> util/module.c | 38 ++++-------- 7 files changed,
> 227 insertions(+), 31 deletions(-) create mode 100755
> scripts/modules/module_block.py
>