[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH for-2.8 v1 00/60] Modular build of trace event f
From: |
Lluís Vilanova |
Subject: |
Re: [Qemu-devel] [PATCH for-2.8 v1 00/60] Modular build of trace event files |
Date: |
Wed, 14 Sep 2016 15:20:00 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
Daniel P Berrange writes:
> On Fri, Sep 09, 2016 at 03:16:50PM +0200, Lluís Vilanova wrote:
>> > The various _DSTATE variables are still arbitrarily scattered in
>> > memory, as opposed to in a contiguous cache friendly array, which
>> > is one of the goals of Paolo's original change.
>>
>> > That said, I'm unclear on how much of the performance win from
>> > Paolo's change came from eliminating the struct field de-reference,
>> > vs having the contiguous array. I'm guessing most of the win is
>> > from the former, the latter only being important if we hit multiple
>> > related tracepoints on close succession.
>>
>> The latter can also be achieved by packing them all together in a single
>> section, but I don't know if that's acceptable within portable QEMU code. For
>> example:
>>
>> bool ___TRACE_EVENTNAME_DSTATE __attribute__((section("dstate_array")))
> Acutally, it should be sufficient if we just generate all the dstate
> variables in one place in the .c file - the compiler isn't going to
> scatter a set of variables declared one after each other.
That should work.
Lluis
Re: [Qemu-devel] [PATCH for-2.8 v1 00/60] Modular build of trace event files, Daniel P. Berrange, 2016/09/13