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
A New Simulated Annealing Schedule #1205
Conversation
A couple of quick thoughts:
|
I did try Note that my schedule also adjusts |
Notes for March 12 discussion:
|
@kmurray @vaughnbetz Are there any scripts or tools that you use to execute and coordinate such tasks? I'm working on something to make this easier, but maybe something already exists that does most of what I need. |
My general approach has been to write shell scripts to print out the set of commands I want to run and feed them to GNU parallel. I then have scripts which parse and compare the metrics I care about. (As an aside you can have run_vtr_task print out the names of scripts to invoke with the However for general early experimentation (vs building regression tests), I've found the VTR task system a bit too inflexible, which is why I've generally rolled my own. |
7b945a3
to
b46fd7d
Compare
Points are labeled with Using the flag settings that worked well for some smaller designs ( The reason to test the I'd like to merge this as is, and then experiment more with different settings, but the |
@kmurray @vaughnbetz After fixing the |
I've found better parameters that perform well for the |
@kmurray @vaughnbetz Given the data showing no changes without flags, and improvements with flags (better wirelength, 7% better CPD in 66% time), would you please merge this? If not, please let me know what else is needed. Thanks! |
I've run the full https://colab.research.google.com/drive/11Cf5Mhaa4eu7KygkuOorxe_9OxlS7VqG |
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.
Comments are in
I'm running nightly tests with 32 PRNG seeds on Hydra. I'll post the results when I have them. |
Signed-off-by: Dustin DeWeese <dustin.deweese@gmail.com>
Signed-off-by: Dustin DeWeese <dustin.deweese@gmail.com>
Signed-off-by: Dustin DeWeese <dustin.deweese@gmail.com>
Signed-off-by: Dustin DeWeese <dustin.deweese@gmail.com>
Signed-off-by: Dusty DeWeese <dustin.deweese@gmail.com>
Signed-off-by: Dusty DeWeese <dustin.deweese@gmail.com>
Signed-off-by: Dustin DeWeese <dustin.deweese@gmail.com>
Signed-off-by: Dusty DeWeese <dustin.deweese@gmail.com>
854fbbb
to
519a503
Compare
I added a few review comments on places where I think function names or commenting should be tweaked. |
I've found that both tests pass with different seeds. I've rebased my changes; hopefully the tests will just pass. I'm also running the changes on Hydra with several seeds. After addressing @vaughnbetz's comments, this should be ready to merge. |
Great, thanks. |
Signed-off-by: Dusty DeWeese <dustin.deweese@gmail.com>
Here's my plan to make the tests pass:
Longer term, it would be nice to check for brittle tests by adding a CI test with random seeds. |
Signed-off-by: Dusty DeWeese <dustin.deweese@gmail.com>
Signed-off-by: Dusty DeWeese <dustin.deweese@gmail.com>
This PR is ready to be merged if there are no more comments. @vaughnbetz @mithro It seems like there are two "Travis CI - Pull Request" checks, and one of them is indefinitely blocked. Maybe this can just be ignored. |
Can't seem to merge it; it's waiting on the Travis CI pull request. Not sure what I should do to override that -- Dusty do you know how to override the duplicate check (or relaunch if it's easier)? |
@vaughnbetz Administrators can override required checks: https://docs.github.com/en/github/administering-a-repository/about-required-status-checks I'm not sure I can remove the stuck check. |
OK, I temporarily changed the settings on the master to allow administrators to override failed checks and merged this (useful to know about this in case we have to do it again!). Now I'll turn off the ability for administrators to override checks again, for safety. |
Description
This change adds a new schedule designed to simultaneously optimize for variables of varying sensitivity by continually sweeping a narrow temperature band at increasing rates.
Related Issue
#1203
Motivation and Context
This change is to increase the performance (quality/runtime) of the placer.
How Has This Been Tested?
I've run a QoR comparison using
vtr_reg_nightly/vtr_reg_qor_chain
:Types of changes
Checklist: