Hello All: We are anticipating the purchase of an AMD opteron linux cluster to replace our old IA-32 systems. We have purchased a test box (Penguin) running SUSE Linux and perl 5.8.0. The summary of the software configuration is included at the end of this message. We have encountered an issue with the perl implementation on the machine: I can reproducibly segfault perl with this code: ____________________________________________________________ #!/usr/bin/perl $number = 10000000; while (1) { for ($i = 1; $i <= $number; $i++) { $hash{$i}++; } undef %hash; } _____________________________________________________________ One needs about 2g of ram on the machine to run the code, and it will never terminate. On our opteron system, this code will produce a segmentation violation after a day or two of running. The code simply produces a large perl hash data structure and interacts with it in very simple ways.... Instability in perl is a show stopper for us. We currently do not know if this behavior is related to: the 5.8.0 release of perl (our other systems are running 5.6.x), or the way in which SUSE compiled it (I notice that threads are built into their version). bug in the AMD CPU or motherboard, etc. problems with the AMD opteron Linux shared libraries or other aspects of the linux port. Can anyone test this on their boxen (let it run for 4 days to be a fair test) or shed some insight on where the problem may be? (Yes we *do* often keep such big hashes active in perl for long periods of time for word-based seq identity searches). Thanks, Nathan Siemers uname -a: Linux opt 2.4.19-SMP #1 SMP Mon Mar 31 23:48:08 UTC 2003 x86_64 unknown and perl: perl -V Summary of my perl5 (revision 5.0 version 8 subversion 0) configuration: Platform: osname=linux, osvers=2.4.19, archname=x86_64-linux-thread-multi uname='linux jarre 2.4.19 #1 smp mon mar 24 16:17:59 utc 2003 x86_64 unknown ' config_args='-ds -e -Dprefix=/usr -Dusethreads -Di_db -Di_dbm -Di_ndbm -Di_g dbm -Duseshrplib=true' hint=recommended, useposix=true, d_sigaction=define usethreads=define use5005threads=undef useithreads=define usemultiplicity=de fine useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=define use64bitall=define uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -D_LARGEF ILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-O2 --pipe', cppflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing' ccversion='', gccversion='3.2.2 (SuSE Linux)', gccosandvers='' intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16 ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize =8 alignbytes=8, prototype=define Linker and Libraries: ld='cc', ldflags =' -L/usr/local/lib64' libpth=/lib64 /usr/lib64 /usr/local/lib64 libs=-lm -ldl -lcrypt -lpthread perllibs=-lm -ldl -lcrypt -lpthread libc=/lib64//lib64/libc.so.6, so=so, useshrplib=true, libperl=libperl.so gnulibc_version='2.2.5' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic -Wl,-rpa th,/usr/lib/perl5/5.8.0/x86_64-linux-thread-multi/CORE' cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib64' Characteristics of this binary (from libperl): Compile-time options: MULTIPLICITY USE_ITHREADS USE_64_BIT_INT USE_64_BIT_ALL USE_LARGE_FILES PERL_IMPLICIT_CONTEXT Built under linux Compiled at Mar 27 2003 16:06:33 @INC: /usr/lib/perl5/5.8.0/x86_64-linux-thread-multi /usr/lib/perl5/5.8.0 /usr/lib/perl5/site_perl/5.8.0/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.8.0 /usr/lib/perl5/site_perl .