[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <51AA455B.4060807@colorfullife.com>
Date: Sat, 01 Jun 2013 21:02:51 +0200
From: Manfred Spraul <manfred@...orfullife.com>
To: Rik van Riel <riel@...hat.com>
CC: Davidlohr Bueso <davidlohr.bueso@...com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Mike Galbraith <efault@....de>
Subject: sem_otime trashing
Hi Rik,
I finally managed to get EFI boot, i.e. I'm now able to test on my i3
(2core+HT).
With semscale (i.e.: just overhead, perform semop=0 operations), the
scalability from 1 to 2 cores is good, but not linear:
# semscale 10 | grep "interleave 2"
> Cpus 1, interleave 2 delay 0: 35502103 in 10 secs
> Cpus 2, interleave 2 delay 0: 53990954 in 10 secs
---
+53% when adding the 2nd core
(interleave 2 to force to use different cores)
Did you consider moving sem_otime into the individual semaphores?
I did that (gross patch attached), and the performance is significantly
better:
# semscale 10 | grep "interleave 2"
Cpus 1, interleave 2 delay 0: 35585634 in 10 secs
Cpus 2, interleave 2 delay 0: 70410230 in 10 secs
---
+99% scalability when adding the 2nd core
Unfortunately I won't be able to read my mails next week, but the effect
was too significant not to share it immediately.
--
Manfred
View attachment "patch-sem_otime_WIP" of type "text/plain" (3383 bytes)
Powered by blists - more mailing lists