Skip to content
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

Use Treadle (on pull requests only) to speed up CI #2341

Merged
merged 2 commits into from
Sep 27, 2022
Merged

Conversation

jackkoenig
Copy link
Contributor

@jackkoenig jackkoenig commented Jan 12, 2022

Replaces #2043

Contributor Checklist

  • [NA] Did you add Scaladoc to every public function/method?
  • Did you add at least one test demonstrating the PR?
  • Did you delete any extraneous printlns/debugging code?
  • Did you specify the type of improvement?
  • [NA] Did you add appropriate documentation in docs/src?
  • Did you state the API impact?
  • Did you specify the code generation impact?
  • Did you request a desired merge strategy?
  • [NA] Did you add text to be included in the Release Notes for this change?

Type of Improvement

  • ci improvement

API Impact

No impact

Backend Code Generation Impact

No impact

Desired Merge Strategy

  • Squash

Release Notes

Reviewer Checklist (only modified by reviewer)

  • Did you add the appropriate labels?
  • Did you mark the proper milestone (Bug fix: 3.3.x, [small] API extension: 3.4.x, API modification or big change: 3.5.0)?
  • Did you review?
  • Did you check whether all relevant Contributor checkboxes have been checked?
  • Did you mark as Please Merge?

@sequencer
Copy link
Member

Sorry I forgot that PR... Need I rework on that?

@ekiwi
Copy link
Contributor

ekiwi commented Jun 28, 2022

It might also make sense to move some more of the chisel execution tests to our integration-tests project which can make use of chiseltest and thus potentially more easily target different solvers. At a minimum it would load balance things a bit since the integration-test run in parallel to the regular tests.

Treadle will be used as the "defaultBackend" when the environment
variable CHISEL3_CI_USE_TREADLE is set. The intent is to set this
variable during CI for pre-merge CI (aka on pull requests).
@jackkoenig jackkoenig changed the title Speed up ci Use Treadle (on pull requests only) to speed up CI Sep 27, 2022
@jackkoenig jackkoenig marked this pull request as ready for review September 27, 2022 19:07
@jackkoenig jackkoenig added this to the 3.5.x milestone Sep 27, 2022
Copy link
Member

@seldridge seldridge left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Improving speed on CI is good.

I am generally nervous as to how this is going to work when pushing towards MFC. However, we can always switch back with no-cost. I would highly advised that no Treadle-specific features somehow creep into CI. As far as I know, no such features actually exist. 😉

@jackkoenig
Copy link
Contributor Author

I am generally nervous as to how this is going to work when pushing towards MFC. However, we can always switch back with no-cost.

Agreed, but nice to reap some benefits in the meantime!

I would highly advised that no Treadle-specific features somehow creep into CI. As far as I know, no such features actually exist.

Yeah good to keep in mind. For the time being, all tests that run with Treadle are run with Verilator during post-merge CI (aka on "push"). We should keep it that way.

@jackkoenig jackkoenig merged commit d1ed611 into master Sep 27, 2022
@jackkoenig jackkoenig deleted the speed-up-ci branch September 27, 2022 19:24
@mergify mergify bot added the Backported This PR has been backported label Sep 27, 2022
mergify bot added a commit that referenced this pull request Sep 27, 2022
…2748)

* Support using Treadle for 'sbt test'

Treadle will be used as the "defaultBackend" when the environment
variable CHISEL3_CI_USE_TREADLE is set. The intent is to set this
variable during CI for pre-merge CI (aka on pull requests).

(cherry picked from commit 7d39b7b)

* Use Treadle for CI on pull requests

(cherry picked from commit 8266067)

Co-authored-by: Jack Koenig <koenig@sifive.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Backported This PR has been backported
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants