flux-framework / flux-sched

Fluxion Graph-based Scheduler
GNU Lesser General Public License v3.0
84 stars 39 forks source link

[WIP] Add support for dynamic match policy changes and always use first match for feasibility/satisfiability #1160

Open milroy opened 1 month ago

milroy commented 1 month ago

This PR adds support for dynamically changing the match policy based on a jobspec or other conditions. It also configures the first match policy to be used for satisfiability/feasibility checks to improve performance.

~This PR addresses but likely does not completely solve the satisfiability/feasibility check performance problem reported in issue #1159.~ (The system configuration at the time would not have benefited from this change.

codecov[bot] commented 1 month ago

Codecov Report

Merging #1160 (4219d35) into master (68c636a) will decrease coverage by 0.1%. The diff coverage is 89.4%.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #1160 +/- ## ======================================== - Coverage 71.0% 71.0% -0.1% ======================================== Files 96 96 Lines 12867 12875 +8 ======================================== + Hits 9147 9150 +3 - Misses 3720 3725 +5 ``` | [Files](https://app.codecov.io/gh/flux-framework/flux-sched/pull/1160?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=flux-framework) | Coverage Δ | | |---|---|---| | [resource/traversers/dfu.cpp](https://app.codecov.io/gh/flux-framework/flux-sched/pull/1160?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=flux-framework#diff-cmVzb3VyY2UvdHJhdmVyc2Vycy9kZnUuY3Bw) | `87.5% <100.0%> (-0.2%)` | :arrow_down: | | [resource/traversers/dfu\_impl.hpp](https://app.codecov.io/gh/flux-framework/flux-sched/pull/1160?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=flux-framework#diff-cmVzb3VyY2UvdHJhdmVyc2Vycy9kZnVfaW1wbC5ocHA=) | `94.7% <ø> (ø)` | | | [resource/traversers/dfu\_impl.cpp](https://app.codecov.io/gh/flux-framework/flux-sched/pull/1160?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=flux-framework#diff-cmVzb3VyY2UvdHJhdmVyc2Vycy9kZnVfaW1wbC5jcHA=) | `82.9% <80.0%> (-0.1%)` | :arrow_down: | ... and [4 files with indirect coverage changes](https://app.codecov.io/gh/flux-framework/flux-sched/pull/1160/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=flux-framework)