From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:44735) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y0dIY-00085I-MA for qemu-devel@nongnu.org; Mon, 15 Dec 2014 16:35:31 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Y0dIP-0003Cg-L3 for qemu-devel@nongnu.org; Mon, 15 Dec 2014 16:35:22 -0500 Received: from mail-wi0-x22d.google.com ([2a00:1450:400c:c05::22d]:44879) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y0dIP-0003Cc-FC for qemu-devel@nongnu.org; Mon, 15 Dec 2014 16:35:13 -0500 Received: by mail-wi0-f173.google.com with SMTP id r20so10341223wiv.0 for ; Mon, 15 Dec 2014 13:35:12 -0800 (PST) Sender: Paolo Bonzini Message-ID: <548F540D.6070908@redhat.com> Date: Mon, 15 Dec 2014 22:35:09 +0100 From: Paolo Bonzini MIME-Version: 1.0 References: <1417518350-6167-1-git-send-email-pbonzini@redhat.com> <5489A243.1020501@kamp.de> In-Reply-To: <5489A243.1020501@kamp.de> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v2 0/7] coroutine: optimizations List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Lieven , qemu-devel@nongnu.org Cc: kwolf@redhat.com, ming.lei@canonical.com, stefanha@redhat.com On 11/12/2014 14:55, Peter Lieven wrote: > On 02.12.2014 12:05, Paolo Bonzini wrote: >> As discussed in the other thread, this brings speedups from >> dropping the coroutine mutex (which serializes multiple iothreads, >> too) and using ELF thread-local storage. >> >> The speedup in perf/cost is about 50% (190->125). Windows port tested >> with tests/test-coroutine.exe under Wine. >> >> Paolo >> >> v1->v2: include the noinline attribute [many...] >> do not mention SwitchToFiber [Kevin] >> rename run_main_iothread_exit -> run_main_thread_exit >> leave personal opinions out of commit messages :) [Kevin] >> mention gain from patch 7 [Peter] >> change "alloc_pool_size +=" to "alloc_pool_size =" [Peter] >> >> Paolo Bonzini (7): >> coroutine-ucontext: use __thread >> qemu-thread: add per-thread atexit functions >> test-coroutine: avoid overflow on 32-bit systems >> QSLIST: add lock-free operations >> coroutine: rewrite pool to avoid mutex >> coroutine: drop qemu_coroutine_adjust_pool_size >> coroutine: try harder not to delete coroutines >> >> block/block-backend.c | 4 -- >> coroutine-ucontext.c | 64 +++++++--------------------- >> include/block/coroutine.h | 10 ----- >> include/qemu/queue.h | 15 ++++++- >> include/qemu/thread.h | 4 ++ >> qemu-coroutine.c | 104 >> ++++++++++++++++++++++------------------------ >> tests/test-coroutine.c | 2 +- >> util/qemu-thread-posix.c | 37 +++++++++++++++++ >> util/qemu-thread-win32.c | 48 ++++++++++++++++----- >> 9 files changed, 157 insertions(+), 131 deletions(-) >> > > Whats the status of this series? Maintainers are probably just waiting for a complete Reviewed-by. If you can provide performance numbers, that would help too. Paolo