[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC PATCH] qht: Align sequence lock to cache line
From: |
Pranith Kumar |
Subject: |
Re: [Qemu-devel] [RFC PATCH] qht: Align sequence lock to cache line |
Date: |
Tue, 25 Oct 2016 11:49:08 -0400 |
On Tue, Oct 25, 2016 at 11:41 AM, Paolo Bonzini <address@hidden> wrote:
>
>
> On 25/10/2016 17:35, Pranith Kumar wrote:
>> Using perf, I see that sequence lock is being a bottleneck since it is
>> being read by everyone. Giving it its own cache-line seems to help
>> things quite a bit.
>>
>> Using qht-bench, I measured the following for:
>>
>> $ ./tests/qht-bench -d 10 -n 24 -u <x>
>>
>> throughput base patch %change
>> update
>> 0 8.07 13.33 +65%
>> 10 7.10 8.90 +25%
>> 20 6.34 7.02 +10%
>> 30 5.48 6.11 +9.6%
>> 40 4.90 5.46 +11.42%
>>
>> I am not able to see any significant increases for lower thread counts
>> though.
>
> Whoa, that's a bit of a heavy hammer. The idea is that whoever modifies
> the seqlock must take the spinlock first, and whoever reads the seqlock
> will read one of the members of hashes[]/pointers[]. So having
> everything in the same cacheline should be better.
But we are taking the seqlock of only the head bucket, while the
readers are reading hashes/pointers of the chained buckets.
>
> What happens if you just change QHT_BUCKET_ALIGN to 128?
>
0 4.47
10 9.82 (weird!)
20 8.13
30 7.13
40 6.45
Thanks,
--
Pranith
- [Qemu-devel] [RFC PATCH] qht: Align sequence lock to cache line, Pranith Kumar, 2016/10/25
- Re: [Qemu-devel] [RFC PATCH] qht: Align sequence lock to cache line, Paolo Bonzini, 2016/10/25
- Re: [Qemu-devel] [RFC PATCH] qht: Align sequence lock to cache line,
Pranith Kumar <=
- Re: [Qemu-devel] [RFC PATCH] qht: Align sequence lock to cache line, Paolo Bonzini, 2016/10/25
- Re: [Qemu-devel] [RFC PATCH] qht: Align sequence lock to cache line, Pranith Kumar, 2016/10/25
- Re: [Qemu-devel] [RFC PATCH] qht: Align sequence lock to cache line, Paolo Bonzini, 2016/10/25
- Re: [Qemu-devel] [RFC PATCH] qht: Align sequence lock to cache line, Pranith Kumar, 2016/10/25
- Re: [Qemu-devel] [RFC PATCH] qht: Align sequence lock to cache line, Emilio G. Cota, 2016/10/25
- Re: [Qemu-devel] [RFC PATCH] qht: Align sequence lock to cache line, Paolo Bonzini, 2016/10/25
Re: [Qemu-devel] [RFC PATCH] qht: Align sequence lock to cache line, Emilio G. Cota, 2016/10/25