Comments (9)
I have the same versions for all applications as yourself, and I do indeed witness the memory leak as you describe. I do also feel that the rate at which the memory increases with this extension enabled is significantly higher, however it is indeed possible that this is caused by an issue with gnome-shell itself. I will notify if any changes occur with the latest version released on the Arch repositories, to which I have yet to update.
from gnome-shell-extension-system-monitor.
Thanks for the update. I've already upgraded Gnome Shell, so I will re-enable the extension and test.
from gnome-shell-extension-system-monitor.
As Gnome developers said, the Gnome Shell is single threaded, so you can't tell the memory usage of individual extensions externally (e.g. by top
command).
The extension reads various files to compute the resource statistics. Each file has an object in the code, but it is re-used for each read operations. Previously there was a bug when a new file object is created before read operations.
from gnome-shell-extension-system-monitor.
Thank you for the information. To clarify, when you refer to a bug, is this in the extension, or in Gnome Shell itself?
from gnome-shell-extension-system-monitor.
There was a fault in the extension.
I started to watch the gnome-shell
process and I see that the used amount of RAM increases over time. So it looks like you are right about the memory leak.
I will try to figure out what's wrong this week.
from gnome-shell-extension-system-monitor.
@CubeTheThird Can you tell which version of Gnome do you have?
I did some experiment to find memory leaks in the extension code, but it seems like JS code itself is leaking memory. I replaced the statistic collecting part of the code by returning fake data, but the increasing memory usage still occurred. I haven't spotted any obvious bug in this simplified code.
However I accidentally spotted another memory leak. Here is how my tests scenario looked like:
- Environment:
Gnome Shell version: 3.26.2
GJS version: 1.50.2
Gnome System Monitor version: 3.26.0+1+g97b9578d
Gnome Tweak Tool version: 3.26.3 - Setup: I turned off all the extensions, restarted Gnome Shell. After that started the System Monitor application (which comes with Gnome) and filtered the processes for gnome-shell. Finally I run Tweak Tool.
- Test: Switch between Network Monitor's window and Tweak Tool's window by pressing Alt + Tab multiple times.
- Result: The memory usage of the gnome-shell process incremented by 0.5-1 MB after each cycle.
The conslusion from this is that there must be a memory leak in Gnome Shell itself (or other components), since I managed to increase memory by using two Gnome made application without any extensions enabled. Similar bug is also reported upstream.
So I'm afraid that at the moment I can't do too much about fixing it.
from gnome-shell-extension-system-monitor.
There is a discussion going on about a Gnome Shell related bug. So far it confirmed my theory of something wrong with Javascript garbage collector.
from gnome-shell-extension-system-monitor.
Memory usage has been improved since Gnome Shell 3.30.
@CubeTheThird Could you upgrade Gnome to 3.30.0 or later and do some testing to see if you still experience this problem? (As for me the gnome-shell process consumes around 130 MB of RAM after half a day of usage, which is very good.)
from gnome-shell-extension-system-monitor.
While I haven't been taking detailed notes, there does still appear to be an increase in memory footprint. What I have also noticed though, and I am not familiar enough with the environment to know if it is coincidence, is that the memory usage seemed to have also increased with the extension disabled, though not uninstalled.
from gnome-shell-extension-system-monitor.
Related Issues (20)
- Can't remove HOT 1
- Too many Icons
- Relase 18: TypeError: GObject.registerClass() used with invalid base class (is PopupBaseMenuItem) HOT 7
- Gnome 3.36 support HOT 4
- JS ERROR: Extension [email protected]: TypeError: Array.slice is not a function
- interferes with display driver HOT 1
- statvfs journal spam HOT 1
- Gnome 3.40 support HOT 3
- Put a color to the whole icon, not part of it HOT 3
- Do not match GNOME System Monitor HOT 2
- [BUG]: Endless adding icons HOT 2
- GNOME 41 support HOT 2
- GNOME 42 support HOT 3
- gpu statistics
- Gnome Shell Crash HOT 5
- Gnome Shell 43 support HOT 3
- Met errors when installing on Ubuntu 22.04.1 LTS HOT 1
- regular hard lockups in display HOT 6
- GNOME 45 support HOT 3
- The popover stretches limitless outside the screen HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gnome-shell-extension-system-monitor.