Re: Sharing page tables for shared memory

Muthu (MOLAGAPP.IN.oracle.com.ofcmail@in.oracle.com)
15 Dec 98 07:31:29 +0330


--=_ORCL_3958580_0_11919812151109230
Content-Transfer-Encoding:7bit
Content-Type:text/plain; charset="us-ascii"

Hi,

In case of oracle, the shared memory will be around 120MB or more and each
client connected will share this memory.

Assume, the case of 50 clients connected, then
4Mb saves 4K
120Mb saves 120Kb per processe

If there are 50 clients then 120Kb x 50 =6000kb (huge number).

The important thing, to be noted is as the number of clients increases, the
performance will decrease. I think, it is worth to implement this.



Regards,

Muthu. O.L.


--=_ORCL_3958580_0_11919812151109230
Content-Type:message/rfc822

Date: 15 Dec 98 05:13:04
From:"Jamie Lokier <lkd@tantalophile.demon.co.uk>" <jamie@imbolc.ucc.ie>
To:Muthu,<MOLAGAPP.IN.ORACLE.COM.ofcmail@in.oracle.com>,linux-kernel@vger.rutgers.edu
Subject:Re: Sharing page tables for shared memory
Received:from inet16.us.oracle.com by insun023 with ESMTP (SMI-8.6/37.8) id UAA12765; Mon, 14 Dec 1998 20:58:44 -0500
Received:from post.mail.demon.net (post-11.mail.demon.net [194.217.242.40]) by inet16.us.oracle.com (8.8.5/8.8.5) with ESMTP id RAA01810 for <MOLAGAPP.IN.ORACLE.COM.ofcmail@in.oracle.com>; Mon, 14 Dec 1998 17:56:54 -0800 (PST)
Received:from [193.237.65.219] (helo=tantalophile.demon.co.uk) by post.mail.demon.net with esmtp (Exim 2.054 #1) id 0zpjk1-0005mj-00; Tue, 15 Dec 1998 01:57:37 +0000
Received:(from jamie@localhost) by tantalophile.demon.co.uk (8.8.7/8.8.7) id BAA06537; Tue, 15 Dec 1998 01:43:04 GMT
Message-ID:<19981215014304.H6151@tantalophile.demon.co.uk>
X-Mailer:Mutt 0.93.2
In-Reply-To:<no.id>; from Muthu on Mon, Dec 14, 1998 at 05:01:58PM +0530
MIME-Version: 1.0
Content-Transfer-Encoding:7bit
Content-Type:text/plain; charset="us-ascii"

On Mon, Dec 14, 1998 at 05:01:58PM +0530, Muthu wrote:
> Is creating Shared memory of greater or closer to 4MB creates page table
> entries in all processes sharing it?

Yes.

> I think, it will be good to allocate a single page-table and share it
> across process than creating 1024 PTE's in all processes sharing it. Is this
> taken care in 2.1.x kernel?

Perhaps it would be good; no it isn't done. It would complicate many
things, to save 4k of memory. And only for >4MB shared mappings at the
same virtual address. These are very rare.

0.1% memory saving in rare cases at great complexity.
In my humble opinion, not worth it.

Shared page tables for fork() may be worth it, but that's a very
different thing (requires COW page tables, complications in the fault
handlers etc.)

-- Jamie

--=_ORCL_3958580_0_11919812151109230--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/