-
-
Notifications
You must be signed in to change notification settings - Fork 427
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Extend launch policy to carry stack size and scheduling hint in addition to priority #5543
Conversation
30c3118
to
05c3816
Compare
libs/parallelism/async_base/include/hpx/async_base/launch_policy.hpp
Outdated
Show resolved
Hide resolved
6a9ac23
to
5298ddc
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice! This seems to have the nice side-effect of simplifying all the functions that take priorities, stacksizes, and hints.
libs/core/properties/include/hpx/properties/scheduling_properties.hpp
Outdated
Show resolved
Hide resolved
libs/parallelism/executors/include/hpx/executors/detail/hierarchical_spawning.hpp
Outdated
Show resolved
Hide resolved
89296df
to
b85ca0a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me. Thanks @hkaiser!
Except that most CI configurations don't like the changes... This can go in once they are happy.
a5e4fb5
to
d9c97d9
Compare
This looks good now, I believe. |
I suppose these would be fitting to change in this PR: https://app.codacy.com/gh/STEllAR-GROUP/hpx/pullRequest?prid=8056581. Are you able to reproduce this: https://cdash.cscs.ch/testDetails.php?test=51703242&build=180874? |
These are deliberate, I'll ignore the tests for codacy.
Not yet, looks like something compiler specific, though. |
d9c97d9
to
c9bf994
Compare
c9bf994
to
5f9505f
Compare
@hkaiser looks like this is ready to go. Did you find out what was causing https://cdash.cscs.ch/testDetails.php?test=51703242&build=180874? |
Not yet, I wasn't even able to reproduce it locally... |
@msimberg do you recall whether this particular platform has any special configurations? |
@hkaiser I think C++20 is the only possibly relevant configuration option: hpx/.jenkins/cscs/env-gcc-newest.sh Line 10 in 5f9505f
|
This PR extends
hpx::launch
and related types (i.e.hpx::launch::async
, etc.) such that they contain the scheduling hint and the stack size in addition to the thread priority.This will be needed for the direct scoped execution to be able to control whether threads should be executed directly or not. This also simplifies a couple of internal interfaces.
As a flyby, this PR changes all thread enums to be of size
std::int8_t
, which allows for the launch policy to fit into a 64 bit register.