mirror of https://github.com/QMCPACK/qmcpack.git
Cleaner offload flag.
This commit is contained in:
parent
254ccb86a2
commit
9c8837df46
|
@ -12,13 +12,21 @@ IF(QMC_OMP)
|
|||
SET(ENABLE_OPENMP 1)
|
||||
IF(ENABLE_OFFLOAD AND NOT CMAKE_SYSTEM_NAME STREQUAL "CrayLinuxEnvironment")
|
||||
SET(OFFLOAD_TARGET "nvptx64-nvidia-cuda" CACHE STRING "Offload target architecture")
|
||||
IF(DEFINED OFFLOAD_ARCH)
|
||||
SET(CLANG_OPENMP_OFFLOAD_FLAGS "-fopenmp-targets=${OFFLOAD_TARGET} -Xopenmp-target=${OFFLOAD_TARGET} -march=${OFFLOAD_ARCH}")
|
||||
ELSE()
|
||||
SET(CLANG_OPENMP_OFFLOAD_FLAGS "-fopenmp-targets=${OFFLOAD_TARGET}")
|
||||
ENDIF()
|
||||
|
||||
# Intel clang compiler needs a different flag for the host side OpenMP library when offload is used.
|
||||
IF(OFFLOAD_TARGET MATCHES "spir64")
|
||||
SET(OMP_FLAG "-fiopenmp")
|
||||
ELSE(OFFLOAD_TARGET MATCHES "spir64")
|
||||
SET(OMP_FLAG "-fopenmp")
|
||||
ENDIF(OFFLOAD_TARGET MATCHES "spir64")
|
||||
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OMP_FLAG}")
|
||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OMP_FLAG} -fopenmp-targets=${OFFLOAD_TARGET}")
|
||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OMP_FLAG}")
|
||||
ELSE()
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fopenmp")
|
||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp")
|
||||
|
@ -90,6 +98,11 @@ ELSEIF(CMAKE_SYSTEM_PROCESSOR MATCHES "ppc64" OR CMAKE_SYSTEM_PROCESSOR MATCHES
|
|||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
# Add OpenMP offload flags
|
||||
IF(DEFINED CLANG_OPENMP_OFFLOAD_FLAGS)
|
||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CLANG_OPENMP_OFFLOAD_FLAGS}")
|
||||
ENDIF()
|
||||
|
||||
# Add static flags if necessary
|
||||
IF(QMC_BUILD_STATIC)
|
||||
SET(CMAKE_CXX_LINK_FLAGS " -static")
|
||||
|
|
|
@ -62,10 +62,8 @@ folder=build_MI60_AOMP_offload_real_MP
|
|||
mkdir $folder
|
||||
cd $folder
|
||||
cmake -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ \
|
||||
-DQMC_MPI=0 \
|
||||
-DCMAKE_C_FLAGS="-march=native" \
|
||||
-DCMAKE_CXX_FLAGS="-march=native -Xopenmp-target=amdgcn-amd-amdhsa -march=gfx906" \
|
||||
-DQMC_MIXED_PRECISION=1 -DENABLE_OFFLOAD=ON -DOFFLOAD_TARGET="amdgcn-amd-amdhsa" \
|
||||
-DQMC_MPI=0 -DQMC_MIXED_PRECISION=1 \
|
||||
-DENABLE_OFFLOAD=ON -DOFFLOAD_TARGET=amdgcn-amd-amdhsa -DOFFLOAD_ARCH=gfx906 \
|
||||
-DENABLE_TIMERS=1 \
|
||||
.. && make -j32
|
||||
cd ..
|
||||
|
|
Loading…
Reference in New Issue