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

Windows 11 performance issues (general session slowdown over time) #337

Open
suny-am opened this issue Mar 14, 2024 · 4 comments
Open

Windows 11 performance issues (general session slowdown over time) #337

suny-am opened this issue Mar 14, 2024 · 4 comments
Assignees
Labels
bug Something isn't working

Comments

@suny-am
Copy link

suny-am commented Mar 14, 2024

Version

0.6.6+ba21d409af4dce77f8be07f6a61cdb24cd19bb29

What happened?

Hello!

First of, thank you so much for this project! Coming from other languages with stable interactive language shells, I was really hurting for something similar working with C#. Suffice it to say, CSharpREPL is more than up to the task!

Unfortunately, I've been experiencing some performance issues on Windows 11. It's hard to replicate in an exact fashion, but seemingly, as one keeps a REPL session open, the performance seems to drop over time. I do not know if this is due to how heap objects are managed or soemthing else, but it really impacts productivity in the long run. Seemingly, just ending the session and starting a new one does not necessarily help either, so perhaps it's not to do with CSharpREPL, but I figured I'd ask just to be sure.

Perhaps there is a way to profile a session that I'm not aware of?

Once again, thank you so much for your efforts with this project!

@suny-am suny-am added the bug Something isn't working label Mar 14, 2024
@waf
Copy link
Owner

waf commented Mar 23, 2024

I'm surprised that ending the session and starting a new one (i.e. restarting the REPL) doesn't resolve the issue. We don't evaluate history entries or anything like that, so a new REPL should be a brand new session.

Could you check the memory or cpu usage next time you notice this?

It would make sense that memory increases over time -- we never "expire" entries in a REPL session. What are the rough specs of the machine you're running on?

@suny-am
Copy link
Author

suny-am commented Mar 26, 2024

Thank you for the response!

The computer is an older Dell Inspiron model, along with all what that entails; up to date with the latest regular updates of Windows 11, equipped with a AMD Ryzen 5 5500U and 16 GB RAM. Naturally, things like Docker and such do not play well with this setup, and I have not really worked with any other shells than this one as the projects I'm working on are all C# based, but I figured it should be adequate for basic use and has been performing fine in Neovim and VSCode.

Some further information of note (that I probably should have disclosed to begin with, but due to its sporadic nature I was a bit hesistant) is that I've had other performance issues as well on the computer that I'm testing this on, not obviously directly related to the one experienced in csharprepl, but similar enough that one could draw some conclusions as to the root causes. One such issue is the performance of the WSL2 integration within Visual Studio 2022, rendered nigh unusable due to it's sluggishness (literally minutes of stalling when performing tasks as simple as changing directories one level up or down), so this is another reason to believe something else is going on, but profiling it has not been easy. I vaguely recall there being a way to diagnose the actual root process for WSL, but do not currently know about the specifics; alas, that is not relevant here but is something I will try to look into more as well of course.

I will also try to be vigilant for the next time this occurs and verify system usage as well as I'm able to.

Thank you once again!

@douglasg14b
Copy link

I also have this problem, but on Windows 10.

  1. The longer the session, the slower it gets
  2. ending the session DOES resolve the problem
  3. The slowdown largely affects input. Typing and navigation becomes delayed or even "queued" (Press backspace 20x and let go and it will slowly delete over the next couple seconds)

Thankfully in my case ending the session resolves the problem, but it is definitely undesirable.

@yg-i
Copy link

yg-i commented May 23, 2024

I'm also experiencing this issue on Windows (and, like @douglasg14b ending the session does solve my problem as well).
This is the memory usage when it feels especially slow. I wonder if this is in the ballpark of normal usage?
image

By the way, thanks a ton for the great tool! It makes it exploring dotnet APIs so much easier.

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

4 participants