-
Notifications
You must be signed in to change notification settings - Fork 607
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
utl: add Progress reporting + gui implementation #6792
base: master
Are you sure you want to change the base?
Conversation
Signed-off-by: Peter Gadfort <peter.gadfort@gmail.com>
Signed-off-by: Peter Gadfort <peter.gadfort@gmail.com>
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
Signed-off-by: Peter Gadfort <peter.gadfort@gmail.com>
Signed-off-by: Peter Gadfort <peter.gadfort@gmail.com>
Signed-off-by: Peter Gadfort <peter.gadfort@gmail.com>
Signed-off-by: Peter Gadfort <peter.gadfort@gmail.com>
Nice! Some thoughts on use-case and user-experience. I frequently run Ideally, I'd just launch the GUI and click "Skip" if something takes too long. "Abort" or "Stop" sounds scary. I don't know what to expect of the state of the system is if I click "stop" or "abort". Sounds like the GUI is telling me: "If you click on the button, then you asked for it and you deserve the result". However, if the GUI says "loading timing information" and there is a friendly "skip", then my expectation is that nothing scary will happen, it will be equivalent of |
@oharboe the messages can be adjusted, at the moment your usecase isn't supported anyways, because this will require some interface with opensta. The tools can end with a |
Signed-off-by: Peter Gadfort <peter.gadfort@gmail.com>
I tried it out and one thing I noticed is that when interrupting detailed_route the command still finishes with success and the remainder to the script continues on. I think if a command is interrupted we should stop further script execution as it is unlikely you want to subsequent commands to work on the incomplete result. |
Signed-off-by: Peter Gadfort <peter.gadfort@gmail.com>
Signed-off-by: Peter Gadfort <peter.gadfort@gmail.com>
@maliberty I enabled the run button to handle interrupts too, changed the end function to return true if an interrupt occurred and generate an error if there was an interrupt, and removed the status bar messages. |
Adds:
Progress
class to allow tools to announce their progress.ProgressReporter
individual class used to track progress of a specific tool/process (this allow us to have multiple reporters in parallel when/if that occurs).control+C
to get the interrupts and (3xcontrol+C
in less than 10 seconds will terminate openroad).Notes:
GUI:


Adds a progress bar to the bottom right corner (this can display the progress of a single or multiple reporterts)
For example:
Detailed view of reporters (this uses a set of reports that were interested for testing, but should not be included here):

GUI interrupt:

CLI:
Since there wasn't an easy tool to add reporting to, the logger is not getting exercised at the moment.