LKML Archive on lore.kernel.org help / color / mirror / Atom feed
From: Subrata Modak <subrata@linux.vnet.ibm.com> To: Nadia Derbey <Nadia.Derbey@bull.net> Cc: Andrew Morton <akpm@linux-foundation.org>, ltp-list@lists.sourceforge.net, containers@lists.linux-foundation.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, cmm@us.ibm.com, matthltc@us.ibm.com, y-goto@jp.fujitsu.com Subject: Re: [LTP] [PATCH 1/8] Scaling msgmni to the amount of lowmem Date: Wed, 20 Feb 2008 15:14:55 +0530 [thread overview] Message-ID: <1203500695.4630.0.camel@subratamodak.linux.ibm.com> (raw) In-Reply-To: <47BB0EDC.5000002@bull.net> > Subrata Modak wrote: > >>Nadia Derbey wrote: > >> > >>>Andrew Morton wrote: > >>> > >>> > >>>>On Mon, 11 Feb 2008 15:16:47 +0100 Nadia.Derbey@bull.net wrote: > >>>> > >>>> > >>>> > >>>>>[PATCH 01/08] > >>>>> > >>>>>This patch computes msg_ctlmni to make it scale with the amount of > >>>>>lowmem. > >>>>>msg_ctlmni is now set to make the message queues occupy 1/32 of the > >>>>>available > >>>>>lowmem. > >>>>> > >>>>>Some cleaning has also been done for the MSGPOOL constant: the msgctl > >>>>>man page > >>>>>says it's not used, but it also defines it as a size in bytes (the code > >>>>>expresses it in Kbytes). > >>>>> > >>>> > >>>> > >>>>Something's wrong here. Running LTP's msgctl08 (specifically: > >>>>ltp-full-20070228) cripples the machine. It's a 4-way 4GB x86_64. > >>>> > >>>>http://userweb.kernel.org/~akpm/config-x.txt > >>>>http://userweb.kernel.org/~akpm/dmesg-x.txt > >>>> > >>>>Normally msgctl08 will complete in a second or two. With this patch I > >>>>don't know how long it will take to complete, and the machine is horridly > >>>>bogged down. It does recover if you manage to kill msgctl08. Feels like > >>>>a terrible memory shortage, but there's plenty of memory free and it > >>>>isn't > >>>>swapping. > >>>> > >>>> > >>>> > >>> > >>>Before the patchset, msgctl08 used to be run with the old msgmni value: > >>>16. Now it is run with a much higher msgmni value (1746 in my case), > >>>since it scales to the memory size. > >>>When I call "msgctl08 100000 16" it completes fast. > >>> > >>>Doing the follwing on the ref kernel: > >>>echo 1746 > /proc/sys/kernel/msgmni > >>>msgctl08 100000 1746 > >>> > >>>makes th test block too :-( > >>> > >>>Will check to see where the problem comes from. > >>> > >> > >>Well, actually, the test does not block, it only takes much much more > >>time to be executed: > >> > >>doing this: > >>date; ./msgctl08 100000 XXX; date > >> > >> > >>gives us the following results: > >>XXX 16 32 64 128 256 512 1024 1746 > >>time(secs) 2 4 8 16 32 64 132 241 > >> > >>XXX is the # of msg queues to be created = # of processes to be forked > >>as readers = # of processes to be created as writers > >>time is approximative since it is obtained by a "date" before and after. > >> > >>XXX used to be 16 before the patchset ---> 1st column > >> --> 16 processes forked as reader > >> --> + 16 processes forked as writers > >> --> + 16 msg queues > >>XXX = 1746 (on my victim) after the patchset ---> last column > >> --> 1746 reader processes forked > >> --> + 1746 writers forked > >> --> + 1746 msg queues created > >> > >>The same tests on the ref kernel give approximatly the same results. > >> > >>So if we don't want this longer time to appear as a regression, the LTP > >>should be changed: > >>1) either by setting the result of get_max_msgqueues() as the MSGMNI > >>constant (16) (that would be the best solution in my mind) > >>2) or by warning the tester that it may take a long time to finish. > >> > >>There would be 3 tests impacted: > >> > >>kernel/syscalls/ipc/msgctl/msgctl08.c > >>kernel/syscalls/ipc/msgctl/msgctl09.c > >>kernel/syscalls/ipc/msgget/msgget03.c > > > > > > We will change the test case if need that be. Nadia, kindly send us the > > patch set which will do the necessary changes. > > > > Regards-- > > Subrata > > > > Subrata, > > You'll find the patch in attachment. > FYI I didn't change msgget03.c since we need to get the actual max value > in order to generate an error. Thanks. The same has been Merged. Regards-- Subrata > > Regards, > Nadia >
next prev parent reply other threads:[~2008-02-20 9:44 UTC|newest] Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top 2008-02-11 14:16 [PATCH 0/8] Change default MSGMNI tunable to scale with lowmem (v3) Nadia.Derbey 2008-02-11 14:16 ` [PATCH 1/8] Scaling msgmni to the amount of lowmem Nadia.Derbey 2008-02-16 5:59 ` Andrew Morton 2008-02-18 9:19 ` Nadia Derbey 2008-02-18 13:08 ` Nadia Derbey 2008-02-19 8:50 ` [LTP] " Subrata Modak 2008-02-19 17:16 ` Nadia Derbey 2008-02-19 22:16 ` Matt Helsley 2008-02-21 8:39 ` Nadia Derbey 2008-02-21 12:36 ` Nadia Derbey 2008-02-21 13:02 ` Nadia Derbey 2008-02-21 13:39 ` Subrata Modak 2008-02-22 6:25 ` Nadia Derbey 2008-02-22 8:41 ` Subrata Modak 2008-02-20 9:44 ` Subrata Modak [this message] 2008-04-29 20:28 ` Tony Luck 2008-05-05 8:45 ` Nadia Derbey 2008-05-06 16:42 ` Luck, Tony 2008-05-06 18:05 ` Serge E. Hallyn 2008-05-07 5:37 ` Nadia Derbey 2008-05-07 13:17 ` Serge E. Hallyn 2008-05-07 18:12 ` Matt Helsley 2008-05-07 5:13 ` Nadia Derbey 2008-02-11 14:16 ` [PATCH 2/8] Scaling msgmni to the number of ipc namespaces Nadia.Derbey 2008-02-11 14:16 ` [PATCH 3/8] Defining the slab_memory_callback priority as a constant Nadia.Derbey 2008-02-11 14:16 ` [PATCH 4/8] Recomputing msgmni on memory add / remove Nadia.Derbey 2008-02-11 14:16 ` [PATCH 5/8] Invoke the ipcns notifier chain as a work item Nadia.Derbey 2008-02-11 14:16 ` [PATCH 6/8] Recomputing msgmni on ipc namespace creation/removal Nadia.Derbey 2008-02-11 14:16 ` [PATCH 7/8] Do not recompute msgmni anymore if explicitely set by user Nadia.Derbey 2008-02-11 20:24 ` Andrew Morton 2008-02-12 9:32 ` Nadia Derbey 2008-02-12 9:44 ` Andrew Morton 2008-02-12 15:15 ` Nadia Derbey 2008-02-12 19:44 ` Andrew Morton 2008-02-14 11:47 ` Nadia Derbey 2008-02-12 9:45 ` Nadia Derbey 2008-02-11 14:16 ` [PATCH 8/8] Re-enable msgmni automatic recomputing msgmni if set to negative Nadia.Derbey 2008-02-11 20:27 ` Andrew Morton 2008-02-12 11:38 ` 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=1203500695.4630.0.camel@subratamodak.linux.ibm.com \ --to=subrata@linux.vnet.ibm.com \ --cc=Nadia.Derbey@bull.net \ --cc=akpm@linux-foundation.org \ --cc=cmm@us.ibm.com \ --cc=containers@lists.linux-foundation.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mm@kvack.org \ --cc=ltp-list@lists.sourceforge.net \ --cc=matthltc@us.ibm.com \ --cc=y-goto@jp.fujitsu.com \ /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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).