9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: erik quanstrom <quanstro@quanstro.net>
To: 9fans@9fans.net
Subject: Re: [9fans] Maximal number of processes
Date: Fri, 10 Jan 2014 08:48:23 -0500	[thread overview]
Message-ID: <b1e6d4033de5ab04793ad89741c538cb@brasstown.quanstro.net> (raw)
In-Reply-To: <CAOw7k5gxd0Bdp1Vd7TG_f_p7ShueCKhw_fZ-C+7qwxCDy=cw8g@mail.gmail.com>

> 20,000 did not work because it ran out of kernel physical memory. That
> preallocation could be adjusted, but at some point the available kernel
> virtual address space will limit what it can allocate.

at the cost of moving KZERO down 256MB on the pae kernel,

	ivey# ps|wc
	  15961  111727  957732

and even more

	ivey; ps|wc
	  30064  210448 1803915

	ivey# cat /dev/swap
	17153769472 memory
	4096 pagesize
	131072 kernel
	271322/4056860 user
	0/0 swap
	0/17877472 kernel malloc
	0/17877472 kernel draw

interestingly, the time to launch 1000 sleeps went up in a non-linear way
here's the time to launch each 1000 processes

1000	0
2000	0
3000	1
4000	0
5000	1
6000	0
7000	1
8000	1
9000	0
10000	1
11000	1
12000	1
13000	1
14000	1
15000	2
16000	1
17000	2
18000	2
19000	2
20000	3
21000	3
22000	4
23000	4
24000	5
25000	5
26000	5
27000	7
28000	7
29000	8
30000	8

launching 32000 processes was not possible.  the kernel got stuck.

here's one thing that's not immediately obvious, even when running the
kernel.  conv.nmach must be less than 0x7fffffff/(1000*1000) = 2147
to prevent reprioritize from doing silly things:

	/*
	 *  fairshare = 1.000 * conf.nproc * 1.000/load,
	 * except the decimal point is moved three places
	 * on both load and fairshare.
	 */
	fairshare = (conf.nmach*1000*1000)/load;

- erik



  parent reply	other threads:[~2014-01-10 13:48 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-08  8:28 Pavel Klinkovský
2014-01-08 10:15 ` erik quanstrom
2014-01-08 15:23 ` Steven Stallion
2014-01-08 16:55   ` erik quanstrom
2014-01-09  8:08   ` Pavel Klinkovský
2014-01-09  9:45     ` Bruce Ellis
2014-01-09 16:36       ` Pavel Klinkovský
2014-01-10  9:11     ` Charles Forsyth
2014-01-10  9:15       ` Charles Forsyth
2014-01-10  9:38         ` Bruce Ellis
2014-01-10 13:48         ` erik quanstrom [this message]
2014-01-10 14:00           ` erik quanstrom
2014-01-10 14:24             ` Pavel Klinkovský

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=b1e6d4033de5ab04793ad89741c538cb@brasstown.quanstro.net \
    --to=quanstro@quanstro.net \
    --cc=9fans@9fans.net \
    /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 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).