Comment 1 for bug 1085063

Revision history for this message
tanktarta (tanktarta) wrote :

One of the big focuses of 0.9.0 was fixing some long standing memory leaks. I believe I have found most of these now. To help me with this, the gnome15-debug-plugin now exists. This will display the current memory usage on screen.

With all plugins installed, it reports around 1.5GB of Virtual Memory, and between 100mb and 150mb "Resident". Firstly, the Virtual Memory total as far as I understand it doesn't actually mean that much RAM is being taken. (http://serverfault.com/questions/138427/top-what-does-virtual-memory-size-mean-linux-ubuntu). So, I am not entirely sure that much can be done about that, or that anything even needs to be done about it.

Secondly, the Resident memory. This IS the amount of memory that the python runtime is taking up, and to be honest, I don't think it's that bad. There is probably scope for improvement, but considering all the features that are available I think it is acceptable for a modern computer. Gnome15 replicates many more traditional tools but on the keyboards's LCD. In this respect it is like a mini desktop environment.

If you do want to improve this, just DISABLING the plugins is not always enough. It is better to uninstall the package that provides the plugin if possible. Many plugins are now in their own package. So if you don't need, say, the media player, completely remove gnome15-mediaplayer-plugin.

CPU usage will depend on a number of factors

* The driver. The slowest and most CPU intensive driver is the default G19 driver as this is written in Python and has to deal with a larger resolution screen as well. There is the possibility of some improvements, but I don't consider this high priority as the kernel driver works pretty well for the G19. The kernel drivers for all models are far far less CPU intensive, so if they work for you, you should use them. Efforts are underway to make these the default driver. The monochrome libg15 based driver DOES have the potential for some optimisation as some of the image processing is currently done using pure Python (slow in this case).

* The plugins you use. Most plugins will use very little CPU. They are often on timers and some may wake up as little as once an hour (or only in reaction to some desktop event). Some however may be running continously, the Impulse15 spectrum analyser for example, or the media player when media is being played.

* Painting and themes. The most intensive often occuring task will be the parsing of SVG theme files and turning them into bitmap images. The more complex the SVG file, the slower this will be. There are some options in the Tweak plugin that allow you to turn off some advanced stuff like SVG glow effects and scrolling which can be costly. Generally, this processing is required when a plugin screen changes in some way and must be redraw. Efforts are made in the plugins to do this as little as possible.

In summary, it would be helpful if you could point out any specific features that appear to cause high CPU usage/Memory, as well as the model of keyboard and driver you are using (the CPU you use would be helpful too).

If you are on older hardware, try uninstalling any plugin packages you don't use. Turn off some effects in the Tweak plugin and consider switching to the kernel driver if possible.