<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Hi All,<br>
<br>
I have a PETSc application that need additional compiling flags to
build Hybrid MPI-OpenMP parallel application on WestGrid
Supercomputer (Canada) system. <br>
<br>
The code and makefile work fine on my local machine for both Windows
and Linux, but when compiled on WestGrid Orcinus System for the
OpenMP version and Hybrid version, the OpenMP parallel part does not
take effect while only MPI parallel part takes effect. There is no
error while compiling the code. I am not sure if there is something
wrong with the makefile or something other setting. <br>
<br>
The compiler flags need to build Hybrid MPI-OpenMP version on
WestGrid Orcinus is "<font color="#ff0000">-shared-intel -openmp -O2
-xSSSE3 -axSSE4.2,SSE4.1 -ip</font>" . For the sequential version
or MPI parallel version, these flags are not needed.<br>
<br>
Would anybody help to check if the compiler flag (red) in the
makefile is correct? <br>
<br>
Thanks,<br>
<br>
Danyang<br>
<br>
The makefile is shown below<br>
<br>
include ${PETSC_DIR}/conf/variables<br>
include ${PETSC_DIR}/conf/rules<br>
<br>
#FC = ifort<br>
SRC =./../<br>
<br>
# Additional flags that may be required by the compiler ...<br>
# This is required for the OpenMP parallel version and Hybrid
MPI-OpenMP parallel version<br>
# not necessary for the sequential version and MPI version<br>
<font color="#ff0000">DFCFLAG = -shared-intel -openmp -O2 -xSSSE3
-axSSE4.2,SSE4.1 -ip</font><br>
<br>
#Flag for WestGrid Orcinus System<br>
#Load PETSc module before make<br>
#module load /global/system/Modules/modulefiles/intel-2011/petsc<br>
FPPFLAGS = -DLINUX -DRELEASE -DPETSC -DMPI -DOPENMP<br>
<br>
SOURCES = $(SRC)gas_advection/relpfsat_g.o\<br>
$(SRC)int_h_ovendry.o\<br>
$(SRC)dhconst.o\<br>
...<br>
<br>
min3p: $(SOURCES) chkopts<br>
-${FLINKER} $(FPPFLAGS) $(DFCFLAG) -o ex $(SOURCES)
${PETSC_LIB} ${DLIB}<br>
</body>
</html>