AMBER Archive (2003)

Subject: Re: AMBER: MIPS R14000 and Machine-file

From: Sanjeev B.S. (sanjeev_at_mbu.iisc.ernet.in)
Date: Tue Sep 02 2003 - 07:48:33 CDT


I want to install amber7 in a biprocessor Octane2 SGI. To do that, I
need to modify
 Machine file, which does not include R14000 processors. Does anybody
know if the compiler
flags are different of those for R12000?

---
	I used the following as MACHINE file for a multiprocessor SGI 
machine using mpich (which still uses SGI compilers). I encountered some 
problems with SGI specific Machine file (I do not recollect the exact 
details), especially related to running them through script. I found that 
this results in some 4% slowness, never-the-less works well.

Best wishes, -Sanjeev

#! /bin/csh -f ######################################################################## # # # Copyright (c) 1986, 1991, 1995 # # Regents of the University of California # # # # All Rights Reserved # # # # Machine Dependency Handling System # # # # Bill Ross ross_at_cgl.ucsf.edu # # An extension of work of George Seibel # # # # Dependencies written by various authors. # # # # Permission to use, copy, modify, and distribute this software and # # its documentation for any purpose and without fee is hereby # # granted, provided that the above copyright notice appear in all # # copies and that both that copyright notice and this permission # # notice appear in supporting documentation, and that the name of # # the University of California not be used in advertising or # # publicity pertaining to distribution of the software without # # specific, written prior permission. # # # # THE REGENTS OF THE UNIVERSITY OF CALIFORNIA DISCLAIM ALL # # WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED # # WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL THE # # UNIVERSITY OF CALIFORNIA BE LIABLE FOR ANY SPECIAL, INDIRECT OR # # CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM # # LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, # # NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN # # CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # # ######################################################################## # # # Machine file for SGI using the MPICH message passing library, compiled # with a -64 option (this seems to be the fastest; -32 and -n32 options # also work, but you must be consistent in compiling MPICH and AMBER.) # # Your environment will need to have the following variables: #

setenv MPI_HOME /usr/people/saras/mpich-1.2.4 setenv MPI_BIN $MPI_HOME/bin setenv MPI_LIB $MPI_HOME/lib

setenv MACHINE "SGI" setenv MACH IRIS setenv MACHINEFLAGS "-DMEM_ALLOC -DHAS_FTN_ERFC -DMPI " setenv MACHINEFLAGS "$MACHINEFLAGS -DRLE -DROWAT " setenv SGIEXTRAS "-DBLAS1" setenv CPP "/lib/cpp -I$MPI_HOME/include" setenv VENDOR_LAPACK no

setenv FC $MPI_BIN/mpif90 setenv CC $MPI_BIN/mpicc

# SYSDIR is the name of the system-specific source directory for makemake setenv SYSDIR Machines/standard

# SGI specific ``code'' to recognize the type of machine and its # environment, do not change...

# Default Mips flag: -mips1 set MIPSFLAG = '-mips1' set LFASTM = '-lfastm' # Default Blas library: -lblas set BLASLIB = '-lblas' # Default MPFLAG: [blank] set MPFLAG = "-MP:open_mp=ON" # Processor: set WHICHIP = `uname -m | sed s/IP//` @ WHICHIP += 0 # OS Version: set OSVERS = `uname -r` set OSMAJOR = ${OSVERS:r} set OSMAJOR = ${OSMAJOR:r}

# USER SPECIFIED VARIABLES # The compiled in maximum number of processors allowed... set MAX_PRO = 1 # Power Series if ( $WHICHIP == 7) set MAX_PRO = 8 # Challenge if ( $WHICHIP == 19) set MAX_PRO = 36 # PowerChallenge if ( $WHICHIP == 21) set MAX_PRO = 18 # PowerChallenge R10k if ( $WHICHIP == 25) set MAX_PRO = 36

# CPU architecture. set CPUARCH = ` hinv -t cpu | awk ' { print $3 } ' | head -1 `

# Do we have the FFT libraries in libcomplib.sgimath.a? if ( -e /usr/lib/libcomplib.sgimath.a | \ -e /usr/lib/mips2/libcomplib.sgimath.a | \ -e /usr/lib32/mips4/libcomplib.sgimath.a | \ -e /usr/lib32/mips4/libcomplib.sgimath.so | \ -e /usr/lib64/mips4/libcomplib.sgimath.a ) then # setenv SGIEXTRAS "$SGIEXTRAS -DSGIFFT" set BLASLIB = "$BLASLIB -lcomplib.sgimath " endif

# Some (Optimization) flags set O0 = -O0 set OLO = -O1 set OME = -O2 set OHI = -O2 set NFLAGS = (-Nl200 -Nn10000) set NFLAGS = " "

# r10k machines set MIPSFLAG = "" setenv SGIEXTRAS "$SGIEXTRAS -DTFP -DCACHE_BLOCKSIZE=2500" set OHI = -O3

if ( $CPUARCH == R5000 ) then set LFASTM = '-lm' endif

setenv MACHINEFLAGS "$MACHINEFLAGS $SGIEXTRAS"

# COMPILER ALIASES:

set MIPSFLAG = '-mips4'

# LOADER/LINKER: setenv LOAD "$FC $MIPSFLAG $MPFLAG " setenv LOADLIB " $BLASLIB $LFASTM " setenv CFLAGS " $MIPSFLAG "

setenv L0 "$FC -nocpp $MIPSFLAG -c $O0 -old_rl $NFLAGS " setenv L1 "$FC -nocpp $MIPSFLAG -c $OLO -old_rl $NFLAGS " setenv L2 "$FC -nocpp $MPFLAG $MIPSFLAG -c $OME -old_rl $NFLAGS" setenv L3 "$FC -nocpp $MPFLAG $MIPSFLAG -c $OHI -old_rl $NFLAGS "

# ranlib, if it exists setenv RANLIB "echo no ranlib"

----------------------------------------------------------------------- The AMBER Mail Reflector To post, send mail to amber_at_scripps.edu To unsubscribe, send "unsubscribe amber" to majordomo_at_scripps.edu