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

VsCoq 2 -- Very slow with 100% CPU usage #750

Open
julesjacobs opened this issue Mar 7, 2024 · 3 comments
Open

VsCoq 2 -- Very slow with 100% CPU usage #750

julesjacobs opened this issue Mar 7, 2024 · 3 comments
Labels
bug Something isn't working

Comments

@julesjacobs
Copy link

julesjacobs commented Mar 7, 2024

In the first few seconds of use it is fast, but then it slows down to a crawl. coqtop shows 100% cpu usage. Updating the proof state when moving the cursor takes several seconds to even minutes. I'm on OS X with vscoq language server 2.1.2, coq 8.18.0, and vscode Version: 1.87.1.

@rtetley rtetley added the bug Something isn't working label Mar 12, 2024
@rtetley
Copy link
Collaborator

rtetley commented Mar 12, 2024

Hi, thanks for reporting !
Could you give me more context ? Like what file (if you have an example file it would be perfect) you are using and what settings ? I assume continuous mode but are you using proof delegation ?

@julesjacobs
Copy link
Author

Yes I am using continuous mode. The slowdown does not happen in the mode where you manually advance the proof state.

I am not certain whether I'm using proof delegation. How do I determine that?
It happens on all large files I've tried. You may be able to replicate it on files from the Iris project https://gitlab.mpi-sws.org/iris/iris/

Let me know if you need more information!

@rtetley
Copy link
Collaborator

rtetley commented Mar 18, 2024

Ah okay ! To be honest I am not sure using continuous mode will ever be viable on a very large file. Each time you make an edit it will trigger a re-computation of most everything that comes after. Maybe in the future we will figure out a heuristic, or a strategy to make it work but I doubt it. At the moment I would recommend using manual mode on larger files !

For the delegation you can look for the VsCoq > Proof: Delegation setting.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants