9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* [9fans] Current status of amd64 port?
@ 2007-11-15 22:51 Anthony Sorace
  2007-11-15 22:56 ` Uriel
  2007-11-15 23:14 ` Tharaneedharan Vilwanathan
  0 siblings, 2 replies; 34+ messages in thread
From: Anthony Sorace @ 2007-11-15 22:51 UTC (permalink / raw)
  To: 9fans

What's the current status of the AMD64 port (compiler and kernel)?  
I've just got a new server which would make a positively lovely  
target for it. Alternately, who's the contact person?
Anthony


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-15 22:51 [9fans] Current status of amd64 port? Anthony Sorace
@ 2007-11-15 22:56 ` Uriel
  2007-11-16  6:14   ` ron minnich
  2007-11-15 23:14 ` Tharaneedharan Vilwanathan
  1 sibling, 1 reply; 34+ messages in thread
From: Uriel @ 2007-11-15 22:56 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

Maybe someone could tell you, but they would have to kill you afterwards.

uriel

P.S.: Obviously even if I knew anything about this subject I could not
confirm or deny any such knowledge without breaching the laws that
govern the wonderfully open and transparent plan9 development process
(assuming that there is any such thing).

On Nov 15, 2007 11:51 PM, Anthony Sorace <anothy@gmail.com> wrote:
> What's the current status of the AMD64 port (compiler and kernel)?
> I've just got a new server which would make a positively lovely
> target for it. Alternately, who's the contact person?
> Anthony
>
>


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-15 22:51 [9fans] Current status of amd64 port? Anthony Sorace
  2007-11-15 22:56 ` Uriel
@ 2007-11-15 23:14 ` Tharaneedharan Vilwanathan
  2007-11-15 23:39   ` erik quanstrom
  1 sibling, 1 reply; 34+ messages in thread
From: Tharaneedharan Vilwanathan @ 2007-11-15 23:14 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

this question also came up in bay area plan9 meeting. would be nice to
know the status. i think unix adopted 32-bit earlier than other OSes.
but for 64-bit, others have gone ahead.

On 11/15/07, Anthony Sorace <anothy@gmail.com> wrote:
> What's the current status of the AMD64 port (compiler and kernel)?
> I've just got a new server which would make a positively lovely
> target for it. Alternately, who's the contact person?
> Anthony
>
>


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-15 23:14 ` Tharaneedharan Vilwanathan
@ 2007-11-15 23:39   ` erik quanstrom
  2007-11-16  0:10     ` Tharaneedharan Vilwanathan
                       ` (3 more replies)
  0 siblings, 4 replies; 34+ messages in thread
From: erik quanstrom @ 2007-11-15 23:39 UTC (permalink / raw)
  To: 9fans

On Thu Nov 15 18:14:18 EST 2007, vdharani@gmail.com wrote:
> this question also came up in bay area plan9 meeting. would be nice to
> know the status. i think unix adopted 32-bit earlier than other OSes.
> but for 64-bit, others have gone ahead.
> 

64 bits is neither here nor there in a vaccuum.  you want 64 bits if
a) you need more than 4GB of memory, or
a) those extra registers and direct vlong really matter for performance.
otherwise it's just a lot of extra zeros.

it's kind of silly to run 64-bit linux on a machine with <= 4GB of memory.

- erik


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-15 23:39   ` erik quanstrom
@ 2007-11-16  0:10     ` Tharaneedharan Vilwanathan
  2007-11-16  0:18     ` Anthony Sorace
                       ` (2 subsequent siblings)
  3 siblings, 0 replies; 34+ messages in thread
From: Tharaneedharan Vilwanathan @ 2007-11-16  0:10 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

hi erik,

i got 2*1GB for $30 this week. next year, >4GB will be far cheaper.

on the 64-bit stuff, wouldnt it be nice to keep up with the hardware
advancement?

thanks
dharani

On 11/15/07, erik quanstrom <quanstro@coraid.com> wrote:
> On Thu Nov 15 18:14:18 EST 2007, vdharani@gmail.com wrote:
> > this question also came up in bay area plan9 meeting. would be nice to
> > know the status. i think unix adopted 32-bit earlier than other OSes.
> > but for 64-bit, others have gone ahead.
> >
>
> 64 bits is neither here nor there in a vaccuum.  you want 64 bits if
> a) you need more than 4GB of memory, or
> a) those extra registers and direct vlong really matter for performance.
> otherwise it's just a lot of extra zeros.
>
> it's kind of silly to run 64-bit linux on a machine with <= 4GB of memory.
>
> - erik
>


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-15 23:39   ` erik quanstrom
  2007-11-16  0:10     ` Tharaneedharan Vilwanathan
@ 2007-11-16  0:18     ` Anthony Sorace
  2007-11-16  7:57     ` Robert William Fuller
  2007-11-16 14:41     ` David Leimbach
  3 siblings, 0 replies; 34+ messages in thread
From: Anthony Sorace @ 2007-11-16  0:18 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Nov 15, 2007, at 18:39, erik quanstrom wrote:

> it's kind of silly to run 64-bit linux on a machine with <= 4GB of  
> memory.

unless, as you said, you need the registers (eh) or the direct vlong  
(nice for some things).

my new cpu server has 4GB today. i was shocked at how cheap it was.  
if the software can make use of it, upgrades beyond that are  
certainly not out of the question. it'd be nice to not have to worry  
about upas/fs eating all my ram. ;-)

also, i think there is benefit to early support for the "up and  
coming" platform. it's clearly the direction things are headed  
(although Windows has slowed that down some).

For those who've run it, do we have performance numbers for 8c vs 6c  
in various instances?
Anthony


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-15 22:56 ` Uriel
@ 2007-11-16  6:14   ` ron minnich
  0 siblings, 0 replies; 34+ messages in thread
From: ron minnich @ 2007-11-16  6:14 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Nov 15, 2007 2:56 PM, Uriel <uriel99@gmail.com> wrote:

> P.S.: Obviously even if I knew anything about this subject I could not
> confirm or deny any such knowledge without breaching the laws that
> govern the wonderfully open and transparent plan9 development process
> (assuming that there is any such thing).


http://www.westegg.com/unmaintained/carnegie/win-friends.html

ron


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-15 23:39   ` erik quanstrom
  2007-11-16  0:10     ` Tharaneedharan Vilwanathan
  2007-11-16  0:18     ` Anthony Sorace
@ 2007-11-16  7:57     ` Robert William Fuller
  2007-11-16 10:05       ` erik quanstrom
  2007-11-16 14:41     ` David Leimbach
  3 siblings, 1 reply; 34+ messages in thread
From: Robert William Fuller @ 2007-11-16  7:57 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

erik quanstrom wrote:
> On Thu Nov 15 18:14:18 EST 2007, vdharani@gmail.com wrote:
>> this question also came up in bay area plan9 meeting. would be nice to
>> know the status. i think unix adopted 32-bit earlier than other OSes.
>> but for 64-bit, others have gone ahead.
>>
> 
> 64 bits is neither here nor there in a vaccuum.  you want 64 bits if
> a) you need more than 4GB of memory, or
> a) those extra registers and direct vlong really matter for performance.
> otherwise it's just a lot of extra zeros.

Let's not commit a false alternatives fallacy here....  For example, the
very large virtual address space of 64bit is useful, even without 4 GB
of RAM.  It allows all sorts of madnesses, such as memory mapping
petabyte sized devices, or other programmatic conveniences such as large
sparse vectors.

Rob


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16  7:57     ` Robert William Fuller
@ 2007-11-16 10:05       ` erik quanstrom
  2007-11-16 10:20         ` Charles Forsyth
  2007-11-16 22:38         ` ron minnich
  0 siblings, 2 replies; 34+ messages in thread
From: erik quanstrom @ 2007-11-16 10:05 UTC (permalink / raw)
  To: 9fans

> > 64 bits is neither here nor there in a vaccuum.  you want 64 bits if
> > a) you need more than 4GB of memory, or
> > a) those extra registers and direct vlong really matter for performance.
> > otherwise it's just a lot of extra zeros.
> 
> Let's not commit a false alternatives fallacy here....  For example, the
> very large virtual address space of 64bit is useful, even without 4 GB
> of RAM.  It allows all sorts of madnesses, such as memory mapping
> petabyte sized devices, or other programmatic conveniences such as large
> sparse vectors.

there is no fallacy here.  remember Plan 9 is Not Multics.
plan 9 doesn't memory map drives.  in fact, there is no mmap function
at all.  plan 9 doesn't use dsm either.

i'm not sure what you mean by "programming conveniences such as
large, sparse vectors".

- erik


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16 10:05       ` erik quanstrom
@ 2007-11-16 10:20         ` Charles Forsyth
  2007-11-16 22:38         ` ron minnich
  1 sibling, 0 replies; 34+ messages in thread
From: Charles Forsyth @ 2007-11-16 10:20 UTC (permalink / raw)
  To: 9fans

> large, sparse vectors".

because the amd64 has similar page tables to x86 performance
and memory usage might be disappointing.


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-15 23:39   ` erik quanstrom
                       ` (2 preceding siblings ...)
  2007-11-16  7:57     ` Robert William Fuller
@ 2007-11-16 14:41     ` David Leimbach
  2007-11-16 14:46       ` erik quanstrom
  3 siblings, 1 reply; 34+ messages in thread
From: David Leimbach @ 2007-11-16 14:41 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Nov 15, 2007 3:39 PM, erik quanstrom <quanstro@coraid.com> wrote:
> On Thu Nov 15 18:14:18 EST 2007, vdharani@gmail.com wrote:
> > this question also came up in bay area plan9 meeting. would be nice to
> > know the status. i think unix adopted 32-bit earlier than other OSes.
> > but for 64-bit, others have gone ahead.
> >
>
> 64 bits is neither here nor there in a vaccuum.  you want 64 bits if
> a) you need more than 4GB of memory, or
> a) those extra registers and direct vlong really matter for performance.
> otherwise it's just a lot of extra zeros.
>
> it's kind of silly to run 64-bit linux on a machine with <= 4GB of memory.
>

Per your second a), performance does often improve quite a bit with 2x
the general purpose registers.

RAM is dropping in price too... why not run 64bit all the time then?


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16 14:41     ` David Leimbach
@ 2007-11-16 14:46       ` erik quanstrom
  2007-11-16 15:33         ` Wilhelm B. Kloke
  2007-11-16 15:33         ` David Leimbach
  0 siblings, 2 replies; 34+ messages in thread
From: erik quanstrom @ 2007-11-16 14:46 UTC (permalink / raw)
  To: 9fans

> Per your second a), performance does often improve quite a bit with 2x
> the general purpose registers.
> 

do you have some specific numbers to back up this claim?

- erik


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16 14:46       ` erik quanstrom
@ 2007-11-16 15:33         ` Wilhelm B. Kloke
  2007-11-16 15:33         ` David Leimbach
  1 sibling, 0 replies; 34+ messages in thread
From: Wilhelm B. Kloke @ 2007-11-16 15:33 UTC (permalink / raw)
  To: 9fans

erik quanstrom <quanstro@coraid.com> schrieb:
>
> do you have some specific numbers to back up this claim?
>
In general, I found that compute intensive programs gain about 10% on
AMD64, when run in native mode against i386 mode. I used the algol68
interpreter a68g on FreeBSD-6 (gcc-3.4), for example, and some programs
by myself.
-- 
Dipl.-Math. Wilhelm Bernhard Kloke
Institut fuer Arbeitsphysiologie an der Universitaet Dortmund
Ardeystrasse 67, D-44139 Dortmund, Tel. 0231-1084-257
PGP: http://vestein.arb-phys.uni-dortmund.de/~wb/mypublic.key


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16 14:46       ` erik quanstrom
  2007-11-16 15:33         ` Wilhelm B. Kloke
@ 2007-11-16 15:33         ` David Leimbach
  2007-11-16 15:35           ` David Leimbach
  2007-11-16 15:53           ` Charles Forsyth
  1 sibling, 2 replies; 34+ messages in thread
From: David Leimbach @ 2007-11-16 15:33 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Nov 16, 2007 6:46 AM, erik quanstrom <quanstro@coraid.com> wrote:
> > Per your second a), performance does often improve quite a bit with 2x
> > the general purpose registers.
> >
>
> do you have some specific numbers to back up this claim?
>
> - erik
>

Not handy, but I used to build MPI applications on Opterons in 32bit
mode, then build them in 64bit mode, and nearly always get a
performance boost out of the 64bit.  Which was the exact opposite that
I'd get on PPC 32 vs 64 bit.

PPC's a different animal, using 32bit instructions even when in a
"64bit mode" (doesn't really have modes), some immediate memory loads
can use up to 5 instructions in assembly... I didn't look much deeper
than that.

I know I'm not alone in this observation either.

I'm sure I could google some results, but I can't currently produce
any of my own (unless I can get some time to do so on Leopard, since
it supports both).

Dave


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16 15:33         ` David Leimbach
@ 2007-11-16 15:35           ` David Leimbach
  2007-11-16 15:53           ` Charles Forsyth
  1 sibling, 0 replies; 34+ messages in thread
From: David Leimbach @ 2007-11-16 15:35 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Nov 16, 2007 7:33 AM, David Leimbach <leimy2k@gmail.com> wrote:
>
> On Nov 16, 2007 6:46 AM, erik quanstrom <quanstro@coraid.com> wrote:
> > > Per your second a), performance does often improve quite a bit with 2x
> > > the general purpose registers.
> > >
> >
> > do you have some specific numbers to back up this claim?
> >
> > - erik
> >
>
> Not handy, but I used to build MPI applications on Opterons in 32bit
> mode, then build them in 64bit mode, and nearly always get a
> performance boost out of the 64bit.  Which was the exact opposite that
> I'd get on PPC 32 vs 64 bit.
>
> PPC's a different animal, using 32bit instructions even when in a
> "64bit mode" (doesn't really have modes), some immediate memory loads
> can use up to 5 instructions in assembly... I didn't look much deeper
> than that.
>
> I know I'm not alone in this observation either.
>
> I'm sure I could google some results, but I can't currently produce
> any of my own (unless I can get some time to do so on Leopard, since
> it supports both).
>
> Dave
>

http://www.geekpatrol.ca/2006/09/32-bit-vs-64-bit-performance/


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16 15:33         ` David Leimbach
  2007-11-16 15:35           ` David Leimbach
@ 2007-11-16 15:53           ` Charles Forsyth
  2007-11-16 16:21             ` David Leimbach
  1 sibling, 1 reply; 34+ messages in thread
From: Charles Forsyth @ 2007-11-16 15:53 UTC (permalink / raw)
  To: 9fans

> PPC's a different animal, using 32bit instructions even when in a
> "64bit mode" (doesn't really have modes), some immediate memory loads
> can use up to 5 instructions in assembly... I didn't look much deeper
> than that.

there can be a 64-bit vs 32-bit mode on powerpc64, but it's a `bridge' mode
that is just there to be nice to lazy system writers, and might go away.

once 64-bit mode is on, most arithmetic operations become 64 bit (the same codes that were 32-bit in 32 bit mode).
there are a few exceptions (for instance, multiply and divide have both 64 and 32-bit variants).
64-bit load and store are also available, and there are some new fancy 64-bit versions of rotate mask/insert.

the main difference with amd64 is that large constants (including large static addresses)
must be generated in-line by several instructions (typically 16 bits at a time),
or loaded from a literal pool (which might need an address calculation because the offsets are limited to +/-32k).
that's true even for 32-bit values in 32 bit mode, but because of the larger register size,
different instruction sequences are needed.

i think amd64 has a choice of putting a 32-bit value in-line with sign extension to
64 bits, or giving a full 64-bit value in-line.  i'm surprised that would make a big difference.
possibly the memory subsystem on amd64 is better than the ppc64 you were using.
ppc64 on a memory subsystem designed for ppc32 could be sad.


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16 15:53           ` Charles Forsyth
@ 2007-11-16 16:21             ` David Leimbach
  0 siblings, 0 replies; 34+ messages in thread
From: David Leimbach @ 2007-11-16 16:21 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Nov 16, 2007 7:53 AM, Charles Forsyth <forsyth@terzarima.net> wrote:
> > PPC's a different animal, using 32bit instructions even when in a
> > "64bit mode" (doesn't really have modes), some immediate memory loads
> > can use up to 5 instructions in assembly... I didn't look much deeper
> > than that.
>
> there can be a 64-bit vs 32-bit mode on powerpc64, but it's a `bridge' mode
> that is just there to be nice to lazy system writers, and might go away.

Yep, that's how OS X pretty much works.  Kernel is 32bit, they have
this DART chip on the motherboard to help with the mappings.


> the main difference with amd64 is that large constants (including large static addresses)
> must be generated in-line by several instructions (typically 16 bits at a time),
> or loaded from a literal pool (which might need an address calculation because the offsets are limited to +/-32k).
> that's true even for 32-bit values in 32 bit mode, but because of the larger register size,
> different instruction sequences are needed.
>
> i think amd64 has a choice of putting a 32-bit value in-line with sign extension to
> 64 bits, or giving a full 64-bit value in-line.  i'm surprised that would make a big difference.
> possibly the memory subsystem on amd64 is better than the ppc64 you were using.
> ppc64 on a memory subsystem designed for ppc32 could be sad.
>

The G5 I was using had 128bit cache lines and basically behaved poorly
if you don't move through memory linearly.  (if it was in cache,
things were pretty good, out of cache, you may as well forget about
it).

Kind of blows data structures that we're used to using into the
"poorly performing" category.

People often saw a 10% performance degradation moving from 32bit to
64bit mode on G5.

Dave


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16 10:05       ` erik quanstrom
  2007-11-16 10:20         ` Charles Forsyth
@ 2007-11-16 22:38         ` ron minnich
  2007-11-16 22:46           ` Tharaneedharan Vilwanathan
  2007-11-16 23:19           ` erik quanstrom
  1 sibling, 2 replies; 34+ messages in thread
From: ron minnich @ 2007-11-16 22:38 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Nov 16, 2007 2:05 AM, erik quanstrom <quanstro@quanstro.net> wrote:
>in fact, there is no mmap function
> at all.

Yeah, but I keep wondering: is one implicit given the fact that the
kernel demand-pages code?

ron


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16 22:38         ` ron minnich
@ 2007-11-16 22:46           ` Tharaneedharan Vilwanathan
  2007-11-16 23:20             ` erik quanstrom
  2007-11-16 23:19           ` erik quanstrom
  1 sibling, 1 reply; 34+ messages in thread
From: Tharaneedharan Vilwanathan @ 2007-11-16 22:46 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

if i am right, one of the other reasons for moving to 64-bit space is
that the memory-mapped PCI devices  (say) tend to require more and
more address space.


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16 22:38         ` ron minnich
  2007-11-16 22:46           ` Tharaneedharan Vilwanathan
@ 2007-11-16 23:19           ` erik quanstrom
  2007-11-16 23:40             ` Charles Forsyth
  1 sibling, 1 reply; 34+ messages in thread
From: erik quanstrom @ 2007-11-16 23:19 UTC (permalink / raw)
  To: 9fans

> On Nov 16, 2007 2:05 AM, erik quanstrom <quanstro@quanstro.net> wrote:
> >in fact, there is no mmap function
> > at all.
> 
> Yeah, but I keep wondering: is one implicit given the fact that the
> kernel demand-pages code?

that's a good question.  i suppose you could argue not since
a plan 9 kernel could get by without demand paging, it's just
one of the kernel's dirty little secrets.

- erik


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16 22:46           ` Tharaneedharan Vilwanathan
@ 2007-11-16 23:20             ` erik quanstrom
  0 siblings, 0 replies; 34+ messages in thread
From: erik quanstrom @ 2007-11-16 23:20 UTC (permalink / raw)
  To: 9fans

On Fri Nov 16 17:47:19 EST 2007, vdharani@gmail.com wrote:
> if i am right, one of the other reasons for moving to 64-bit space is
> that the memory-mapped PCI devices  (say) tend to require more and
> more address space.

pci space is limited to 256MB.

- erik


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16 23:40             ` Charles Forsyth
@ 2007-11-16 23:38               ` ron minnich
  2007-11-16 23:56                 ` Charles Forsyth
  0 siblings, 1 reply; 34+ messages in thread
From: ron minnich @ 2007-11-16 23:38 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Nov 16, 2007 3:40 PM, Charles Forsyth <forsyth@terzarima.net> wrote:
> > that's a good question.  i suppose you could argue not since
> > a plan 9 kernel could get by without demand paging, it's just
> > one of the kernel's dirty little secrets.
>
> it isn't really mmap'd as such: it does a read from a file into memory
> so (as is usually the case on systems with mmap) it's quicker just to do
> the read yourself, rather than suffer the page fault too.

Well, I don't know Charles. When I was watching the page faults in the
ports I did, the first page fault was for address 0x1020, first
address in executable. I had assumed this was a demand paging case,
now you are going to force me to go look :-)

ron


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16 23:19           ` erik quanstrom
@ 2007-11-16 23:40             ` Charles Forsyth
  2007-11-16 23:38               ` ron minnich
  0 siblings, 1 reply; 34+ messages in thread
From: Charles Forsyth @ 2007-11-16 23:40 UTC (permalink / raw)
  To: 9fans

> that's a good question.  i suppose you could argue not since
> a plan 9 kernel could get by without demand paging, it's just
> one of the kernel's dirty little secrets.

it isn't really mmap'd as such: it does a read from a file into memory
so (as is usually the case on systems with mmap) it's quicker just to do
the read yourself, rather than suffer the page fault too.


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16 23:56                 ` Charles Forsyth
@ 2007-11-16 23:54                   ` erik quanstrom
  2007-11-17  0:14                     ` ron minnich
  0 siblings, 1 reply; 34+ messages in thread
From: erik quanstrom @ 2007-11-16 23:54 UTC (permalink / raw)
  To: 9fans

pardon the ignorant question.  why aren't the first n pages just loaded
on exec?

- erik


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16 23:38               ` ron minnich
@ 2007-11-16 23:56                 ` Charles Forsyth
  2007-11-16 23:54                   ` erik quanstrom
  0 siblings, 1 reply; 34+ messages in thread
From: Charles Forsyth @ 2007-11-16 23:56 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 536 bytes --]

no, i meant that on a page fault, fault.c just does much the same
read from the file that the system call would do, except it's more complicated to get there.
		ask = s->flen-soff;
		if(ask > BY2PG)
			ask = BY2PG;

		n = devtab[c->type]->read(c, kaddr, ask, daddr);
		if(n != ask)
			faulterror(Eioload, c, 0);

(and that's also true on SunOS, Solaris, and probably Linux, except that on some
it is really very complicated, not just more complicated than read.)
the thing that saves it is the Image cache off to the side.

[-- Attachment #2: Type: message/rfc822, Size: 4203 bytes --]

From: "ron minnich" <rminnich@gmail.com>
To: "Fans of the OS Plan 9 from Bell Labs" <9fans@cse.psu.edu>
Subject: Re: [9fans] Current status of amd64 port?
Date: Fri, 16 Nov 2007 15:38:17 -0800
Message-ID: <13426df10711161538q2b4fda69q1f37afbcaffecc74@mail.gmail.com>

On Nov 16, 2007 3:40 PM, Charles Forsyth <forsyth@terzarima.net> wrote:
> > that's a good question.  i suppose you could argue not since
> > a plan 9 kernel could get by without demand paging, it's just
> > one of the kernel's dirty little secrets.
>
> it isn't really mmap'd as such: it does a read from a file into memory
> so (as is usually the case on systems with mmap) it's quicker just to do
> the read yourself, rather than suffer the page fault too.

Well, I don't know Charles. When I was watching the page faults in the
ports I did, the first page fault was for address 0x1020, first
address in executable. I had assumed this was a demand paging case,
now you are going to force me to go look :-)

ron

^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16 23:54                   ` erik quanstrom
@ 2007-11-17  0:14                     ` ron minnich
  2007-11-17  0:23                       ` Charles Forsyth
  0 siblings, 1 reply; 34+ messages in thread
From: ron minnich @ 2007-11-17  0:14 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Nov 16, 2007 3:54 PM, erik quanstrom <quanstro@quanstro.net> wrote:
> pardon the ignorant question.  why aren't the first n pages just loaded
> on exec?


nm -n /bin/* | grep main

There's no really good way to know what to pre-page. I think.
Now you could have a tool do some smart re-ordering, and some really
crazy guys even take traces and re-order the binary structure. It's a
simple matter of programming :-)

ron


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-17  0:14                     ` ron minnich
@ 2007-11-17  0:23                       ` Charles Forsyth
  2007-11-17  0:30                         ` ron minnich
  0 siblings, 1 reply; 34+ messages in thread
From: Charles Forsyth @ 2007-11-17  0:23 UTC (permalink / raw)
  To: 9fans

> There's no really good way to know what to pre-page. I think.
> Now you could have a tool do some smart re-ordering, and some really
> crazy guys even take traces and re-order the binary structure. It's a
> simple matter of programming :-)

after the first time, it becomes a shared Image, in a reasonable form
for sharing directly, thus saving the read, so unless it's huge, which plan 9
programs weren't, it probably isn't worthwhile.

now, HPC programs, ...


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-17  0:23                       ` Charles Forsyth
@ 2007-11-17  0:30                         ` ron minnich
  2007-11-17  0:33                           ` erik quanstrom
  2007-11-17  1:08                           ` Charles Forsyth
  0 siblings, 2 replies; 34+ messages in thread
From: ron minnich @ 2007-11-17  0:30 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Nov 16, 2007 4:23 PM, Charles Forsyth <forsyth@terzarima.net> wrote:

> now, HPC programs, ...
>
>

speaking of people that drive me nuts.

I was on a panel yesterday and got the usual "we don't want any of
this academic nonsense getting in the way of our pure programs".

Academic nonsense like Linux, and Python, and gcc-style dynamic
binding, all of which they use to death and none of which existed
until fairly recently.

Applications people drive me crazy sometimes. "Don't change anything
... ever .. we want the same constant environment that we've been
changing all the time for the last 50 years".

ron


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-17  0:30                         ` ron minnich
@ 2007-11-17  0:33                           ` erik quanstrom
  2007-11-17  1:08                           ` Charles Forsyth
  1 sibling, 0 replies; 34+ messages in thread
From: erik quanstrom @ 2007-11-17  0:33 UTC (permalink / raw)
  To: 9fans

that's enough to drive a guy to the embedded world.

- erik

p.s. ☺

> On Nov 16, 2007 4:23 PM, Charles Forsyth <forsyth@terzarima.net> wrote:
> 
> > now, HPC programs, ...
> >
> >
> 
> speaking of people that drive me nuts.
> 
> I was on a panel yesterday and got the usual "we don't want any of
> this academic nonsense getting in the way of our pure programs".
> 
> Academic nonsense like Linux, and Python, and gcc-style dynamic
> binding, all of which they use to death and none of which existed
> until fairly recently.
> 
> Applications people drive me crazy sometimes. "Don't change anything
> ... ever .. we want the same constant environment that we've been
> changing all the time for the last 50 years".
> 
> ron


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-17  0:30                         ` ron minnich
  2007-11-17  0:33                           ` erik quanstrom
@ 2007-11-17  1:08                           ` Charles Forsyth
  2007-11-17  6:38                             ` Geoffrey Avila
  1 sibling, 1 reply; 34+ messages in thread
From: Charles Forsyth @ 2007-11-17  1:08 UTC (permalink / raw)
  To: 9fans

> Applications people drive me crazy sometimes. "Don't change anything
> ... ever .. we want the same constant environment that we've been
> changing all the time for the last 50 years".

``there's nothing like a really good candle!''

mind you, if you've seen the `energy efficient' lightbulbs now being foist upon us, ...


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-17  1:08                           ` Charles Forsyth
@ 2007-11-17  6:38                             ` Geoffrey Avila
  0 siblings, 0 replies; 34+ messages in thread
From: Geoffrey Avila @ 2007-11-17  6:38 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Sat, 17 Nov 2007, Charles Forsyth wrote:

> > Applications people drive me crazy sometimes. "Don't change anything
> > ... ever .. we want the same constant environment that we've been
> > changing all the time for the last 50 years".
>
> ``there's nothing like a really good candle!''
>
> mind you, if you've seen the `energy efficient' lightbulbs now being foist upon us, ...
>

I do recall, back when we had a Cray T916, there were users (I suspect the
bioinformatics people) who wanted to know when Java2 would be available
for it...

-GBA


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
       [not found] <20071116170014.595B2108A1@mail.cse.psu.edu>
@ 2007-11-16 23:10 ` Joshua Wood
  0 siblings, 0 replies; 34+ messages in thread
From: Joshua Wood @ 2007-11-16 23:10 UTC (permalink / raw)
  To: 9fans

> Intel or AMD?  I've found AMDs memory architecture for 64bit stuff to
> pretty much stomp Intel nearly every time.

Happened to be amd. Completeness wasn't needed, so there was no intel  
testing.


> Not handy, but I used to build MPI applications on Opterons in 32bit
> mode, then build them in 64bit mode, and nearly always get a
> performance boost out of the 64bit.  Which was the exact opposite that
> I'd get on PPC 32 vs 64 bit.

I think you're seeing that the ppc always had all those registers, 32  
or 64-bit. What goes on, to oversimplify, is that when you compile  
code 64-bit for the amd64, you suddenly have bunches of new  
registers, and [some] things go faster.

When you compile code 64-bit for the ppc, you didn't gain any  
registers you didn't already have. With no built-in performance gain,  
you're left with only the results of the increased cache pressure  
from larger everything in your 64-bit executable. Your observation  
that things slow down is, as you said, readily heard from others. But  
that's just it; the performance isn't the point; the point is you can  
address >4G of memory now.

It might be worth observing that the "real" POWER 64-bit isa tends to  
appear in configurations with massive L2 and L3 cache -- not the meg  
or two you get with the x86 64bit stuff, amd or intel.

I'm repeating the sin of performance discussion without numbers --  
but if you check apple's own "64 bit myths" factsheet you can see the  
same information. Moreover, I'm so OT, but the general theme of the  
observations seems to me to underline the point Erik was making: 64- 
bit is meaningless in a vacuum, lacks demonstrable numbers as a  
performance magic bullet, and in the end, is a way to physically  
address more memory. Nothing more, nothing less.

--
Josh



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
  2007-11-16  0:11 Joshua Wood
@ 2007-11-16 14:43 ` David Leimbach
  0 siblings, 0 replies; 34+ messages in thread
From: David Leimbach @ 2007-11-16 14:43 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Nov 15, 2007 4:11 PM, Joshua Wood <josh@utopian.net> wrote:
> > 64 bits is neither here nor there in a vaccuum.  you want 64 bits if
> > a) you need more than 4GB of memory, or
> > a) those extra registers and direct vlong really matter for
> > performance.
> > otherwise it's just a lot of extra zeros.
> > it's kind of silly to run 64-bit linux on a machine with <= 4GB of
> > memory.
> >
>
> Some testing we did about a year ago showed that (for us) even the
> extra registers -- I always thought the sweetest-sounding part of the
> deal -- help sometimes, but not always. I ended up thinking it was
> because caches hadn't necessarily grown apace with address space. The
> distance between cpu and main memory seemed to have expanded again...
>

Intel or AMD?  I've found AMDs memory architecture for 64bit stuff to
pretty much stomp Intel nearly every time.


^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: [9fans] Current status of amd64 port?
@ 2007-11-16  0:11 Joshua Wood
  2007-11-16 14:43 ` David Leimbach
  0 siblings, 1 reply; 34+ messages in thread
From: Joshua Wood @ 2007-11-16  0:11 UTC (permalink / raw)
  To: 9fans

> 64 bits is neither here nor there in a vaccuum.  you want 64 bits if
> a) you need more than 4GB of memory, or
> a) those extra registers and direct vlong really matter for  
> performance.
> otherwise it's just a lot of extra zeros.
> it's kind of silly to run 64-bit linux on a machine with <= 4GB of  
> memory.
>

Some testing we did about a year ago showed that (for us) even the  
extra registers -- I always thought the sweetest-sounding part of the  
deal -- help sometimes, but not always. I ended up thinking it was  
because caches hadn't necessarily grown apace with address space. The  
distance between cpu and main memory seemed to have expanded again...

64 bits was still the simplest path to > 4G memory for those linux  
machines in that situation, but the observation surprised me.

--
Josh


^ permalink raw reply	[flat|nested] 34+ messages in thread

end of thread, other threads:[~2007-11-17  6:38 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-11-15 22:51 [9fans] Current status of amd64 port? Anthony Sorace
2007-11-15 22:56 ` Uriel
2007-11-16  6:14   ` ron minnich
2007-11-15 23:14 ` Tharaneedharan Vilwanathan
2007-11-15 23:39   ` erik quanstrom
2007-11-16  0:10     ` Tharaneedharan Vilwanathan
2007-11-16  0:18     ` Anthony Sorace
2007-11-16  7:57     ` Robert William Fuller
2007-11-16 10:05       ` erik quanstrom
2007-11-16 10:20         ` Charles Forsyth
2007-11-16 22:38         ` ron minnich
2007-11-16 22:46           ` Tharaneedharan Vilwanathan
2007-11-16 23:20             ` erik quanstrom
2007-11-16 23:19           ` erik quanstrom
2007-11-16 23:40             ` Charles Forsyth
2007-11-16 23:38               ` ron minnich
2007-11-16 23:56                 ` Charles Forsyth
2007-11-16 23:54                   ` erik quanstrom
2007-11-17  0:14                     ` ron minnich
2007-11-17  0:23                       ` Charles Forsyth
2007-11-17  0:30                         ` ron minnich
2007-11-17  0:33                           ` erik quanstrom
2007-11-17  1:08                           ` Charles Forsyth
2007-11-17  6:38                             ` Geoffrey Avila
2007-11-16 14:41     ` David Leimbach
2007-11-16 14:46       ` erik quanstrom
2007-11-16 15:33         ` Wilhelm B. Kloke
2007-11-16 15:33         ` David Leimbach
2007-11-16 15:35           ` David Leimbach
2007-11-16 15:53           ` Charles Forsyth
2007-11-16 16:21             ` David Leimbach
2007-11-16  0:11 Joshua Wood
2007-11-16 14:43 ` David Leimbach
     [not found] <20071116170014.595B2108A1@mail.cse.psu.edu>
2007-11-16 23:10 ` Joshua Wood

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).