[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: cross compiler deb package question

On Wednesday 22 January 2003 23:22, Daniel Schepler wrote:

> I think for x86-64 the default should be 64 bit libraries, with others
> having versions libc6-32 or maybe libc6-i386, and so on.  I'm curious,
> though, why sparc uses 32 bit libraries as the default -- is the
> reason for it something specific to sparc systems, or would it apply
> to x86-64 too?  Or is this something which the upstream x86-64
> developers have an explicit opinion on?

There are several points to consider here:
- both s390 and sparc typically don't perform better with 64 bit than
  with 32 bit -- except when you need more than 2 GB (4 GB on sparc?)
  of physical RAM or when the application uses lots of 64 bit 
  integer arithmetic.
- x86_64 is likely to perform much better in native mode than in i386
  compatibility mode because of extra registers etc.
- There is no 64 bit s390 Debian mostly because of lack of disk space
  on the mirror servers. It may be similar for sparc.
- Both 64 bit and 32 bit kernels can run with 32 bit user space, but
  not both can use 64 bit user space. If you can only support one,
  it has to be 32 bit.
- SuSE and Red Hat have 64 bit user space as default for x86_64
  and s390x. Don't know about sparc and ppc.
- Starting with 32 bit user space and biarch tool chain makes the 
  bootstrap a lot simpler than cross building from scratch.
- All the library packages that need to support 64 bit have to
  be changed anyway. We should make sure that those changes have
  to be done only once, not in different ways for e.g. s390 and x86_64.

Note that I care most about s390, but the problems are the
same for sparc, ppc, mips and hppa. All these have only 32 bit user
space at the moment, although they all have 64 bit cpus available
that could run biarch user space.

	Arnd <><

Reply to: