[<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
 
