From d450eb32f950e628c5ed5171bce40bd0ba639c42 Mon Sep 17 00:00:00 2001 From: Anna Levenberg Date: Fri, 7 Jun 2024 08:40:39 -0400 Subject: [PATCH] cleanup(batch/parallel): compile with openmp and set threads (#351) * cleanup(batch/parallel): compile with openmp and set threads * add cmake suggestions --- batch/parallel/application/CMakeLists.txt | 3 +++ batch/parallel/application/src/finsim.cc | 2 ++ 2 files changed, 5 insertions(+) diff --git a/batch/parallel/application/CMakeLists.txt b/batch/parallel/application/CMakeLists.txt index c8b9f52..fb8ec21 100644 --- a/batch/parallel/application/CMakeLists.txt +++ b/batch/parallel/application/CMakeLists.txt @@ -21,4 +21,7 @@ set(PACKAGE_BUGREPORT "https://github.com/GoogleCloudPlatform/cpp-samples/issues") project(cpp-samples-batch CXX) +find_package(OpenMP REQUIRED) + add_executable(finsim src/finsim.cc) +target_link_libraries(finsim PRIVATE OpenMP::OpenMP_CXX) diff --git a/batch/parallel/application/src/finsim.cc b/batch/parallel/application/src/finsim.cc index b9f5ac3..9d104ef 100644 --- a/batch/parallel/application/src/finsim.cc +++ b/batch/parallel/application/src/finsim.cc @@ -103,6 +103,8 @@ int main(int argc, char* argv[]) { std::vector results(input_config.simulations); simulate(input_config); + omp_set_num_threads(input_config.total_threads); + #pragma omp parallel for for (int i = 0; i < input_config.simulations; i++) { results[i] = simulate(input_config);