-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
feat(timeout): add benchmarking support and optimize signal handling #9100
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
base: main
Are you sure you want to change the base?
Conversation
- Add dev-dependencies for divan and uucore with benchmark features to Cargo.toml - Include a new benchmark harness for timeout_bench - Optimize signal lookups using OnceLock for KILL and CONT signals to avoid repeated computations - Introduce preserved_child_exit function for accurate exit status handling - Update send_signal and wait_or_kill_process for improved efficiency and correctness - Update Cargo.lock with new dependency codspeed-divan-compat This enhances performance testing capabilities and reduces overhead in signal operations for the timeout utility.
|
GNU testsuite comparison: |
- Include uu_timeout utility in the GitHub Actions benchmarks workflow - Ensures performance metrics are collected for the newly added timeout command
|
GNU testsuite comparison: |
… unused test - Reduced sleep time in "long-sleep" mode from 2s to 200ms for faster execution - Shortened timeout values in quick_exit and enforced benchmarks from 0.1s/0.05s to 0.02s - Removed timeout_kill_after benchmark to streamline test suite and improve performance
Removed unnecessary blank lines after the bench_timeout_with_mode call in src/uu/timeout/benches/timeout_bench.rs to improve code readability and consistency.
|
GNU testsuite comparison: |
|
GNU testsuite comparison: |
|
GNU testsuite comparison: |
|
Whats the reason that this PR is combined? Would it be possible to split the benchmarking and the timeout enhancements? |
separate PR |
|
needs #9733 before merging it |
This enhances performance testing capabilities and reduces overhead in signal operations for the timeout utility.