|/Artwork /ArtworkGuidelines /DefaultImageViewer /DefaultMailClient /DefaultMusicPlayer /NotifyOsd /XubuntuDocumentation /daily-upstream-builds-xfce /session-slim-down|
Slim down Xubuntu sessions for Karmic (xubuntu-karmic-session-slim-down)
Slim down the default Xubuntu desktop session to improve user experience
Launchpad entry: xubuntu-karmic-session-slim-down
Release target: Karmic
Field of the spec: Performance
Memory usage in the default Xubuntu desktop is notably greater than that of xfce desktops provided by other distributions such as Debian. This is largely in part to the extra features and services we run by default like hal, jockey, update manager, bluetooth manager, and network manager which all play a part in providing the easy to use desktop we aim to provide.
The goal is to reduce the memory footprint of the default Xubuntu session without compromising usability or functionality.
Xubuntu developers have been working hard to provide a snappier, more responsive desktop experience.
To improve performance on less powerful machines and ultimately provide a snappier and more responsive experience to users, we need to reduce to reduce the memory footprint of our default session to reduce swapping to disk on machines with limited amounts of memory.
The following sections are either implemented changes or possible changes to help achieve our "weight loss" goals. Each idea with have a description (one line describing what was or could be changed), status (which will indicate if the idea is implemented, pending implementation, needing investigation, or dismissed), memory impact statement (description of how our memory foot print will be reduced - we only count writable memory), login time impact statement (description of how the change impacts login time), and other details/discussions/etc. that are relevant.
If you're interested in helping with this specification, you can help by creating patches, verifying results, investigating ideas requiring further research, and proposing your own ideas accompanied with evidence to suggest it would be helpful and within the scope of the specification.
Description: Removed thunar-tpa (trash panel applet) from default panels.
Memory: This will reduce the footprint by roughly 4.5MiB on 32bit architectures and 7.1MiB on 64bit architectures.
Description: Rebuild xfce4 packages with ld's --as-needed argument to reduce unneeded dependencies. Status: Implemented
This was done by the Debian team in the xfce4 packages.
Description: Do not auto-start the python applet
Status: Pending Implementation
The system-config-printer applet is written in Python and runs all the time. This is suboptimal as there is no need for this.
See LP #323322 for further details.
Description: Investigate memory and performance impact of xubuntu-default-settings package.
Status: Needs Investigation
"I've noticed that just by removing the xubuntu customizations, themes, artwork and leaving it to the xfce default setup and look, the memory usage in my system came down a lot and is much faster." - mathiraj
"The package xubuntu-default-settings, which pulls in usplash and artwork, etc, increased memory usage by around 15MB." - DistroWatch Weekly, Issue 301, 4 May 2009
Several comments like the ones above indicate we need to take a look at xubuntu-default-settings and the impact its having on memory footprint and performance. Can we export our artwork differently to reduce memory usage and rendering time? Have we unintentionally enabled any settings that have a performance impact that we could disable?
Description: Do not create or keep in memory GTK widgets that are not needed.
Status: Needs Investigation
The xfce4-power-manager uses more memory than gnome-power-manager. I've ran xfce4-power-manager under valgrind and discovered it keeps a fair amount of gtk stuff in memory that it could free when not needed. For example, no need to have the tray icon kept in memory when it isn't visible.
If you're interested in helping, here are some great resources that can help you get started.
http://live.gnome.org/MemoryReduction/Tools - Tools that can help profile memory usage
http://bmaurer.blogspot.com/2006/05/track-down-your-first-leak.html - Blog post on tracking down your first memory leak.
http://wingolog.org/archives/2007/11/27/reducing-the-footprint-of-python-applications - Blog post on reducing the memory footprint of python applications.
http://live.gnome.org/MemoryReduction/Tasks - Tasks for hackers working on reducing memory footprint of Gnome