From owner-freebsd-hackers Sat Feb 19 12:14:54 2000 Delivered-To: freebsd-hackers@freebsd.org Received: from apollo.backplane.com (apollo.backplane.com [216.240.41.2]) by hub.freebsd.org (Postfix) with ESMTP id BFFD637BCFE for ; Sat, 19 Feb 2000 12:14:49 -0800 (PST) (envelope-from dillon@apollo.backplane.com) Received: (from dillon@localhost) by apollo.backplane.com (8.9.3/8.9.1) id MAA96756; Sat, 19 Feb 2000 12:13:25 -0800 (PST) (envelope-from dillon) Date: Sat, 19 Feb 2000 12:13:25 -0800 (PST) From: Matthew Dillon Message-Id: <200002192013.MAA96756@apollo.backplane.com> To: Patryk Zadarnowski Cc: Arun Sharma , freebsd-hackers@FreeBSD.ORG Subject: Re: 64bit OS? References: <200002190110.MAA31421@mycenae.ilion.eu.org> Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG :Kevin Elphinstone did a PhD thesis on TLB structures for 64 bit address spaces :and it turns out that hash tables perform quite poorly. I'd suggest GPTs :instead, or maybe LPCtrie that Chris Szmajda has been working on here at UNSW. :Both have the advantage of supporting multiple page sizes that IA64 (and :Alpha) offer, and hence dramatically increasing the TLB coverage over what :Linux (or any other commercial OS that took a bite at IA64) can achieve. :Kevin's paper's at: :ftp://ftp.cse.unsw.edu.au/pub/users/disy/papers/Elphinstone:phd.ps.gz : :Maybe that way we can somehow make use of the Itanium's 4GB page size ;)))) : :Pat. Linux has a good idea re: mapping all of real memory into KVM, it's just one that doesn't work well on a 32 bit architecture :-). But on a 64 bit architecture it can be seriously useful. At the very least we can get rid of the private pmap pages and make pmap copying a much faster operation. I read Kevin's thesis. Facinating! The GPT concept is essentially a radix tree (and a degenerate version of the radix tree is, of course, the normal two-level page table IA32 uses). All the memory and performance issues Kevin brings up are exactly the same memory and performance issues that a radix tree has. And he is bang-on in regards to node sharing. With a normal page table node sharing is difficult because each page in the page table represents a large area of memory (4MB on IA32). But using a GPT we can potentially node-share the bulk of the pages associated with shared libraries despite there being COW'd pages in the middle of that space from the dynamic linking. -Matt Matthew Dillon To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message