From: Nadia Derbey <Nadia.Derbey@bull.net>
To: Nadia Derbey <Nadia.Derbey@bull.net>
Cc: Peter Zijlstra <peterz@infradead.org>,
efault@gmx.de, manfred@colorfullife.com,
linux-kernel@vger.kernel.org, paulmck@linux.vnet.ibm.com,
akpm@linux-foundation.org, xemul@openvz.org
Subject: Re: [PATCH 00/13] Re: Scalability requirements for sysv ipc
Date: Mon, 14 Apr 2008 12:52:12 +0200 [thread overview]
Message-ID: <4803375C.3060001@bull.net> (raw)
In-Reply-To: <480316D3.7070901@bull.net>
[-- Attachment #1: Type: text/plain, Size: 3110 bytes --]
Nadia Derbey wrote:
> Peter Zijlstra wrote:
>
>> On Mon, 2008-04-14 at 07:18 +0200, Nadia Derbey wrote:
>>
>>> Peter Zijlstra wrote:
>>>
>>>> On Fri, 2008-04-11 at 18:17 +0200, Nadia.Derbey@bull.net wrote:
>>>>
>>>>
>>>>> Here is finally the ipc ridr-based implementation I was talking
>>>>> about last
>>>>> week (see http://lkml.org/lkml/2008/4/4/208).
>>>>> I couldn't avoid much of the code duplication, but at least made
>>>>> things
>>>>> incremental.
>>>>>
>>>>> Does somebody now a test suite that exists for the idr API, that I
>>>>> could
>>>>> run on this new api?
>>>>>
>>>>> Mike, can you try to run it on your victim: I had such a hard time
>>>>> building
>>>>> this patch, that I couldn't re-run the test on my 8-core with this new
>>>>> version. So the last results I have are for 2.6.25-rc3-mm1.
>>>>>
>>>>> Also, I think a careful review should be done to avoid introducing
>>>>> yet other
>>>>> problems :-(
>>>>
>>>>
>>>>
>>>> Why duplicate the whole thing, when we converted the Radix tree to be
>>>> RCU safe we did it in-place. Is there a reason this is not done for
>>>> idr?
>>>>
>>>>
>>>>
>>>
>>> I did that because I wanted to go fast and try to fix the performance
>>> problem we have with sysV ipc's. I didn't want to introduce (yet
>>> other) regressions in the code that uses idr's today and that works
>>> well ;-)
>>> May be in the future if this rcu based api appears to be ok, we can
>>> replace one with the other?
>>
>>
>>
>>> From what I can see the API doesn't change at all,
>
>
> Well, 1 interface changes, 1 is added and another one went away:
>
> 1) for the preload part (it becomes like the radix-tree preload part):
>
> int idr_pre_get(struct idr *, gfp_t);
> would become
> int idr_pre_get(gfp_t);
>
> 2) idr_pre_get_end() is added (same as radix_tree_preload_end()).
>
> 3) The idr_init() disappears.
>
> You might see that other interfaces are not provided by ridr, but this
> is only because I've taken those that are useful for the ipc part (so
> should not be a problem to make the whole thing rcu safe).
>
>> so I don't see why
>> you need to duplicate - either the new code works as expected or its
>> broken.
>
>
> That's why I asked for an "IDR test suite": I wanted to test potential
> regressions.
>
>> If it works its good enough for all IDR users, if its broken we
>> should fix it. Seems simple enough.. am I missing something obvious?
>>
>
> Regards,
> Nadia
>
BTW, I'm realizing that I forgot to send the results I've got - sorry
for that (I finally could pass the pmsg/psem tests this morning):
These are the output files for the command:
for i in 1 2 3 4 5 6 7 8;do ./pmsg $i 5;done
pmsg_output.25_rc8_mm1.ref.8: output file for the 2.6.25-rc8-mm1
reference kernel
pmsg_output.25_rc8_mm1.ridr.8: output file for the 2.6.25-rc8-mm1
refrence kernel, with ipc's using
rcu-based idr's
psem_output.25_rc8_mm1.ref.8: same as <1> for the psem test
psem_output.25_rc8_mm1.ridr.8: same as <2> for the psem test
Regards,
Nadia
[-- Attachment #2: results.tar.bz2 --]
[-- Type: application/x-redhat-package-manager, Size: 2623 bytes --]
next prev parent reply other threads:[~2008-04-14 10:52 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-11 16:17 [PATCH 00/13] Re: Scalability requirements for sysv ipc Nadia.Derbey
2008-04-11 16:17 ` [PATCH 01/13] duplicate idr code Nadia.Derbey
2008-04-11 16:17 ` [PATCH 02/13] Change ridr structure Nadia.Derbey
2008-04-11 16:17 ` [PATCH 03/13] Fix ridr_pre_get() Nadia.Derbey
2008-04-11 16:17 ` [PATCH 04/13] Fix ridr_alloc_layer() Nadia.Derbey
2008-04-11 16:17 ` [PATCH 05/13] Fix free_layer() Nadia.Derbey
2008-04-11 16:17 ` [PATCH 06/13] Fix sub_alloc() Nadia.Derbey
2008-04-11 16:17 ` [PATCH 07/13] Fix get_empty_slot() Nadia.Derbey
2008-04-11 16:17 ` [PATCH 08/13] Fix ridr_get_new_above_int() Nadia.Derbey
2008-04-11 16:17 ` [PATCH 09/13] Fix ridr_remove() Nadia.Derbey
2008-04-11 16:17 ` [PATCH 10/13] Fix ridr_find() Nadia.Derbey
2008-04-11 16:17 ` [PATCH 11/13] Integrate the ridr code Nadia.Derbey
2008-04-11 16:17 ` [PATCH 12/13] Integrate the ridr code into IPC code Nadia.Derbey
2008-04-11 16:17 ` [PATCH 13/13] Get rid of ipc_lock_down() Nadia.Derbey
2008-04-11 16:27 ` [PATCH 00/13] Re: Scalability requirements for sysv ipc Peter Zijlstra
2008-04-14 5:18 ` Nadia Derbey
2008-04-14 7:15 ` Peter Zijlstra
2008-04-14 8:33 ` Nadia Derbey
2008-04-14 10:52 ` Nadia Derbey [this message]
2008-04-14 18:54 ` Manfred Spraul
2008-04-15 6:13 ` Nadia Derbey
2008-04-19 23:28 ` Paul E. McKenney
2008-04-21 8:07 ` Nadia Derbey
2008-04-21 14:44 ` Paul E. McKenney
2008-04-14 13:54 ` Mike Galbraith
2008-04-14 15:01 ` Nadia Derbey
2008-04-19 23:24 ` Paul E. McKenney
2008-04-19 23:25 ` Paul E. McKenney
2008-04-21 5:59 ` Nadia Derbey
2008-04-29 14:35 ` Nadia Derbey
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4803375C.3060001@bull.net \
--to=nadia.derbey@bull.net \
--cc=akpm@linux-foundation.org \
--cc=efault@gmx.de \
--cc=linux-kernel@vger.kernel.org \
--cc=manfred@colorfullife.com \
--cc=paulmck@linux.vnet.ibm.com \
--cc=peterz@infradead.org \
--cc=xemul@openvz.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.