1 | # Makefile de GRISLI sur R2D2 |
---|
2 | # FT options de compilation |
---|
3 | # LK options de link |
---|
4 | |
---|
5 | # Rappel de quelques options interessantes |
---|
6 | #------------------------------------------- |
---|
7 | # faire imperativement attention a l'arithmetique |
---|
8 | # -fpe0 s'arrete sur les floating point exception (sauf underflow) |
---|
9 | # -CB Performs run-time checking on array subscript and character substring expressions |
---|
10 | # -g pour debug |
---|
11 | # -pg pour le profiling |
---|
12 | # -traceback permet de connaitre la ligne qui plante |
---|
13 | |
---|
14 | # faire man ifort pour plus d'infos |
---|
15 | |
---|
16 | # le directory dans lequel sont les compilateurs et MKL |
---|
17 | # DIRLOCAL=/usr/local variable d'environnement a definir dans .bash_profile |
---|
18 | |
---|
19 | # la version d'Aurelien, mais il faut changer le netcdf |
---|
20 | DIRLOCAL=/site |
---|
21 | NETCDFHOME=/site/netcdf |
---|
22 | HDF5_HOME=/site/hdf5 |
---|
23 | |
---|
24 | # librairies |
---|
25 | |
---|
26 | NCDF_INC = $(NETCDFHOME)/include |
---|
27 | NCDF_LIB = -L$(NETCDFHOME)/lib -lnetcdf -L/site/hdf5/lib -lhdf5 -lhdf5_hl |
---|
28 | HDF5_INC = $(HDF5_HOME)/include |
---|
29 | HDF5_LIB=-L$(HDF5_HOME)/lib -lhdf5 -lz |
---|
30 | |
---|
31 | |
---|
32 | |
---|
33 | MKL_LIB = -L/site/intel/mkl/10.0.4.023/lib/em64t -lmkl_lapack -lmkl_intel -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_intel_thread_lp64 -lmkl_core -liomp5 -lpthread |
---|
34 | export $MKL_LIB |
---|
35 | |
---|
36 | |
---|
37 | IFORT = ifort |
---|
38 | |
---|
39 | source = /etc/profile.d/compileenv.sh #aurel, a voir |
---|
40 | |
---|
41 | ARITHM = -O2 -fp-model precise -heap-arrays -vec_report0 |
---|
42 | #ARITHM = -O2 -check bounds #-fp-model precise -heap-arrays -g # aurel japon |
---|
43 | #ARITHM = -fp-model precise -warn all -CU -CA # options pour une meilleure arithmetique (normalement reproductible) |
---|
44 | #ARITHM = -03 # trop brutal ne pas utiliser |
---|
45 | |
---|
46 | FT = $(IFORT) $(ARITHM) -c -fpe0 -I$(NCDF_INC) # -traceback -CB -g #-pg # -g # -pg -ipo |
---|
47 | LK = $(IFORT) $(ARITHM) -i_dynamic -fpe0 # -traceback -CB -g #-pg #-g # -pg |
---|
48 | F_NETCDF = $(IFORT) $(ARITHM) -c -fpe1 -I$(NCDF_INC) # -traceback -CB -g #-pg -ipo # -g |
---|
49 | |
---|