From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:44669) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aoVj9-0005g7-2u for qemu-devel@nongnu.org; Fri, 08 Apr 2016 08:41:32 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aoVj5-0007NE-Pf for qemu-devel@nongnu.org; Fri, 08 Apr 2016 08:41:31 -0400 Received: from mail-wm0-x22f.google.com ([2a00:1450:400c:c09::22f]:38067) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aoVj5-0007NA-J4 for qemu-devel@nongnu.org; Fri, 08 Apr 2016 08:41:27 -0400 Received: by mail-wm0-x22f.google.com with SMTP id u206so20984781wme.1 for ; Fri, 08 Apr 2016 05:41:27 -0700 (PDT) References: <1460050358-25025-1-git-send-email-cota@braap.org> From: Alex =?utf-8?Q?Benn=C3=A9e?= In-reply-to: <1460050358-25025-1-git-send-email-cota@braap.org> Date: Fri, 08 Apr 2016 13:41:31 +0100 Message-ID: <87d1q0b7d0.fsf@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [PATCH v2 00/10] tb hash improvements List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Emilio G. Cota" Cc: QEMU Developers , MTTCG Devel , Paolo Bonzini , Peter Crosthwaite , Richard Henderson , Peter Maydell , Sergey Fedorov Emilio G. Cota writes: > See v1 for context: > https://lists.gnu.org/archive/html/qemu-devel/2016-04/msg00587.html > > All patches in v2 are checkpatch-clean, except 05 (checkpatch should > be ignored for this one) and 06, which I took unmodified (later patches > fix those warnings while doing other things, anyway). > > Note that patch 01 has already been picked up by Paolo; I left it > here for completeness. > > Another patch that is related to this series is the transition of > tb->flags to uint32_t; this has been sent as a separate patch since > it touches all targets. It shouldn't conflict with this patchset. I've just gotten through v1 so I'll leave this for others to look at and pick up my review on v3. I have been benchmarking though and I like what I see. > > Changes from v1: > - Drop QEMU_CACHELINE, define QEMU_ALIGNED() > + Remove excessive caution about Windows: it supports it. > + define QHT_BUCKET_ALIGN as 64 > - Add some reviewed-by tags from Alex. > - Drop POSIX spinlock wrapper; use the one pointed out by Paolo > + Add a couple of fixes over this spinlock implementation: > * define cpu_relax() for some architectures > * Optimize spin_lock() for uncontended cases > - Add tb_hash_func5, a version of xxhash32 customized for tb-hash, so > that the input values do not have to be contiguous in memory. > + Drop xxhash.h, add only the customized version at exec/tb-hash-xx.h > - qht > + use size_t for counts in qht > * Drop some 2**32 size checks in there; it's not really a problem > in practice. > + s/__func/func__locked/ > + Test program: hash with tb_hash_func5 > > Thanks, > > Emilio -- Alex Bennée