On 25 May 2018, at 05:27, Maxim Sobolev <sobo...@freebsd.org> wrote:
> 
> The idea looks very inmature and short-sighted to me. i386 is here to stay 
> not as a server/desktop platform but as an embedded/low power/low cost 
> platform for at least 5-10 years to come. There are plenty of applications in 
> the world that don't need > 3gb of memory space and have no use for extra 
> bits (and extra silicon) to function.

This argument seems very odd to me.  If you are targeting the embedded space, 
it is far easier to build a low-power chip that targets the x86-64 ISA than the 
x86-32 ISA.  You can move all of the 80-bit floating point stuff into 
microcode.  You can put anything using pair-of-32-bit-register 64-bit 
operations into slow microcode.  You can skimp on store forwarding for stack 
addresses.  You actually need fewer rename registers (one of the biggest 
consumers of power), because x86-64 code needs to do less register juggling to 
fit in the architectural register space.  All of these things are big consumers 
of power and area and are far less necessary when running code compiled for 
x86-64.  You can also do tricks like the one that Intel did on the early Atoms, 
where the SSE ALUs are actually only 64 bits wide and the 128-bit ops are 
cracked into pairs of 64-bit micro-ops.

As to ‘not needing more than 3GB of memory space’, that’s what the x32 ABI is 
for.  This lets you get all of the advantages of the x86-64 ISA (of which there 
are very many, in comparison to x86-32), without needing 64-bit pointers.  You 
get the instruction density of x86-64 combined with the data density of x86-32. 
 This is what Intel and Centaur have been pushing in the embedded space for 
several years.

You do pay a slight hardware cost from supporting a 48-bit virtual address 
space, though with superpages that’s negligible and the hardware targeted at 
these applications often doesn’t support more than a 32-bit virtual address 
space.  

And this completely ignores the fact that Intel has almost no presence in the 
low-end embedded space.  AArch32 is vastly more important there and if we 
dropped x86-32 and shifted that effort to AArch32 then I think we’d see a lot 
more adoption.

David
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to