Skip to content

Add Lassen trace conversion and data-driven synthetic job generation - #80

Merged
JaeseungYeom merged 3 commits into
mainfrom
exp/multic
Oct 5, 2026
Merged

JaeseungYeom merged 3 commits into
mainfrom
exp/multic

Conversation

@JaeseungYeom

Copy link
Copy Markdown
Collaborator
  • convert Lassen CSM pbatch records to Unix epoch timestamps
  • resolve Daylight Saving Time ordering anomalies
  • generate simulation traces with duration in place of begin/end times
  • add configurable filtering and empirical sampling for synthetic jobs
  • document input schemas, outputs, sampling logic, and usage

- convert Lassen CSM pbatch records to Unix epoch timestamps
- resolve Daylight Saving Time ordering anomalies
- generate simulation traces with duration in place of begin/end times
- add configurable filtering and empirical sampling for synthetic jobs
- document input schemas, outputs, sampling logic, and usage
@JaeseungYeom JaeseungYeom self-assigned this Oct 5, 2026
@JaeseungYeom JaeseungYeom added the enhancement New feature or request label Oct 5, 2026
- treat the application requirements table as a workload allowlist
- exclude applications absent from apps.csv during table generation and dispatch
- retain all compatible measured modes in ground-truth performance tables
- allow prediction tables to have different mode coverage from ground truth
- generate application-average predictions for measured modes
- generate RAJAPerf predictions for every system mode
- filter systems whose actual runtime exceeds the maximum wall-time limit
- prefer any feasible system over infeasible systems regardless of queue wait
- double underestimated predicted time limits until they cover actual runtime
- cap submitted limits at the configured platform maximum
- drop and report jobs when no system can complete them within the maximum
- record submitted limits, doubling counts, and dropped-job totals
- document the optimistic assumption that failed limit attempts consume no resources
- add a three-policy prediction-study runner with validated completion markers
- summarize ideal, application-average, and RAJAPerf results across ten traces
- relocate production tables and configuration under experimental/multi-cluster
- move dispatcher test fixtures into a dedicated testdata directory
- source generated traces from experimental/synthesize/lassen/synthetic_traces
- ignore generated traces and prediction-study results
- emit generated CSV traces with Unix line endings
- add Python and MPI regression coverage for allowlists, wall-time correction,
  infeasible placement, dropped jobs, and prediction coverage
- make exit_status optional unless --successful-only is requested
- validate that historical time limits are positive
- sort eligible jobs by submission time before sampling arrival windows
- add --max-time-limit to enforce a target platform wall-time cap
- normalize runtimes that exceed their effective time limits
- apply minimum-duration filtering after runtime normalization
- sample time limits conditionally from the selected runtime bucket
- cap sampled runtimes when fractional bucket matching selects a shorter limit
- guarantee duration does not exceed time_limit in generated jobs
- emit generated CSV files with Unix line endings
- document time-limit units, normalization, sampling, and Lassen’s 12-hour cap
- add coverage for default limits, custom caps, invalid limits, and line endings
@JaeseungYeom
JaeseungYeom merged commit 83bd049 into main Oct 5, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant