diff --git a/epochX/cudacpp/CODEGEN/PLUGIN/CUDACPP_SA_OUTPUT/madgraph/iolibs/template_files/gpu/cudacpp.mk b/epochX/cudacpp/CODEGEN/PLUGIN/CUDACPP_SA_OUTPUT/madgraph/iolibs/template_files/gpu/cudacpp.mk index 4f3ea91be1..383b7292e3 100644 --- a/epochX/cudacpp/CODEGEN/PLUGIN/CUDACPP_SA_OUTPUT/madgraph/iolibs/template_files/gpu/cudacpp.mk +++ b/epochX/cudacpp/CODEGEN/PLUGIN/CUDACPP_SA_OUTPUT/madgraph/iolibs/template_files/gpu/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/CODEGEN/PLUGIN/CUDACPP_SA_OUTPUT/madgraph/iolibs/template_files/gpu/process_function_definitions.inc b/epochX/cudacpp/CODEGEN/PLUGIN/CUDACPP_SA_OUTPUT/madgraph/iolibs/template_files/gpu/process_function_definitions.inc index eb6adad000..47322262e4 100644 --- a/epochX/cudacpp/CODEGEN/PLUGIN/CUDACPP_SA_OUTPUT/madgraph/iolibs/template_files/gpu/process_function_definitions.inc +++ b/epochX/cudacpp/CODEGEN/PLUGIN/CUDACPP_SA_OUTPUT/madgraph/iolibs/template_files/gpu/process_function_definitions.inc @@ -191,6 +191,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -252,7 +264,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/ee_mumu.mad/SubProcesses/P1_epem_mupmum/CPPProcess.cc b/epochX/cudacpp/ee_mumu.mad/SubProcesses/P1_epem_mupmum/CPPProcess.cc index b6fb333a80..330eeaa46d 100644 --- a/epochX/cudacpp/ee_mumu.mad/SubProcesses/P1_epem_mupmum/CPPProcess.cc +++ b/epochX/cudacpp/ee_mumu.mad/SubProcesses/P1_epem_mupmum/CPPProcess.cc @@ -623,6 +623,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -684,7 +696,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/ee_mumu.mad/SubProcesses/cudacpp.mk b/epochX/cudacpp/ee_mumu.mad/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/ee_mumu.mad/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/ee_mumu.mad/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/ee_mumu.sa/SubProcesses/P1_Sigma_sm_epem_mupmum/CPPProcess.cc b/epochX/cudacpp/ee_mumu.sa/SubProcesses/P1_Sigma_sm_epem_mupmum/CPPProcess.cc index de3a60850c..f7b1861dec 100644 --- a/epochX/cudacpp/ee_mumu.sa/SubProcesses/P1_Sigma_sm_epem_mupmum/CPPProcess.cc +++ b/epochX/cudacpp/ee_mumu.sa/SubProcesses/P1_Sigma_sm_epem_mupmum/CPPProcess.cc @@ -621,6 +621,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -682,7 +694,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/ee_mumu.sa/SubProcesses/cudacpp.mk b/epochX/cudacpp/ee_mumu.sa/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/ee_mumu.sa/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/ee_mumu.sa/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/gg_tt.mad/SubProcesses/P1_gg_ttx/CPPProcess.cc b/epochX/cudacpp/gg_tt.mad/SubProcesses/P1_gg_ttx/CPPProcess.cc index cf0c87de10..7f81f97db2 100644 --- a/epochX/cudacpp/gg_tt.mad/SubProcesses/P1_gg_ttx/CPPProcess.cc +++ b/epochX/cudacpp/gg_tt.mad/SubProcesses/P1_gg_ttx/CPPProcess.cc @@ -638,6 +638,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -699,7 +711,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/gg_tt.mad/SubProcesses/cudacpp.mk b/epochX/cudacpp/gg_tt.mad/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/gg_tt.mad/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/gg_tt.mad/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/gg_tt.sa/SubProcesses/P1_Sigma_sm_gg_ttx/CPPProcess.cc b/epochX/cudacpp/gg_tt.sa/SubProcesses/P1_Sigma_sm_gg_ttx/CPPProcess.cc index fde83d7e92..1bda21de20 100644 --- a/epochX/cudacpp/gg_tt.sa/SubProcesses/P1_Sigma_sm_gg_ttx/CPPProcess.cc +++ b/epochX/cudacpp/gg_tt.sa/SubProcesses/P1_Sigma_sm_gg_ttx/CPPProcess.cc @@ -635,6 +635,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -696,7 +708,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/gg_tt.sa/SubProcesses/cudacpp.mk b/epochX/cudacpp/gg_tt.sa/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/gg_tt.sa/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/gg_tt.sa/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/gg_tt01g.mad/SubProcesses/P1_gg_ttx/CPPProcess.cc b/epochX/cudacpp/gg_tt01g.mad/SubProcesses/P1_gg_ttx/CPPProcess.cc index cf0c87de10..7f81f97db2 100644 --- a/epochX/cudacpp/gg_tt01g.mad/SubProcesses/P1_gg_ttx/CPPProcess.cc +++ b/epochX/cudacpp/gg_tt01g.mad/SubProcesses/P1_gg_ttx/CPPProcess.cc @@ -638,6 +638,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -699,7 +711,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/gg_tt01g.mad/SubProcesses/P2_gg_ttxg/CPPProcess.cc b/epochX/cudacpp/gg_tt01g.mad/SubProcesses/P2_gg_ttxg/CPPProcess.cc index ff58257c0e..3802b1130d 100644 --- a/epochX/cudacpp/gg_tt01g.mad/SubProcesses/P2_gg_ttxg/CPPProcess.cc +++ b/epochX/cudacpp/gg_tt01g.mad/SubProcesses/P2_gg_ttxg/CPPProcess.cc @@ -859,6 +859,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -920,7 +932,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/gg_tt01g.mad/SubProcesses/cudacpp.mk b/epochX/cudacpp/gg_tt01g.mad/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/gg_tt01g.mad/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/gg_tt01g.mad/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/gg_ttg.mad/SubProcesses/P1_gg_ttxg/CPPProcess.cc b/epochX/cudacpp/gg_ttg.mad/SubProcesses/P1_gg_ttxg/CPPProcess.cc index c117c80635..7b00458834 100644 --- a/epochX/cudacpp/gg_ttg.mad/SubProcesses/P1_gg_ttxg/CPPProcess.cc +++ b/epochX/cudacpp/gg_ttg.mad/SubProcesses/P1_gg_ttxg/CPPProcess.cc @@ -859,6 +859,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -920,7 +932,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/gg_ttg.mad/SubProcesses/cudacpp.mk b/epochX/cudacpp/gg_ttg.mad/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/gg_ttg.mad/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/gg_ttg.mad/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/gg_ttg.sa/SubProcesses/P1_Sigma_sm_gg_ttxg/CPPProcess.cc b/epochX/cudacpp/gg_ttg.sa/SubProcesses/P1_Sigma_sm_gg_ttxg/CPPProcess.cc index 147dd97898..d5d5113ba2 100644 --- a/epochX/cudacpp/gg_ttg.sa/SubProcesses/P1_Sigma_sm_gg_ttxg/CPPProcess.cc +++ b/epochX/cudacpp/gg_ttg.sa/SubProcesses/P1_Sigma_sm_gg_ttxg/CPPProcess.cc @@ -853,6 +853,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -914,7 +926,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/gg_ttg.sa/SubProcesses/cudacpp.mk b/epochX/cudacpp/gg_ttg.sa/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/gg_ttg.sa/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/gg_ttg.sa/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/gg_ttgg.mad/SubProcesses/P1_gg_ttxgg/CPPProcess.cc b/epochX/cudacpp/gg_ttgg.mad/SubProcesses/P1_gg_ttxgg/CPPProcess.cc index b9a359a354..7177861cba 100644 --- a/epochX/cudacpp/gg_ttgg.mad/SubProcesses/P1_gg_ttxgg/CPPProcess.cc +++ b/epochX/cudacpp/gg_ttgg.mad/SubProcesses/P1_gg_ttxgg/CPPProcess.cc @@ -2805,6 +2805,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -2866,7 +2878,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/gg_ttgg.mad/SubProcesses/cudacpp.mk b/epochX/cudacpp/gg_ttgg.mad/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/gg_ttgg.mad/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/gg_ttgg.mad/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/gg_ttgg.sa/SubProcesses/P1_Sigma_sm_gg_ttxgg/CPPProcess.cc b/epochX/cudacpp/gg_ttgg.sa/SubProcesses/P1_Sigma_sm_gg_ttxgg/CPPProcess.cc index bae399e246..b3ebe621ef 100644 --- a/epochX/cudacpp/gg_ttgg.sa/SubProcesses/P1_Sigma_sm_gg_ttxgg/CPPProcess.cc +++ b/epochX/cudacpp/gg_ttgg.sa/SubProcesses/P1_Sigma_sm_gg_ttxgg/CPPProcess.cc @@ -2862,6 +2862,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -2923,7 +2935,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/gg_ttgg.sa/SubProcesses/cudacpp.mk b/epochX/cudacpp/gg_ttgg.sa/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/gg_ttgg.sa/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/gg_ttgg.sa/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/gg_ttggg.mad/SubProcesses/P1_gg_ttxggg/CPPProcess.cc b/epochX/cudacpp/gg_ttggg.mad/SubProcesses/P1_gg_ttxggg/CPPProcess.cc index 887e7fd63e..08771f77a8 100644 --- a/epochX/cudacpp/gg_ttggg.mad/SubProcesses/P1_gg_ttxggg/CPPProcess.cc +++ b/epochX/cudacpp/gg_ttggg.mad/SubProcesses/P1_gg_ttxggg/CPPProcess.cc @@ -30472,6 +30472,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -30533,7 +30545,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/gg_ttggg.mad/SubProcesses/cudacpp.mk b/epochX/cudacpp/gg_ttggg.mad/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/gg_ttggg.mad/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/gg_ttggg.mad/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/gg_ttggg.sa/SubProcesses/P1_Sigma_sm_gg_ttxggg/CPPProcess.cc b/epochX/cudacpp/gg_ttggg.sa/SubProcesses/P1_Sigma_sm_gg_ttxggg/CPPProcess.cc index d3018996f0..1c064e42d7 100644 --- a/epochX/cudacpp/gg_ttggg.sa/SubProcesses/P1_Sigma_sm_gg_ttxggg/CPPProcess.cc +++ b/epochX/cudacpp/gg_ttggg.sa/SubProcesses/P1_Sigma_sm_gg_ttxggg/CPPProcess.cc @@ -32362,6 +32362,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -32423,7 +32435,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/gg_ttggg.sa/SubProcesses/cudacpp.mk b/epochX/cudacpp/gg_ttggg.sa/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/gg_ttggg.sa/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/gg_ttggg.sa/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/gq_ttq.mad/SubProcesses/P1_gu_ttxu/CPPProcess.cc b/epochX/cudacpp/gq_ttq.mad/SubProcesses/P1_gu_ttxu/CPPProcess.cc index 03174bc366..ff5f880d86 100644 --- a/epochX/cudacpp/gq_ttq.mad/SubProcesses/P1_gu_ttxu/CPPProcess.cc +++ b/epochX/cudacpp/gq_ttq.mad/SubProcesses/P1_gu_ttxu/CPPProcess.cc @@ -695,6 +695,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -756,7 +768,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/gq_ttq.mad/SubProcesses/P1_gux_ttxux/CPPProcess.cc b/epochX/cudacpp/gq_ttq.mad/SubProcesses/P1_gux_ttxux/CPPProcess.cc index 0e0543d09a..93c9a277aa 100644 --- a/epochX/cudacpp/gq_ttq.mad/SubProcesses/P1_gux_ttxux/CPPProcess.cc +++ b/epochX/cudacpp/gq_ttq.mad/SubProcesses/P1_gux_ttxux/CPPProcess.cc @@ -695,6 +695,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -756,7 +768,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/gq_ttq.mad/SubProcesses/cudacpp.mk b/epochX/cudacpp/gq_ttq.mad/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/gq_ttq.mad/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/gq_ttq.mad/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/gq_ttq.sa/SubProcesses/P1_Sigma_sm_gu_ttxu/CPPProcess.cc b/epochX/cudacpp/gq_ttq.sa/SubProcesses/P1_Sigma_sm_gu_ttxu/CPPProcess.cc index 2f6da08c6a..8648d32137 100644 --- a/epochX/cudacpp/gq_ttq.sa/SubProcesses/P1_Sigma_sm_gu_ttxu/CPPProcess.cc +++ b/epochX/cudacpp/gq_ttq.sa/SubProcesses/P1_Sigma_sm_gu_ttxu/CPPProcess.cc @@ -690,6 +690,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -751,7 +763,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/gq_ttq.sa/SubProcesses/P1_Sigma_sm_gux_ttxux/CPPProcess.cc b/epochX/cudacpp/gq_ttq.sa/SubProcesses/P1_Sigma_sm_gux_ttxux/CPPProcess.cc index 6ccc70d439..0febdb51b0 100644 --- a/epochX/cudacpp/gq_ttq.sa/SubProcesses/P1_Sigma_sm_gux_ttxux/CPPProcess.cc +++ b/epochX/cudacpp/gq_ttq.sa/SubProcesses/P1_Sigma_sm_gux_ttxux/CPPProcess.cc @@ -690,6 +690,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -751,7 +763,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/gq_ttq.sa/SubProcesses/cudacpp.mk b/epochX/cudacpp/gq_ttq.sa/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/gq_ttq.sa/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/gq_ttq.sa/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/heft_gg_bb.mad/SubProcesses/P1_gg_bbx/CPPProcess.cc b/epochX/cudacpp/heft_gg_bb.mad/SubProcesses/P1_gg_bbx/CPPProcess.cc index 1291d5924f..491c7a7df1 100644 --- a/epochX/cudacpp/heft_gg_bb.mad/SubProcesses/P1_gg_bbx/CPPProcess.cc +++ b/epochX/cudacpp/heft_gg_bb.mad/SubProcesses/P1_gg_bbx/CPPProcess.cc @@ -653,6 +653,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -714,7 +726,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/heft_gg_bb.mad/SubProcesses/cudacpp.mk b/epochX/cudacpp/heft_gg_bb.mad/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/heft_gg_bb.mad/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/heft_gg_bb.mad/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/heft_gg_bb.sa/SubProcesses/P1_Sigma_heft_gg_bbx/CPPProcess.cc b/epochX/cudacpp/heft_gg_bb.sa/SubProcesses/P1_Sigma_heft_gg_bbx/CPPProcess.cc index 244b1c4a2c..4a274bd67e 100644 --- a/epochX/cudacpp/heft_gg_bb.sa/SubProcesses/P1_Sigma_heft_gg_bbx/CPPProcess.cc +++ b/epochX/cudacpp/heft_gg_bb.sa/SubProcesses/P1_Sigma_heft_gg_bbx/CPPProcess.cc @@ -649,6 +649,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -710,7 +722,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/heft_gg_bb.sa/SubProcesses/cudacpp.mk b/epochX/cudacpp/heft_gg_bb.sa/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/heft_gg_bb.sa/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/heft_gg_bb.sa/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P0_dux_ttxwm/CPPProcess.cc b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P0_dux_ttxwm/CPPProcess.cc index 14e10e47fc..cf966578d2 100644 --- a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P0_dux_ttxwm/CPPProcess.cc +++ b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P0_dux_ttxwm/CPPProcess.cc @@ -665,6 +665,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -726,7 +738,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P0_udx_ttxwp/CPPProcess.cc b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P0_udx_ttxwp/CPPProcess.cc index 2dd6b7e9c8..d2297469b1 100644 --- a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P0_udx_ttxwp/CPPProcess.cc +++ b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P0_udx_ttxwp/CPPProcess.cc @@ -665,6 +665,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -726,7 +738,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_dux_ttxwmg/CPPProcess.cc b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_dux_ttxwmg/CPPProcess.cc index 2a7368ed83..1936860d35 100644 --- a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_dux_ttxwmg/CPPProcess.cc +++ b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_dux_ttxwmg/CPPProcess.cc @@ -863,6 +863,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -924,7 +936,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_gd_ttxwmu/CPPProcess.cc b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_gd_ttxwmu/CPPProcess.cc index fbcc691644..67f4e2f692 100644 --- a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_gd_ttxwmu/CPPProcess.cc +++ b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_gd_ttxwmu/CPPProcess.cc @@ -863,6 +863,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -924,7 +936,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_gdx_ttxwpux/CPPProcess.cc b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_gdx_ttxwpux/CPPProcess.cc index 37d6632f2d..43af98566f 100644 --- a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_gdx_ttxwpux/CPPProcess.cc +++ b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_gdx_ttxwpux/CPPProcess.cc @@ -863,6 +863,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -924,7 +936,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_gu_ttxwpd/CPPProcess.cc b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_gu_ttxwpd/CPPProcess.cc index f0626d1178..a2e0da387c 100644 --- a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_gu_ttxwpd/CPPProcess.cc +++ b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_gu_ttxwpd/CPPProcess.cc @@ -863,6 +863,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -924,7 +936,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_gux_ttxwmdx/CPPProcess.cc b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_gux_ttxwmdx/CPPProcess.cc index 71184b0eda..00d5cdcf7c 100644 --- a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_gux_ttxwmdx/CPPProcess.cc +++ b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_gux_ttxwmdx/CPPProcess.cc @@ -863,6 +863,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -924,7 +936,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_udx_ttxwpg/CPPProcess.cc b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_udx_ttxwpg/CPPProcess.cc index c2a3e42ac6..fbfb3cebcb 100644 --- a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_udx_ttxwpg/CPPProcess.cc +++ b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/P1_udx_ttxwpg/CPPProcess.cc @@ -863,6 +863,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -924,7 +936,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/cudacpp.mk b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/nobm_pp_ttW.mad/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P0_gg_ttx/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P0_gg_ttx/CPPProcess.cc index e0cab101a6..64118e32ab 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P0_gg_ttx/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P0_gg_ttx/CPPProcess.cc @@ -638,6 +638,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -699,7 +711,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P0_uux_ttx/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P0_uux_ttx/CPPProcess.cc index 9488909522..4145027c46 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P0_uux_ttx/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P0_uux_ttx/CPPProcess.cc @@ -615,6 +615,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -676,7 +688,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P1_gg_ttxg/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P1_gg_ttxg/CPPProcess.cc index c117c80635..7b00458834 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P1_gg_ttxg/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P1_gg_ttxg/CPPProcess.cc @@ -859,6 +859,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -920,7 +932,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P1_gu_ttxu/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P1_gu_ttxu/CPPProcess.cc index 7efa2ddf59..a408feb466 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P1_gu_ttxu/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P1_gu_ttxu/CPPProcess.cc @@ -695,6 +695,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -756,7 +768,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P1_gux_ttxux/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P1_gux_ttxux/CPPProcess.cc index 4146aaf18c..fdd12e55d4 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P1_gux_ttxux/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P1_gux_ttxux/CPPProcess.cc @@ -695,6 +695,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -756,7 +768,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P1_uux_ttxg/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P1_uux_ttxg/CPPProcess.cc index 225c8ca5c9..4e7d0809c1 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P1_uux_ttxg/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P1_uux_ttxg/CPPProcess.cc @@ -695,6 +695,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -756,7 +768,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_gg_ttxgg/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_gg_ttxgg/CPPProcess.cc index 0b331fd15a..6e619a2acf 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_gg_ttxgg/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_gg_ttxgg/CPPProcess.cc @@ -2805,6 +2805,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -2866,7 +2878,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_gg_ttxuux/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_gg_ttxuux/CPPProcess.cc index 4f6d700ede..deb14a48af 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_gg_ttxuux/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_gg_ttxuux/CPPProcess.cc @@ -1200,6 +1200,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -1261,7 +1273,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_gu_ttxgu/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_gu_ttxgu/CPPProcess.cc index fe1473ec16..d263da0dd9 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_gu_ttxgu/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_gu_ttxgu/CPPProcess.cc @@ -1200,6 +1200,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -1261,7 +1273,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_gux_ttxgux/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_gux_ttxgux/CPPProcess.cc index 9bbe46ac79..811f807bf2 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_gux_ttxgux/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_gux_ttxgux/CPPProcess.cc @@ -1200,6 +1200,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -1261,7 +1273,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uc_ttxuc/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uc_ttxuc/CPPProcess.cc index d7983b25cf..1e59e4da55 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uc_ttxuc/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uc_ttxuc/CPPProcess.cc @@ -775,6 +775,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -836,7 +848,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_ucx_ttxucx/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_ucx_ttxucx/CPPProcess.cc index ec11bb2216..96f9e329fc 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_ucx_ttxucx/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_ucx_ttxucx/CPPProcess.cc @@ -781,6 +781,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -842,7 +854,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uu_ttxuu/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uu_ttxuu/CPPProcess.cc index 31e63dc449..dc04b5c730 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uu_ttxuu/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uu_ttxuu/CPPProcess.cc @@ -885,6 +885,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -946,7 +958,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uux_ttxccx/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uux_ttxccx/CPPProcess.cc index a4e3a7bb49..5230235fb7 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uux_ttxccx/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uux_ttxccx/CPPProcess.cc @@ -781,6 +781,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -842,7 +854,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uux_ttxgg/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uux_ttxgg/CPPProcess.cc index 6143def4bf..b16698e400 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uux_ttxgg/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uux_ttxgg/CPPProcess.cc @@ -1200,6 +1200,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -1261,7 +1273,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uux_ttxuux/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uux_ttxuux/CPPProcess.cc index 7bae595aca..bab01d589e 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uux_ttxuux/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uux_ttxuux/CPPProcess.cc @@ -885,6 +885,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -946,7 +958,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uxcx_ttxuxcx/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uxcx_ttxuxcx/CPPProcess.cc index 7ea668d895..25a586c257 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uxcx_ttxuxcx/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uxcx_ttxuxcx/CPPProcess.cc @@ -775,6 +775,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -836,7 +848,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uxux_ttxuxux/CPPProcess.cc b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uxux_ttxuxux/CPPProcess.cc index 11b75db19c..d2437feb8c 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uxux_ttxuxux/CPPProcess.cc +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/P2_uxux_ttxuxux/CPPProcess.cc @@ -885,6 +885,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -946,7 +958,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/cudacpp.mk b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/pp_tt012j.mad/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/pp_tt012j.mad/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/smeft_gg_tttt.mad/SubProcesses/P1_gg_ttxttx/CPPProcess.cc b/epochX/cudacpp/smeft_gg_tttt.mad/SubProcesses/P1_gg_ttxttx/CPPProcess.cc index 9f314a5390..b5d2969453 100644 --- a/epochX/cudacpp/smeft_gg_tttt.mad/SubProcesses/P1_gg_ttxttx/CPPProcess.cc +++ b/epochX/cudacpp/smeft_gg_tttt.mad/SubProcesses/P1_gg_ttxttx/CPPProcess.cc @@ -1726,6 +1726,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -1787,7 +1799,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/smeft_gg_tttt.mad/SubProcesses/cudacpp.mk b/epochX/cudacpp/smeft_gg_tttt.mad/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/smeft_gg_tttt.mad/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/smeft_gg_tttt.mad/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/smeft_gg_tttt.sa/SubProcesses/P1_Sigma_SMEFTsim_topU3l_MwScheme_UFO_gg_ttxttx/CPPProcess.cc b/epochX/cudacpp/smeft_gg_tttt.sa/SubProcesses/P1_Sigma_SMEFTsim_topU3l_MwScheme_UFO_gg_ttxttx/CPPProcess.cc index 3e2a70f8fb..96d03ee6c4 100644 --- a/epochX/cudacpp/smeft_gg_tttt.sa/SubProcesses/P1_Sigma_SMEFTsim_topU3l_MwScheme_UFO_gg_ttxttx/CPPProcess.cc +++ b/epochX/cudacpp/smeft_gg_tttt.sa/SubProcesses/P1_Sigma_SMEFTsim_topU3l_MwScheme_UFO_gg_ttxttx/CPPProcess.cc @@ -1674,6 +1674,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -1735,7 +1747,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/smeft_gg_tttt.sa/SubProcesses/cudacpp.mk b/epochX/cudacpp/smeft_gg_tttt.sa/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/smeft_gg_tttt.sa/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/smeft_gg_tttt.sa/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/susy_gg_t1t1.mad/SubProcesses/P1_gg_t1t1x/CPPProcess.cc b/epochX/cudacpp/susy_gg_t1t1.mad/SubProcesses/P1_gg_t1t1x/CPPProcess.cc index 776b1e73b7..d77da8fe88 100644 --- a/epochX/cudacpp/susy_gg_t1t1.mad/SubProcesses/P1_gg_t1t1x/CPPProcess.cc +++ b/epochX/cudacpp/susy_gg_t1t1.mad/SubProcesses/P1_gg_t1t1x/CPPProcess.cc @@ -661,6 +661,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -722,7 +734,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/susy_gg_t1t1.mad/SubProcesses/cudacpp.mk b/epochX/cudacpp/susy_gg_t1t1.mad/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/susy_gg_t1t1.mad/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/susy_gg_t1t1.mad/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/susy_gg_t1t1.sa/SubProcesses/P1_Sigma_MSSM_SLHA2_gg_t1t1x/CPPProcess.cc b/epochX/cudacpp/susy_gg_t1t1.sa/SubProcesses/P1_Sigma_MSSM_SLHA2_gg_t1t1x/CPPProcess.cc index b76a9c32e5..79faaf7c21 100644 --- a/epochX/cudacpp/susy_gg_t1t1.sa/SubProcesses/P1_Sigma_MSSM_SLHA2_gg_t1t1x/CPPProcess.cc +++ b/epochX/cudacpp/susy_gg_t1t1.sa/SubProcesses/P1_Sigma_MSSM_SLHA2_gg_t1t1x/CPPProcess.cc @@ -662,6 +662,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -723,7 +735,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/susy_gg_t1t1.sa/SubProcesses/cudacpp.mk b/epochX/cudacpp/susy_gg_t1t1.sa/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/susy_gg_t1t1.sa/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/susy_gg_t1t1.sa/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/susy_gg_tt.mad/SubProcesses/P1_gg_ttx/CPPProcess.cc b/epochX/cudacpp/susy_gg_tt.mad/SubProcesses/P1_gg_ttx/CPPProcess.cc index 874cb91a6c..0c59608174 100644 --- a/epochX/cudacpp/susy_gg_tt.mad/SubProcesses/P1_gg_ttx/CPPProcess.cc +++ b/epochX/cudacpp/susy_gg_tt.mad/SubProcesses/P1_gg_ttx/CPPProcess.cc @@ -638,6 +638,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -699,7 +711,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/susy_gg_tt.mad/SubProcesses/cudacpp.mk b/epochX/cudacpp/susy_gg_tt.mad/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/susy_gg_tt.mad/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/susy_gg_tt.mad/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland) diff --git a/epochX/cudacpp/susy_gg_tt.sa/SubProcesses/P1_Sigma_MSSM_SLHA2_gg_ttx/CPPProcess.cc b/epochX/cudacpp/susy_gg_tt.sa/SubProcesses/P1_Sigma_MSSM_SLHA2_gg_ttx/CPPProcess.cc index b2dc904025..3b5fef8158 100644 --- a/epochX/cudacpp/susy_gg_tt.sa/SubProcesses/P1_Sigma_MSSM_SLHA2_gg_ttx/CPPProcess.cc +++ b/epochX/cudacpp/susy_gg_tt.sa/SubProcesses/P1_Sigma_MSSM_SLHA2_gg_ttx/CPPProcess.cc @@ -635,6 +635,18 @@ namespace mg5amcCpu CPPProcess::getCompiler() { std::stringstream out; + // HIP version (HIPCC) + // [Use __HIPCC__ instead of MGONGPUCPP_GPUIMPL here!] + // [This tests if 'hipcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] + // [Check 'hipcc -dM -E -x hip -I ../../src CPPProcess.cc | grep HIP'] +#ifdef __HIPCC__ +#if defined HIP_VERSION_MAJOR && defined HIP_VERSION_MINOR && defined HIP_VERSION_PATCH + out << "hipcc " << HIP_VERSION_MAJOR << "." << HIP_VERSION_MINOR << "." << HIP_VERSION_PATCH; +#else + out << "hipcc UNKNOWN"; +#endif + out << " ("; +#endif // CUDA version (NVCC) // [Use __NVCC__ instead of MGONGPUCPP_GPUIMPL here!] // [This tests if 'nvcc' was used even to build a .cc file, even if not necessarily 'nvcc -x cu' for a .cu file] @@ -696,7 +708,7 @@ namespace mg5amcCpu out << "gcc UNKNOWKN"; #endif #endif -#if defined __NVCC__ or defined __INTEL_LLVM_COMPILER +#if defined __HIPCC__ or defined __NVCC__ or defined __INTEL_LLVM_COMPILER out << ")"; #endif return out.str(); diff --git a/epochX/cudacpp/susy_gg_tt.sa/SubProcesses/cudacpp.mk b/epochX/cudacpp/susy_gg_tt.sa/SubProcesses/cudacpp.mk index 143147056e..20d8ded718 100644 --- a/epochX/cudacpp/susy_gg_tt.sa/SubProcesses/cudacpp.mk +++ b/epochX/cudacpp/susy_gg_tt.sa/SubProcesses/cudacpp.mk @@ -236,6 +236,7 @@ else ifeq ($(BACKEND),hip) GPUSUFFIX = hip # Optimization flags + override OPTFLAGS = -O2 # work around "Memory access fault" in gq_ttq for HIP #806: disable hipcc -O3 optimizations GPUFLAGS = $(foreach opt, $(OPTFLAGS), $(XCOMPILERFLAG) $(opt)) # DEBUG FLAGS (for #806: see https://hackmd.io/@gmarkoma/lumi_finland)