Compilation of NAMD on opteron cluster with myrinet

From: junwang (junwang_at_unlserve.unl.edu)
Date: Mon May 23 2005 - 19:44:41 CDT

Dear NAMD users:
I am wondering which precompiled binaries of NAMD is applicable in my case.
If not, could you give me any suggestions on compiling the source code on our cluster?
I guess the best way to obtain optimal parallel efficiency is to compile the source code on our cluster.
On entering NAMD_2.5_Source/charm,I am not sure which version I am supposed to use after typing ./build --help.
1. mpi-linux-ia64 or net-linux-ia64 ?
2. Does our opteron 248 64-bit cpu belong to ia64 type?
3. Which compiler is better? gcc or pgcc?
4. Am I supposed to set gm and opteron specific options?
5. Before typing ./build command am I supposed to set any environment variables, such as
CC=gcc and locations of other libraries, ie. home/usr/mpich.gcc-64/, -L/usr/gm/lib -lgm ?

When I was building charm with "./build charm++ mpi-linux-ia64 gm -O", a fatal error occured as following:
..
..
Soft-linking headers...
touch headerlinks
touch basics
cd QuickThreads;./configure
rm -f QuickThreads/libqt.a
cd QuickThreads ; make qt OPTS='-O -build-shared'
make[1]: Entering directory `/home/zeng/jwang/NAMD_2.5_Source/charm/mpi-linux-ia64-gm/tmp/QuickThreads'
rm -f qtmd.h
./system_ln md/setjmp_d.h qtmd.h
./../bin/charmc -seq -I. -pedantic -c -o qt.o qt.c
passing unrecognized option -pedantic to all compilers and linkers
./../bin/charmc -seq -I. -c -o qtmds.o md/setjmp.c
md/setjmp.c: In function `qt_args_1':
md/setjmp.c:28: warning: cast to pointer from integer of different size
md/setjmp.c:31: warning: cast from pointer to integer of different size
md/setjmp.c:31: warning: passing arg 1 of `longjmp' from incompatible pointer type
md/setjmp.c: In function `qt_args':
md/setjmp.c:43: warning: cast to pointer from integer of different size
md/setjmp.c: In function `qt_block':
md/setjmp.c:60: warning: cast to pointer from integer of different size
md/setjmp.c:63: warning: cast from pointer to integer of different size
md/setjmp.c:63: warning: passing arg 1 of `longjmp' from incompatible pointer type
md/setjmp.c: In function `qt_abort':
md/setjmp.c:76: warning: cast from pointer to integer of different size
md/setjmp.c:76: warning: passing arg 1 of `longjmp' from incompatible pointer type
./../bin/charmc -seq -I. -o libqt.a qt.o qtmds.o
./../bin/charmc -seq -I. -shared -o libqt.so qt.o qtmds.o
Warning: creating libqt.so
/usr/bin/ld: qtmds.o: relocation R_X86_64_32 can not be used when making a shared object; recompile with -fPIC
qtmds.o: could not read symbols: Bad value
collect2: ld returned 1 exit status
Fatal Error by charmc in directory /home/zeng/jwang/NAMD_2.5_Source/charm/mpi-linux-ia64-gm/tmp/QuickThreads
Command gcc -o libqt.so -shared -L/home/zeng/jwang/NAMD_2.5_Source/charm/mpi-linux-ia64-gm/lib_so qt.o qtmds.o returned error code 1
charmc exiting...
make[1]: *** [qt] Error 1
make[1]: Leaving directory `/home/zeng/jwang/NAMD_2.5_Source/charm/mpi-linux-ia64-gm/tmp/QuickThreads'
make: *** [QuickThreads/libqt.a] Error 2
-------------------------------------------------
Charm++ NOT BUILT. Either cd into mpi-linux-ia64-gm/tmp and try
to resolve the problems yourself, visit
    http://charm.cs.uiuc.edu/
for more information. Otherwise, email the developers at ppl_at_cs.uiuc.edu

Our cluster hardware configuration is as below:
Number of nodes 128
Processors total 256
Theoretical peak performance (GFlops) 1126.4
Total peak performance (GFlops) 888.5
Total memory (GB) 1024
Total disk (GB) 3680
Interconnect Technology(1) Myrinet
Interconnect Technology(2) Gigabit Ethernet
Operating System Linux
Communication software MPICH-GM
Main application area Scientific Computing
Year installed/last upgraded 2002/2004

Each Node
Type of processor Opteron 248

Processors per node 2

Frequency (Mhz) 2200

Node peak performance (GFlops) 8.8

Memory per node (MB) 4096

Disk per node (GB) 20

Filesystem Server
Type of processor Opteron
Processors in node 2
Frequency (Mhz) 2200
Filesystem Type RAID 5
Total disk (GB) 1014
Total memory (GB) 2.5

Software installed in our cluster follows:
System specification and software installed:
Kernel Version: 2.4.21-226
Compilers: *GCC Compilers
/usr/bin/ (version 3.2.2)
/opt/gcc32/bin/ (version 3.2.3)
/opt/gcc33/bin/ (version 3.3)
/opt/gcc34/bin/ (version 3.4.2)
/opt/gcc40/bin/ (version 4.0.0 20050220-this is a pre-release)
*For the above compilers, use -m32 for 32-bit, and -m64 for 64-bit.

**PGI Compilers
/home/pgi/linux86-64/5.1/bin/ (version 5.1-6)
/home/pgi/linux86-64/5.2/bin/ (version 5.2-4)
**For the above compilers, use -tp k8-32 for 32-bit, and -tp k8-64 for 64-bit.

MPI Compilers (version mpichgm-1.2.5..13)
/home/usr/mpich.gcc/bin (32-bit build using gcc 3.4.2)
/home/usr/mpich.gcc-64/bin (64-bit build using gcc 3.4.2)
/home/usr/mpich.pgi/bin (64-bit build using pgi 5.1-6)
/home/usr/mpich.pgi-32/bin (32-bit build using pgi 5.1-6)
Note: You may want to use the same flags for compiling in 32-bit/64-bit as regular compilers to be sure you compile in a particular "bit".
Glib Version: glibc-2.2.4-13
Job scheduler: PBSPro 5.4.2
Interconnection Libraries: Myricom GM networking software gm-2.0.13
Atlas 3.4.1 (in /usr/local/lib and /usr/local/include) documents) LAPACK 3.0.2 with Atlas (in /usr/lib)
(IMSL)

Best regards,
Sincerely,
Jun WANG

This archive was generated by hypermail 2.1.6 : Wed Feb 29 2012 - 15:40:47 CST