diff --git a/libs/core/execution/include/hpx/execution/detail/async_launch_policy_dispatch.hpp b/libs/core/execution/include/hpx/execution/detail/async_launch_policy_dispatch.hpp index dd3af81985f9..2665bd15bf48 100644 --- a/libs/core/execution/include/hpx/execution/detail/async_launch_policy_dispatch.hpp +++ b/libs/core/execution/include/hpx/execution/detail/async_launch_policy_dispatch.hpp @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2022 Hartmut Kaiser +// Copyright (c) 2007-2023 Hartmut Kaiser // // SPDX-License-Identifier: BSL-1.0 // Distributed under the Boost Software License, Version 1.0. (See accompanying @@ -252,8 +252,8 @@ namespace hpx::detail { lcos::local::futures_factory p( util::deferred_call(HPX_FORWARD(F, f), HPX_FORWARD(Ts, ts)...)); - threads::thread_id_ref_type tid = - p.post(pool, desc.get_description(), policy); + threads::thread_id_ref_type tid = p.post( + pool, desc.get_description(), HPX_FORWARD(Policy, policy)); // make sure this thread is executed last threads::thread_id_type const tid_self = threads::get_self_id(); diff --git a/libs/core/execution/include/hpx/execution/detail/post_policy_dispatch.hpp b/libs/core/execution/include/hpx/execution/detail/post_policy_dispatch.hpp index 0a68afb21dcd..3083fb261be1 100644 --- a/libs/core/execution/include/hpx/execution/detail/post_policy_dispatch.hpp +++ b/libs/core/execution/include/hpx/execution/detail/post_policy_dispatch.hpp @@ -1,4 +1,4 @@ -// Copyright (c) 2017-2022 Hartmut Kaiser +// Copyright (c) 2017-2023 Hartmut Kaiser // // SPDX-License-Identifier: BSL-1.0 // Distributed under the Boost Software License, Version 1.0. (See accompanying diff --git a/libs/core/execution/include/hpx/execution/detail/sync_launch_policy_dispatch.hpp b/libs/core/execution/include/hpx/execution/detail/sync_launch_policy_dispatch.hpp index 4261788a86c3..a5b2d1a18e00 100644 --- a/libs/core/execution/include/hpx/execution/detail/sync_launch_policy_dispatch.hpp +++ b/libs/core/execution/include/hpx/execution/detail/sync_launch_policy_dispatch.hpp @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2022 Hartmut Kaiser +// Copyright (c) 2007-2023 Hartmut Kaiser // // SPDX-License-Identifier: BSL-1.0 // Distributed under the Boost Software License, Version 1.0. (See accompanying diff --git a/libs/core/executors/include/hpx/executors/parallel_executor.hpp b/libs/core/executors/include/hpx/executors/parallel_executor.hpp index abedc6fd341f..8079bf81da25 100644 --- a/libs/core/executors/include/hpx/executors/parallel_executor.hpp +++ b/libs/core/executors/include/hpx/executors/parallel_executor.hpp @@ -363,7 +363,7 @@ namespace hpx::execution { #else hpx::threads::thread_description desc(f); #endif - auto pool = exec.pool_ ? + auto* pool = exec.pool_ ? exec.pool_ : threads::detail::get_self_or_default_pool(); return hpx::detail::async_launch_policy_dispatch::call( @@ -410,7 +410,7 @@ namespace hpx::execution { #else hpx::threads::thread_description desc(f); #endif - auto pool = + auto* pool = pool_ ? pool_ : threads::detail::get_self_or_default_pool(); hpx::detail::post_policy_dispatch::call( policy_, desc, pool, HPX_FORWARD(F, f), HPX_FORWARD(Ts, ts)...); @@ -440,7 +440,7 @@ namespace hpx::execution { #else hpx::threads::thread_description desc(f); #endif - auto pool = exec.pool_ ? + auto* pool = exec.pool_ ? exec.pool_ : threads::detail::get_self_or_default_pool(); @@ -450,6 +450,8 @@ namespace hpx::execution { hpx::threads::do_not_combine_tasks( exec.policy().get_hint().sharing_mode()); + // use scheduling based on index_queue if no hierarchical threshold + // is given and tasks are allowed to be combined if (exec.hierarchical_threshold_ == 0 && !do_not_combine_tasks) { return parallel::execution::detail:: diff --git a/libs/core/futures/src/future_data.cpp b/libs/core/futures/src/future_data.cpp index a05f4d577be7..3172792ec2ae 100644 --- a/libs/core/futures/src/future_data.cpp +++ b/libs/core/futures/src/future_data.cpp @@ -291,8 +291,8 @@ namespace hpx::lcos::detail { }, [&](std::exception_ptr ep) { // If an exception while creating the new task or inside the - // completion handler is thrown, there is nothing we can do... - // ... but terminate and report the error + // completion handler is thrown, there is nothing we can + // do... ... but terminate and report the error if (run_on_completed_error_handler) { run_on_completed_error_handler(HPX_MOVE(ep)); diff --git a/libs/core/schedulers/include/hpx/schedulers/local_priority_queue_scheduler.hpp b/libs/core/schedulers/include/hpx/schedulers/local_priority_queue_scheduler.hpp index f2b42fe1fb84..3e2a473a331c 100644 --- a/libs/core/schedulers/include/hpx/schedulers/local_priority_queue_scheduler.hpp +++ b/libs/core/schedulers/include/hpx/schedulers/local_priority_queue_scheduler.hpp @@ -31,6 +31,7 @@ #include #include #include +#include #include #include diff --git a/libs/core/thread_pools/include/hpx/thread_pools/scheduled_thread_pool_impl.hpp b/libs/core/thread_pools/include/hpx/thread_pools/scheduled_thread_pool_impl.hpp index 314862ee9b8e..cd5bcdda8416 100644 --- a/libs/core/thread_pools/include/hpx/thread_pools/scheduled_thread_pool_impl.hpp +++ b/libs/core/thread_pools/include/hpx/thread_pools/scheduled_thread_pool_impl.hpp @@ -125,10 +125,8 @@ namespace hpx::threads::detail { << std::bitset(get_used_processing_units()) #endif << '\n'; - os << "on numa domains : \n" << get_numa_domain_bitmap() << '\n'; - os << "pool offset : \n" - << std::dec << static_cast(this->thread_offset_) - << "\n"; + os << "on numa domains: " << get_numa_domain_bitmap() << '\n'; + os << "pool offset: " << std::dec << this->thread_offset_ << "\n"; } template