8000 feat(anta): New AntaRunner class with limit concurrency by carl-baillargeon · Pull Request #680 · aristanetworks/anta · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

feat(anta): New AntaRunner class with limit concurrency #680

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

Merged
merged 101 commits into from
May 13, 2025

Conversation

carl-baillargeon
Copy link
Contributor
@carl-baillargeon carl-baillargeon commented May 16, 2024

Description

  • Add AntaRunner class
  • Add settings.py module to manage ANTA settings
  • Add Semaphore option to limit the number of tests running concurrently

Fixes: #832
Fixes: #1187

Small benchmarks on i7-12800H, 32GB RAM. 41044 tests on 31 devices:
PR: anta nrfu json --output anta_results.json 78.45s user 4.17s system 82% cpu 1:40.15 total

main: anta nrfu json --output anta_results.json 74.72s user 3.85s system 75% cpu 1:43.48 total

With max concurrency of 25000 (instead of default 50000):
anta nrfu json --output anta_results.json 76.49s user 4.14s system 66% cpu 2:01.39 total

As expected, with a limit, it takes more time but less CPU usage.

Checklist:

Copy link

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
0.0% Duplication on New Code

See analysis details on SonarCloud

Copy link
Contributor
github-actions bot commented Jul 4, 2024

This pull request has conflicts, please resolve those before we can evaluate the pull request.

Copy link
Contributor

Conflicts have been resolved. A maintainer will review the pull request shortly.

Copy link

Copy link
Contributor

This pull request has conflicts, please resolve those before we can evaluate the pull request.

@mtache mtache changed the title refactor(anta): Refactor runner to use a generator with a limit feat(anta): Limit concurrency Oct 2, 2024
Copy link
Contributor
github-actions bot commented Oct 2, 2024

Conflicts have been resolved. A maintainer will review the pull request shortly.

Copy link
codspeed-hq bot commented Oct 2, 2024

CodSpeed Performance Report

Merging #680 will not alter performance

Comparing carl-baillargeon:refactor/runner_limit (3fbf3e0) with main (0231fa6)

Summary

✅ 22 untouched benchmarks
🆕 4 new benchmarks

Benchmarks breakdown

Benchmark BASE HEAD Change
🆕 test__get_test_coroutines[1-device] N/A 40.2 ms N/A
🆕 test__get_test_coroutines[2-devices] N/A 79.2 ms N/A
🆕 test__setup_tests[1-device] N/A 23.3 ms N/A
🆕 test__setup_tests[2-devices] N/A 23.4 ms N/A

Copy link
Contributor

This pull request has conflicts, please resolve those before we can evaluate the pull request.

Copy link
Contributor
github-actions bot commented Nov 4, 2024

Conflicts have been resolved. A maintainer will review the pull request shortly.

@carl-baillargeon carl-baillargeon changed the title feat(anta): Limit concurrency feat(anta): New AntaRunner class with limit concurrency Apr 16, 2025
@gmuloc gmuloc dismissed mtache’s stale review May 13, 2025 14:01

comments addressed

Copy link

@gmuloc gmuloc merged commit c0b6869 into aristanetworks:main May 13, 2025
23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

feat(anta): Add unreachable devices to the ResultManager Refactor: ANTA NRFU RunInformation log should be adjusted to be less confusing
5 participants
0