Opened 9 years ago
Last modified 4 years ago
#3565 new defect
OMC does not tell the user what it is doing — at Version 1
Reported by: | Francesco Casella | Owned by: | |
---|---|---|---|
Priority: | critical | Milestone: | |
Component: | *unknown* | Version: | |
Keywords: | Cc: | andrea.bartolini@… |
Description (last modified by )
When compiling models of significant size (not necessarily very large), omc can take a few minutes (or possibly hours) to complete the process. It is often the case that nothing is printed to the console or log file for a long time, so one doesn't have a clue about what is happening, and can only stare at a blank window, wait indefinitely and hope for the best. This can be really frustrating from an end-user perspective.
Proposal:
- add a debug flag (e.g.
+d=logCompilationPhases
that prints a message on stdout every time a major phase in the compilation process is started (e.g. front-end, back-end, simcode, templates, C compilation), and that records the time spent for each phase once completed - add a debug flag (e.g.
+d=logCompilationPhasesDetailed
that prints a message on stdout every time a specific activity is started (e.g. for the back-end it could be every single optimization module, for the front-end and code generation I don't know) and record the time spent for each phase once completed - flush the stream after each message is written, so that it can actually be captured by the console or by OMEdit, displayed in a timely manner, and not get lost if the process needs to be killed because of timeout or too much memory allocation
All these messages could have some common header, so that OMEdit can filter them out and display them nicely in some window showing the progress in the compilation phase.