1 #---------------------------------------------------------------------------
3 # SITE- AND/OR PLATFORM-SPECIFIC DEFINITIONS.
5 #---------------------------------------------------------------------------
7 #---------------------------------------------------------------------------
8 # Items in this file will need to be changed for each platform.
9 # (Note these definitions are inconsistent with NPB2.1.)
10 #---------------------------------------------------------------------------
12 #---------------------------------------------------------------------------
15 # For CG, EP, FT, MG, LU, SP and BT, which are in Fortran, the following must
18 # MPIF77 - Fortran compiler
19 # FFLAGS - Fortran compilation arguments
20 # FMPI_INC - any -I arguments required for compiling MPI/Fortran
21 # FLINK - Fortran linker
22 # FLINKFLAGS - Fortran linker arguments
23 # FMPI_LIB - any -L and -l arguments required for linking MPI/Fortran
25 # compilations are done with $(MPIF77) $(FMPI_INC) $(FFLAGS) or
27 # linking is done with $(FLINK) $(FMPI_LIB) $(FLINKFLAGS)
28 #---------------------------------------------------------------------------
30 #---------------------------------------------------------------------------
31 # This is the fortran compiler used for MPI programs
32 #---------------------------------------------------------------------------
34 # This links MPI fortran programs; usually the same as ${MPIF77}
37 #---------------------------------------------------------------------------
38 # These macros are passed to the linker to help link with MPI correctly
39 #---------------------------------------------------------------------------
42 #---------------------------------------------------------------------------
43 # These macros are passed to the compiler to help find 'mpif.h'
44 #---------------------------------------------------------------------------
47 #---------------------------------------------------------------------------
48 # Global *compile time* flags for Fortran programs
49 #---------------------------------------------------------------------------
53 #---------------------------------------------------------------------------
54 # Global *link time* flags. Flags for increasing maximum executable
55 # size usually go here.
56 #---------------------------------------------------------------------------
60 #---------------------------------------------------------------------------
63 # For IS, which is in C, the following must be defined:
66 # CFLAGS - C compilation arguments
67 # CMPI_INC - any -I arguments required for compiling MPI/C
69 # CLINKFLAGS - C linker flags
70 # CMPI_LIB - any -L and -l arguments required for linking MPI/C
72 # compilations are done with $(MPICC) $(CMPI_INC) $(CFLAGS) or
74 # linking is done with $(CLINK) $(CMPI_LIB) $(CLINKFLAGS)
75 #---------------------------------------------------------------------------
77 #---------------------------------------------------------------------------
78 # This is the C compiler used for MPI programs
79 #---------------------------------------------------------------------------
81 # This links MPI C programs; usually the same as ${MPICC}
84 #---------------------------------------------------------------------------
85 # These macros are passed to the linker to help link with MPI correctly
86 #---------------------------------------------------------------------------
89 #---------------------------------------------------------------------------
90 # These macros are passed to the compiler to help find 'mpi.h'
91 #---------------------------------------------------------------------------
94 #---------------------------------------------------------------------------
95 # Global *compile time* flags for C programs
96 #---------------------------------------------------------------------------
100 #---------------------------------------------------------------------------
101 # Global *link time* flags. Flags for increasing maximum executable
102 # size usually go here.
103 #---------------------------------------------------------------------------
107 #---------------------------------------------------------------------------
110 # Uncomment if you want to use the MPI dummy library supplied by NAS instead
111 # of the true message-passing library. The include file redefines several of
112 # the above macros. It also invokes make in subdirectory MPI_dummy. Make
113 # sure that no spaces or tabs precede include.
114 #---------------------------------------------------------------------------
115 # include ../config/make.dummy
118 #---------------------------------------------------------------------------
121 # This is the C compiler used to compile C utilities. Flags required by
122 # this compiler go here also; typically there are few flags required; hence
123 # there are no separate macros provided for such flags.
124 #---------------------------------------------------------------------------
128 #---------------------------------------------------------------------------
129 # Destination of executables, relative to subdirs of the main directory. .
130 #---------------------------------------------------------------------------
134 #---------------------------------------------------------------------------
135 # Some machines (e.g. Crays) have 128-bit DOUBLE PRECISION numbers, which
136 # is twice the precision required for the NPB suite. A compiler flag
137 # (e.g. -dp) can usually be used to change DOUBLE PRECISION variables to
138 # 64 bits, but the MPI library may continue to send 128 bits. Short of
139 # recompiling MPI, the solution is to use MPI_REAL to send these 64-bit
140 # numbers, and MPI_COMPLEX to send their complex counterparts. Uncomment
141 # the following line to enable this substitution.
143 # NOTE: IF THE I/O BENCHMARK IS BEING BUILT, WE USE CONVERTFLAG TO
144 # SPECIFIY THE FORTRAN RECORD LENGTH UNIT. IT IS A SYSTEM-SPECIFIC
145 # VALUE (USUALLY 1 OR 4). UNCOMMENT THE SECOND LINE AND SUBSTITUTE
146 # THE CORRECT VALUE FOR "length".
147 # IF BOTH 128-BIT DOUBLE PRECISION NUMBERS AND I/O ARE TO BE ENABLED,
148 # UNCOMMENT THE THIRD LINE AND SUBSTITUTE THE CORRECT VALUE FOR
150 #---------------------------------------------------------------------------
151 # CONVERTFLAG = -DCONVERTDOUBLE
152 CONVERTFLAG = -DFORTRAN_REC_SIZE=1
153 # CONVERTFLAG = -DCONVERTDOUBLE -DFORTRAN_REC_SIZE=length
156 #---------------------------------------------------------------------------
157 # The variable RAND controls which random number generator
158 # is used. It is described in detail in Doc/README.install.
159 # Use "randi8" unless there is a reason to use another one.
160 # Other allowed values are "randi8_safe", "randdp" and "randdpvec"
161 #---------------------------------------------------------------------------
163 # The following is highly reliable but may be slow: