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

Refactor e2e & Joules Plugin #799

Merged
merged 32 commits into from
Oct 2, 2023
Merged

Refactor e2e & Joules Plugin #799

merged 32 commits into from
Oct 2, 2023

Conversation

nayiri-k
Copy link
Contributor

@nayiri-k nayiri-k commented Sep 27, 2023

This PR adds many more capabilities to the e2e tests, so that we can easily run flows for different designs/pdks/tools. The e2e/README summarizes how to run this flow. The PR also adds several features to the Cadence Joules power plugin, including writing database checkpoints between power steps, and supporting several reporting output formats (notably power profile instead of average power reporting).

Related PRs / Issues

Type of change:

  • Bug fix
  • New feature
  • Other enhancement

Impact:

  • Change to core Hammer
  • Change to a Hammer plugin
  • Other

Contributor Checklist:

  • Did you set master as the base branch?
  • Did you state the type-of-change/impact?
  • Did you delete any extraneous prints/debugging code?
  • (If applicable) Did you add documentation for the feature?
  • (If applicable) Did you update the poetry.lock file if you updated the requirements in pyproject.toml?
  • (If applicable) Did you add a unit test demonstrating the PR?
  • (If applicable) Did you run this through the e2e integration tests?
  • (If applicable) Did you update the submodules in e2e/ if this feature depends on updated plugins?

Copy link
Contributor

@harrisonliew harrisonliew left a comment

Choose a reason for hiding this comment

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

Looks great! Some global comments:
 

  1. With these updates to the README, I think we can directly include it into the readthedocs (instead of reference). See this folder for an example for how to symlink the Markdown file: https://github.com/ucb-bar/hammer/tree/master/doc/Technology.
  2. test seems like it should be called pass? Perhaps this directory should actually be using the nop tools and techs so that it can truly be used for testing w/o any plugin dependencies. Then the power ymls should apply to GCD instead.

e2e/README.md Show resolved Hide resolved
e2e/README.md Outdated Show resolved Hide resolved
e2e/README.md Show resolved Hide resolved
e2e/README.md Outdated Show resolved Hide resolved
e2e/configs-design/gcd/sim-par.yml Outdated Show resolved Hide resolved
e2e/configs-env/a-env.yml Show resolved Hide resolved
e2e/configs-design/gcd/asap7.yml Show resolved Hide resolved
e2e/configs-tool/or.yml Outdated Show resolved Hide resolved
hammer/config/defaults.yml Outdated Show resolved Hide resolved
hammer/power/joules/__init__.py Outdated Show resolved Hide resolved
hammer/power/joules/defaults.yml Outdated Show resolved Hide resolved
Copy link
Contributor

@dpgrubb13 dpgrubb13 left a comment

Choose a reason for hiding this comment

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

Just change the few nits. Looks great!

@harrisonliew harrisonliew added this pull request to the merge queue Oct 2, 2023
Merged via the queue into master with commit 1639d65 Oct 2, 2023
3 checks passed
@harrisonliew harrisonliew deleted the e2e branch October 2, 2023 18:02
@harrisonliew harrisonliew mentioned this pull request Oct 3, 2023
14 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants