Compiling in SUSE 9.1, AMD64 bit version.
If you compile using
./configure
make
it compiles as 32 bit. If you use
./configure --enable-libsuffix=64
make
it compiles as 64 bit.
Redhat's AMD64 bit version is similar. If you have Debian-based 64-bit
linux then this still works but the simpler command
./configure compiles the application by default as 64-bit.
In the case of Debian,
another possibility exists: use apt-get to download and install it
from the Debian AMD64 development tree. Bill Allombert
(allomber@math.u-bordeaux.fr), the gap package maintainer for
Debian, is a good contact for this.
Performance issues.
Comments from Frank Luebeck:
The setting of C_STACK_ALIGN to 1 by the configure script is correct.
The AMD 64 architecture has no alignment restrictions, but the access
speed may depend on alignment. (Of course the compiler optimization
tries to align data for fast access.)
Performance of a dual Opteron 248, 2.2GHz, 8GB memory:
Most of GAP is a bit faster in 32 bit mode, compared to 64 bit mode.
The speed is similar to a 3 GHz Pentium 4 machine. One can use complete
4 GB of memory in 32 bit mode.
Most GAP objects need twice as much space in 64 bit mode compared to
32 bit mode. So, using 64 bit mode is only interesting if you have and
want to use more than 8 GB of memory.
The exceptions concerning speed and memory are compacted kernel objects:
long integers, compressed finite field matrices, blists. Here
computations can go faster and need only little more memory in 64 bit
mode (GF(2)-matrices of Baby monster multiply about 30% faster).
Comments from Bill Allombert:
On a Opteron at1366MHz I got:
64 bit build of GAP:
echo 'ReadTest("tst/combinat.tst");'| bin/*/gap -q | tee debian/gap.tst
+ $Id: combinat.tst,v 4.9.4.3 2005/05/11 14:53:02 gap Exp $
+ GAP4stones: 1317073
true
32bit build of GAP:
echo 'ReadTest("tst/combinat.tst");'| bin/*/gap -q | tee debian/gap.tst
+ $Id: combinat.tst,v 4.9.4.3 2005/05/11 14:53:02 gap Exp $
+ GAP4stones: 1560693
true
A more comprehensive bench (testall.g) in 32 and 64bit variant.
The bottom line is (first figure is GAPstones, 2nd is seconds):
i386 : total 206089 41411
amd64: total 191640 45861