[nylug-talk] LOWMEM vs. HIGHMEM performance advantage?

Alex Pilosov alex at pilosoft.com
Sat Apr 19 10:35:24 EDT 2008


On Sat, 19 Apr 2008, [utf-8] Bryan J Smith wrote:

> 6rom: Alex Pilosov <alex at pilosoft.com>
> > (i will call it x64 and spare me)
> 
> Oh, I just caught this. It 100% explains your view.
> 
> *NEVER* call it Linux x86-64/AMD64 or Linux IA-32e/EM64T as x64. X64 is
> the *WINDOWS* name for a product with a Long Mode kernel with almost
> enitrely Win32 libraries. Linux ships native, Long Mode libraries and
> binaries, x64 (Windows) largely does not.
I told you to spare me.

Everyone calls it x64. as abbreviation for x86-64.

*(#@$pedantic @#*$.

> X64 exists because the Win32 API has been extemely difficult for
> Microsoft to port to x86-64/IA-32e. Windows for Alpha was always 32-bit,
> never 64-bit, because of Win32. Even the "test" versions of Alpha Win64
> suffered the same non-sense of WoW.
What the heck does it have to do with anything.

> This is utterly unlike GNU/Linux that has been almost entirely 64-bit
> clean for.a long, long time. Only.a few system-level details we're
> issues back in 2.2 and earlier, as well as legacy codebases (largely
> pre-POSIX 2001).
I see what you did there with GNU/Linux. *(#@$pedantic @#*$.

> > in empirical tests, bloat is anywhere between 25% to 50% depending on
> > application.
> 
> Static code/data bloat is dependent far more on data alignment, not
> memory model.
Blah blah. No, it really does bloat it up. Yes, seriously. Pointers take 
more space. Done and done. Data alignment matters but not as much.

> As far as 25-50% slower, yes, x64 apps on x64 OSes are 25-50% slower
> than x86 apps on x86 OSes. In fact, x86 apps are faster tjhan x64 apps
> on x64 OSes. Why?
> 
> Because x64 uses WoW (Windows on Windows) so one memory model can call
> the libarary of another. This is largely Win64 calling Win32, utterly
> destroying native speed execution. It 0% applies to Linux, and your use
> of x64 here should have been my "wake up" call.
What the hell are you talking about. You are on crack.

I'm not talking about windows. I'm talking about any 64-bit mode with
64-bit pointers.  They take more space. Pointers are large chunk of heap
and binaries. Thus, code is larger, and data segment is larger. Thus
blowing out cache. Done and done.

> Linux distros either ship either all Long Mode libaries (possibly with a
> change root), or the POSIX-standard /lib64 or native, /lib for
> compatibility. Of course running two apps, one Long Mode one x86, that
> call the same library will result in two different libraries being
> loaded (with associated, added memory usage).
I'm talking about lib64 obviously.

> But I've yet to see any argument made about the "bloat" of x86-64
> outside of library redunancy or stupid things other OSes do, like
> Windows x64.
Sorry, you are on crack. 



More information about the nylug-talk mailing list