Re: [RFC PATCH] alispinlock: acceleration from lock integration on multi-core platform

From: Ling Ma
Date: Thu Jan 14 2016 - 03:10:31 EST


The attachment (alispinlock.tar.bz2) in last email includes our
sample cases for spinlock.
The attachment (lock_test.tar.bz2) in this email includes the patch on
kernel 4.3v ,
which has been applied to actual real kernel locks:
when we run the user space program (thread.c) on 72cores E5-2699v3,
it cause many hot kernel spinlocks from __kmalloc and kfree respectively
with original spinlock cpu cost 25% and 92715428576 cycles after
lock/unlock 1000000 times
with ali spinlock cpu cost 15% and 48475891244 cycles after
lock/unlock 1000000 times.
So we say in the real world workload the ali spinlock improve
performance by 1.9x
(92715428576 cycles/48475891244 cycles)



2016-01-12 21:50 GMT+08:00 One Thousand Gnomes <gnomes@xxxxxxxxxxxxxxxxxxx>:
> On Sat, 9 Jan 2016 06:44:15 +0800
> Ling Ma <> wrote:
>> The attachment (alispinlock.tar.bz2) includes original spinlock and
>> alispinlock ,
>> we compare them on 70 cores based on kernel 4.3, the alispinlock can
>> improve performance upto 3x.
>> the link:
>> indicates when we introduce the idea for real application(user space
>> application caused the bottle neck from kernel spinlock )
>> the spinlock performance is improved by 1.9x (perf top -d1 also tell
>> us the spinlock cost time is reduced from 25% to 15%).
>> Appreciate your comments
> So this has not been applied to actual real kernel locks (ie converted
> some of the hot kernel locks to it) and then benchmarked with a real
> world workload. This is just for the theoretical locking overhead ?
> Alan

Attachment: lock_test.tar.bz2
Description: BZip2 compressed data