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

Rhombus memory usage grows when terminal window closed #533

Open
ellifteria opened this issue Aug 6, 2024 · 4 comments
Open

Rhombus memory usage grows when terminal window closed #533

ellifteria opened this issue Aug 6, 2024 · 4 comments

Comments

@ellifteria
Copy link

When I open a Rhombus REPL from the terminal and then close the terminal window without first killing the Rhombus REPL, the Racket process running the Rhombus REPL continuously grows to use more and more memory. This happens without the Rhombus REPL running any code (the process was running in a now-closed terminal window) and without DrRacket being open.

Machine: 2021 MacBook Pro 16-inch
Chip: Apple M1 Pro
Memory: 16 GB
OS: macOS Sonoma 14.5
Racket version: v8.14.0.2-2024-07-31-f82a96e5a9

Steps taken:

  1. Open a new terminal window
  2. racket -l rhombus -i
  3. Wait until > appears on a new line showing the REPL is ready to use
  4. Close the terminal window

Screenshots:

  • Taken at 14:28
Screenshot 2024-08-06 at 14 28 18
  • Taken at 14:42 (14 minutes later)
Screenshot 2024-08-06 at 14 42 34
  • Taken at 14:48 (6 more minutes later)
Screenshot 2024-08-06 at 14 46 06
@sorawee
Copy link
Contributor

sorawee commented Aug 6, 2024

Wondering if it's related to racket/racket#4964. Is the CPU usage also high?

@ellifteria
Copy link
Author

ellifteria commented Aug 6, 2024

I just walked through the steps I listed again and activity monitor is reporting high CPU usage also. (I tried to attach an image but GitHub didn't like that so I'll just say that it peaked at ~98% CPU usage but dropped down since then.)

@ellifteria
Copy link
Author

ellifteria commented Aug 6, 2024

I sampled the process using Activity Monitor and this is what I got:

https://gist.github.com/ellifteria/9cb9b50a371a3c75a953136cf16249a7

It looks like most of the call stack is the GC.

@mflatt
Copy link
Member

mflatt commented Aug 6, 2024

Are your terminal and shell the usual "Terminal.app" and "zsh"?

Assuming "Teminal.app", when you close the terminal window, does it ask about terminating processes?

Just to make sure, the -l rhombus part is needed, and you don't see this behavior with just racket, right?

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

No branches or pull requests

3 participants