-
Notifications
You must be signed in to change notification settings - Fork 749
rmp: Genetic algorithm for slack tuning #8908
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: master
Are you sure you want to change the base?
rmp: Genetic algorithm for slack tuning #8908
Conversation
|
aes on what pdk? Are the slacks negative or positive? |
|
Tested on Slacks are positive, the higher the better. I'll adjust the description. |
|
@QuantamHD please assign a Google reviewer |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
clang-tidy made some suggestions
There were too many comments to post at once. Showing the first 25 out of 72. Check the log or trigger a new build to see more.
|
@calewis could you review this PR from antmicro? |
476e7f0 to
e2e28e4
Compare
Almost done, I just need to go through src/rmp/src/gia.cpp tomorrow. |
calewis
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A few things: I think a lot of the code could benefit from a sample function. std::sample is a bit problematic though because it uses an implementation defined std::uniform_int_distribution which can lead to different behavior for the same seed on different compilers. There might be a boost::sample, but I didn't see it in boost.random. So I suggest making a utl::sample using the absl::uniform_int_distribution.
I didn't review the TCL changes and I don't know much about what ABC is doing so I only reviewed gia.cpp for the code in the file and not for what it is trying to accomplish.
In general it's close to LTGM, but we'll need @maliberty to give it a once over as well. I might be missing some style things since this is my first OpenRoad review.
|
I'll review after your comments are addressed |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
clang-tidy made some suggestions
e2e28e4 to
46ed168
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
clang-tidy made some suggestions
77af6d8 to
f7540ca
Compare
|
clang-tidy review says "All clean, LGTM! 👍" |
1 similar comment
|
clang-tidy review says "All clean, LGTM! 👍" |
|
The only errors I'm getting right now are related to ABC imports. For instance, importing header such as @maliberty Should I avoid including this header altogether or ignore all problematical warnings with lint comments and compiler pragmas? I'm also running a benchmark for #8908 (comment) to decide which mutation approach will be best. Besides that, I believe this PR is ready for a review. |
calewis
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for fixing things
|
If you don't include if.h in ac_wrapper.h, what are "those functions" that it complains about? |
|
clang-tidy review says "All clean, LGTM! 👍" |
|
@maliberty The
I'd also removed call to
|
|
clang-tidy review says "All clean, LGTM! 👍" |
1 similar comment
|
clang-tidy review says "All clean, LGTM! 👍" |
|
@maliberty All tests pass now without warnings |
Co-authored-by: Krzysztof Bieganski <kbieganski@antmicro.com> Co-authored-by: Ryszard Rozak <rrozak@antmicro.com> Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
Co-authored-by: Krzysztof Bieganski <kbieganski@antmicro.com> Co-authored-by: Ryszard Rozak <rrozak@antmicro.com> Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
7eb5e78 to
9206880
Compare
|
clang-tidy review says "All clean, LGTM! 👍" |
New resynthesis strategy for
rmp.Alternative approach to #8437 for optimizing ABC timing.
Utilizes a genetic algorithm with the following tunable parameters:
Results from regression tests:
Marking as draft for a discussion, currently working on some minor implementation restructuring and algorithm parameter tuning.
Depends on #8889.