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

Silicon progress tracing #949

Closed
wants to merge 3 commits into from
Closed

Conversation

bobismijnnaam
Copy link
Contributor

This PR adds rudimentary silicon progress tracing in vercors by pretty printing all origins in the current trace maintained in symbexlogger. It uses the jAnsi library to control the terminal cursor, clear the screen, etc.

This proof of concept works but more work is needed to make it just as friendly as the current progress printer: there should be a flag to turn it off, it shouldn't be on when stdout is not a tty, it should not use placeholder strings like "XXX", etc. Not sure if it is useful enough to warrant the investment, but it certainly looks cool.

@bobismijnnaam bobismijnnaam marked this pull request as draft February 10, 2023 16:07
@pieter-bos
Copy link
Member

Let's talk about redoing this work in #978: it additionally refactors the progress system to support parallel tasks + multiline progress information. I've made a rudimentary implementation of this that pretty much just does .toString on the most recent MemberRecord, ExecuteRecord, {Produce|Consume}Record

@pieter-bos
Copy link
Member

I think it looks quite nice now, please let me know soon if you would like to keep the work in this branch around

@@ -518,6 +518,8 @@ case class SimplifyNestedQuantifiers[Pre <: Generation]() extends Rewriter[Pre]

case class Pointer[G](index: Expr[G], subnodes: Seq[Node[G]], array: Expr[G]) extends Subscript[G]

case class Sequence[G](index: Expr[G], subnodes: Seq[Node[G]], array: Expr[G]) extends Subscript[G]

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@niomaster This is the only change of interest, and it's not actually related to the intention of the silicon-progress-tracing branch. I think it's also in #950. So as far as I'm concerned this branch can be deleted.

@bobismijnnaam bobismijnnaam deleted the silicon-progress-tracing branch March 23, 2023 09:22
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.

2 participants