This table has been made on raring 2013-01-16 using the process described on https://wiki.ubuntu.com/Nexus7/MeasuringMemoryUsage ||'''Name'''||'''Command'''||'''USS'''||'''PSS'''||'''RSS'''||'''VSS'''||'''Notes'''||'''Next steps'''||'''Outcome'''|| ||Xorg||/usr/bin/X :0 -core -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch||41.6M||48.0M||55.6M||134.0M||even if big, seems ok; could research possible optimizations|||||| ||gvfsd-http||/usr/lib/gvfs/gvfsd-http --spawner :1.10 /org/gtk/gvfs/exec_spaw/2||44.2M||44.3M||47.3M||140.2M||Measured while running ''autopilot run unity'' with a peak at 62.9 for USS|||||| ||compiz||compiz||39.4M||40.3M||49.4M||168.9M||could review plugins we could disable|||||| ||lightdm||lightdm||25.5M||25.7M||28.4M||31.8M||large because it uses locked memory; 3MB if turned off; mterry is looking into optimizing||Selectively mlock, instead of mlockall||Now takes just 639k PSS, 2.7M RSS|| ||onboard||/usr/bin/python3 /usr/bin/onboard --not-show-in=GNOME||16.2M||17.4M||26.6M||80.8M||python...|||||| ||nautilus||nautilus -n||9.0M||14.0M||27.9M||129.0M||needed for the use case of files/folders on the desktop; check whether we want this use case; need to disable in “mobile” mode||* Disable nautilus background handling on devices images * Talk to design to determine if we need to display files on the desktop still and if yes, whether it should be the default for the Ubuntu Desktop||we should keep it for the desktop, users expect it on this UI format|| ||nm-applet||nm-applet||9.6M||10.8M||19.6M||89.8M||will be replaced by a new indicator so probably not worth optimizing||will be replaced by a proper indicator|||| ||unity-lens-phot||/usr/bin/python3 /usr/lib/unity-lens-photos/unity-lens-photos||8.4M||9.6M||16.5M||121.1M||needs to be rewritten from python to vala|||||| ||unity-lens-vide||/usr/bin/python /usr/lib/unity-lens-video/unity-lens-video||8.7M||9.4M||14.4M||75.3M||needs to be rewritten from python to vala|||||| ||signon-ui||/usr/bin/signon-ui||7.8M||8.3M||12.3M||65.4M||should split the UI and backend process||Didier to ping Alberto Mardegan to do the split|||| ||unity-scope-vid||/usr/bin/python /usr/lib/unity-scope-video-remote/unity-scope-video-remote||6.2M||7.0M||12.7M||103.5M||#ps is going to work on that|||||| ||unity-scope-gdr||/usr/bin/python3 /usr/lib/unity-lens-files/unity-scope-gdrive||5.6M||6.7M||12.7M||89.5M||needs to be rewritten from python to vala|||||| ||gnome-settings-||/usr/lib/gnome-settings-daemon/gnome-settings-daemon||5.5M||6.2M||14.0M||120.9M||need to review enabled plugins and features ||TBD|||| ||unity-panel-ser||/usr/lib/unity/unity-panel-service||4.7M||5.3M||13.0M||52.1M||has UI for all indicators; needs lots of libraries; separate process for isolation of indicator crashes to prevent crashing rest of unity shell ||Possible leak http://people.canonical.com/~j-lallement/N7/memusage/idle/unity-panel-ser.png|||| ||system-service-||/usr/bin/python /usr/lib/system-service/system-service-d||4.6M||5.1M||8.0M||14.2M||being replaced by systemd helpers (hostnamed, timedated etc.) https://blueprints.launchpad.net/ubuntu/+spec/desktop-r-ubuntu-system-services || Steve Langasek working on this|||| ||goa-daemon||/usr/lib/gnome-online-accounts/goa-daemon||4.6M||5.0M||9.5M||75.3M||should not be running; superseded by signon-ui (Ubuntu Online Accounts); evolution-data-server is configured with goa support for GNOME flavors; need to patch it not to start goa needlessly||Seb to file a bug/write the patch to avoid starting goa in Unity sessions or if there is no goa accounts||Laney - can we simply remove the recommends from g-c-c to goa so that it's not installed by default (and seed it in the gnome remix instead)?->done, fix the issue for the default install, the bug is still worth fixing though|| ||python||python ./smem-tabs -c name command uss pss rss vss -s pss -k -r||4.5M||4.7M||6.0M||9.9M||smem run to get these results|||||| ||notify-osd||/usr/lib/arm-linux-gnueabihf/notify-osd||3.8M||4.6M||12.2M||43.8M||will be merged in Unity on the long-term, but not being worked on right now; could patch notify-osd to exit when idle, but notifications are so common (messages, volume changes, wifi connections, screen brightness etc.) that it's not worth restarting each time|||||| ||gnome-screensav||/usr/bin/gnome-screensaver --no-daemon||2.2M||4.5M||12.1M||68.0M||should not be running all the time; will be replaced by lightdm on the long-run; for now, we could either stuff the idle watch in gsd (but we'd like to get rid of it) and then move it to an upstart user session job when that's available (slangasek: nothing in the upstart roadmap covers starting upstart jobs based on a desktop idle timeout, I don't see that this can be moved to upstart)||Séb to check it out and see how hard it is|||| ||gtk-window-deco||/usr/bin/gtk-window-decorator||3.7M||4.1M||9.2M||36.7M|||||||| ||bluetooth-apple||bluetooth-applet||3.2M||3.6M||10.0M||49.8M||moving to indicator-bluetooth; probably wont make a big difference in memory usage still|||||| ||unity-applicati||/usr/lib/arm-linux-gnueabihf/unity-lens-applications/unity-applications-daemon||2.5M||3.4M||8.2M||68.0M||only useful when using the dash; could consider shutting these down when not in use, but then they will be slow to startup when searching|||||| ||unity-shopping-||/usr/lib/arm-linux-gnueabihf/unity-lens-shopping/unity-shopping-daemon||3.0M||3.3M||7.3M||97.6M|||||||| ||update-notifier||update-notifier||2.7M||3.1M||9.7M||45.7M||would like to replace this with upstart; currently monitors restart required, apport crash files, end of package installation, and if an update hook needs running||Séb to research all the things that require update-notifier to be running to check whether we can use upstart for these. bdmurray - in addition to file monitoring update-notifier also checks for CDs with packages on them, monitors for devices requiring firmware, and checks for a new release of Ubuntu |||| ||pulseaudio||/usr/bin/pulseaudio --start --log-target=syslog||2.9M||3.0M||4.5M||95.6M||seems ok|||||| ||indicator-datet||/usr/lib/arm-linux-gnueabihf/indicator-datetime-service||2.2M||2.7M||6.9M||68.2M||seems ok|||||| ||bamfdaemon||/usr/lib/arm-linux-gnueabihf/bamf/bamfdaemon||2.4M||2.7M||8.1M||45.0M||functionality will be merged in Unity and this daemon will go away||ping Didier for status|||| ||telepathy-indic||telepathy-indicator||2.2M||2.6M||9.0M||66.4M||seems ok|||||| ||mousetweaks||mousetweaks||2.2M||2.5M||8.8M||45.1M||is it needed? (has the option to simulate right click when holding a left click|||||| ||zeitgeist-fts||/usr/lib/zeitgeist/zeitgeist-fts||1.8M||2.5M||6.6M||46.2M||needed for searching files; implementation is very memory hungry when doing searches; this could be due to xapian; would need to switch to e.g. Lucene...|||||| ||indicator-print||/usr/lib/indicator-printers/indicator-printers-service||2.2M||2.4M||8.1M||55.7M||seems ok|||||| ||gnome-session||gnome-session --session=ubuntu||2.2M||2.4M||7.9M||44.7M|||||||| ||dhclient||/sbin/dhclient -d -sf /usr/lib/NetworkManager/nm-dhcp-client.action -pf /run/sendsigs.omit.d/network-manager.dhclient-wlan0.pid -lf /var/lib/NetworkManager/dhclient-00cb0c82-6421-49e1-acc1-0fb84a35f1c3-wlan0.lease -cf /var/lib/NetworkManager/dhclient-wlan0.conf wlan0||2.2M||2.3M||2.7M||4.0M|||||||| ||evolution-sourc||/usr/lib/evolution/evolution-source-registry||1.6M||2.1M||5.4M||42.8M||probably unused; could look at removing that once we have support for Ubuntu online accounts||check upstream status of Ubuntu online accounts for EDS|||| ||gnome-fallback-||/usr/lib/gnome-settings-daemon/gnome-fallback-mount-helper||1.9M||2.1M||7.2M||52.9M||This is gone in 3.8; we should replace in a simpler way||Merge into Unity, down the road; not high priority right now|||| ||mission-control||/usr/lib/telepathy/mission-control-5||1.4M||2.1M||5.6M||38.9M||TBD|||||| ||unity-music-dae||/usr/lib/arm-linux-gnueabihf/unity-lens-music/unity-music-daemon||1.5M||2.1M||6.3M||84.0M||TBD|||||| ||polkit-gnome-au||/usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1||1.9M||2.0M||7.1M||35.0M||TBD|||||| ||NetworkManager||NetworkManager||1.8M||2.0M||4.6M||37.3M||might be superseded|||||| ||dbus-daemon||//bin/dbus-daemon --fork --print-pid 5 --print-address 7 --session||1.5M||1.6M||2.1M||4.4M||seems ok|||||| ||indicator-sound||/usr/lib/arm-linux-gnueabihf/indicator-sound-service||1.3M||1.5M||5.1M||119.6M||TBD|||||| ||upowerd||/usr/lib/upower/upowerd||1.3M||1.4M||3.8M||26.3M||cjwatson investigating memory leaks||||should be less leaky in 0.9.19-1ubuntu1|| ||zeitgeist-datah||zeitgeist-datahub||1.1M||1.4M||4.8M||50.7M||TBD|||||| ||unity-files-dae||/usr/lib/arm-linux-gnueabihf/unity-lens-files/unity-files-daemon||1.1M||1.3M||5.0M||82.7M||TBD|||||| ||gnome-keyring-d||/usr/bin/gnome-keyring-daemon --start --components=secrets||1.2M||1.3M||3.3M||60.1M||TBD|||||| ||console-kit-dae||/usr/sbin/console-kit-daemon --no-daemon||1.2M||1.3M||3.3M||31.6M||TBD|||||| ||polkitd||/usr/lib/policykit-1/polkitd --no-debug||1.2M||1.2M||3.3M||23.3M||TBD|||||| ||unity-gwibber-d||/usr/lib/gwibber/unity-gwibber-daemon||1.0M||1.2M||4.9M||93.0M||TBD|||||| ||cupsd||/usr/sbin/cupsd -F||1.1M||1.2M||2.5M||6.0M||TBD|||||| ||udisksd||/usr/lib/udisks2/udisksd --no-debug||1.1M||1.2M||3.2M||41.2M||TBD|||||| ||indicator-sessi||/usr/lib/indicator-session/indicator-session-service||1.1M||1.2M||4.1M||60.1M||TBD|||||| ||whoopsie||whoopsie||1.0M||1.2M||3.9M||21.6M||ev is on this|||||| ||gvfs-udisks2-vo||/usr/lib/gvfs/gvfs-udisks2-volume-monitor||1.0M||1.1M||3.4M||25.4M||TBD|||||| ||hud-service||/usr/lib/arm-linux-gnueabihf/hud-service||1000.0K||1.1M||3.6M||68.5M||TBD|||||| ||zeitgeist-daemo||/usr/bin/zeitgeist-daemon||1008.0K||1.1M||3.5M||41.7M||TBD|||||| ||dbus-daemon||dbus-daemon --system --fork||1012.0K||1.1M||1.7M||3.1M||TBD|||||| ||indicator-appli||/usr/lib/arm-linux-gnueabihf/indicator-application-service||972.0K||1022.0K||3.8M||49.4M||TBD|||||| ||gconfd-2||/usr/lib/arm-linux-gnueabihf/gconf/gconfd-2||972.0K||1011.0K||2.3M||6.9M||TBD|||||| ||colord||/usr/lib/arm-linux-gnueabihf/colord/colord||892.0K||999.0K||3.5M||33.2M||TBD|||||| ||wpa_supplicant||/sbin/wpa_supplicant -B -P /run/sendsigs.omit.d/wpasupplicant.pid -u -s -O /var/run/wpa_supplicant||888.0K||980.0K||1.9M||4.4M||TBD|||||| ||modem-manager||/usr/sbin/modem-manager||952.0K||974.0K||2.4M||5.8M||TBD|||||| ||indicator-messa||/usr/lib/indicator-messages/indicator-messages-service||924.0K||970.0K||3.7M||59.7M||TBD|||||| ||init||/sbin/init||920.0K||950.0K||1.7M||2.8M||TBD|||||| ||deja-dup-monito||/usr/lib/arm-linux-gnueabihf/deja-dup/deja-dup-monitor||840.0K||885.0K||3.2M||35.4M||TBD|||||| ||dbus-daemon||/bin/dbus-daemon --config-file=/etc/at-spi2/accessibility.conf --nofork --print-address 3||768.0K||836.0K||1.7M||2.9M||TBD|||||| ||rsyslogd||rsyslogd -c5||828.0K||833.0K||1.4M||29.6M||TBD|||||| ||sshd||sshd: ubuntu@pts/3 ||460.0K||819.0K||1.8M||9.3M||SSH session|||||| ||gvfsd-trash||/usr/lib/gvfs/gvfsd-trash --spawner :1.10 /org/gtk/gvfs/exec_spaw/1||672.0K||735.0K||2.9M||34.1M||TBD|||||| ||gvfsd-fuse||/usr/lib/gvfs//gvfsd-fuse -f /run/user/ubuntu/gvfs||676.0K||700.0K||2.7M||41.1M||TBD|||||| ||cups-browsed||/usr/sbin/cups-browsed||560.0K||696.0K||2.0M||5.4M||TBD|||||| ||gconf-helper||/usr/lib/pulseaudio/pulse/gconf-helper||564.0K||695.0K||2.3M||11.4M||Only used by paprefs, a universe package||Can be safely dropped, paprefs will pull it in||Dropped from desktop seed|| ||sshd||sshd: ubuntu [priv] ||208.0K||692.0K||2.9M||9.3M||SSH session|||||| ||sudo||sudo ./smem-tabs -c name command uss pss rss vss -s pss -k -r||660.0K||691.0K||1.6M||5.0M||smem run to get these results|||||| ||lightdm||lightdm --session-child 12 15||620.0K||690.0K||2.8M||14.9M||TBD|||||| ||accounts-daemon||/usr/lib/accountsservice/accounts-daemon||612.0K||647.0K||2.6M||22.6M||TBD|||||| ||sshd||sshd: ubuntu [priv] ||172.0K||632.0K||2.8M||8.6M||SSH session|||||| ||sshd||sshd: ubuntu [priv] ||172.0K||632.0K||2.8M||8.6M||SSH session|||||| ||gvfs-gphoto2-vo||/usr/lib/gvfs/gvfs-gphoto2-volume-monitor||592.0K||629.0K||2.4M||25.0M||TBD|||||| ||gvfs-afc-volume||/usr/lib/gvfs/gvfs-afc-volume-monitor||576.0K||623.0K||2.5M||35.3M||https://bugs.launchpad.net/bugs/656009|||||| ||bluetoothd||/usr/sbin/bluetoothd||612.0K||623.0K||1.5M||3.3M||TBD|||||| ||at-spi-bus-laun||/usr/lib/at-spi2-core/at-spi-bus-launcher||536.0K||587.0K||2.8M||41.7M||TBD|||||| ||bash||-bash||376.0K||573.0K||1.6M||4.1M||SSH session|||||| ||bash||-bash||360.0K||559.0K||1.6M||4.1M||SSH session|||||| ||gvfsd-burn||/usr/lib/gvfs/gvfsd-burn --spawner :1.10 /org/gtk/gvfs/exec_spaw/0||504.0K||557.0K||2.4M||33.6M||TBD|||||| ||bash||-bash||360.0K||551.0K||1.5M||4.1M||SSH session|||||| ||sshd||/usr/sbin/sshd -D||424.0K||550.0K||2.0M||4.9M||TBD|||||| ||at-spi2-registr||/usr/lib/at-spi2-core/at-spi2-registryd --use-gnome-session||512.0K||546.0K||2.6M||14.8M||TBD|||||| ||avahi-daemon||avahi-daemon: running [nexus7-carbide.local||428.0K||543.0K||1.4M||2.8M||TBD|||||| ||gvfsd||/usr/lib/gvfs/gvfsd||500.0K||540.0K||2.5M||24.9M||TBD|||||| ||sshd||sshd: ubuntu@pts/4 ||192.0K||518.0K||1.4M||8.6M||SSH session|||||| ||sshd||sshd: ubuntu@pts/1 ||180.0K||506.0K||1.4M||8.6M||SSH session|||||| ||dconf-service||/usr/lib/dconf/dconf-service||484.0K||501.0K||2.1M||31.3M||TBD|||||| ||dnsmasq||/usr/sbin/dnsmasq --no-resolv --keep-in-foreground --no-hosts --bind-interfaces --pid-file=/var/run/NetworkManager/dnsmasq.pid --listen-address=127.0.1.1 --conf-file=/var/run/NetworkManager/dnsmasq.conf --cache-size=0 --proxy-dnssec --enable-dbus=org.freedesktop.NetworkManager.dnsmasq --conf-dir=/etc/NetworkManager/dnsmasq.d||348.0K||356.0K||1.2M||4.1M||TBD|||||| ||udevd||/sbin/udevd --daemon||124.0K||351.0K||1.4M||2.5M||TBD|||||| ||udevd||/sbin/udevd --daemon||112.0K||337.0K||1.0M||2.5M||TBD|||||| ||udevd||/sbin/udevd --daemon||108.0K||335.0K||992.0K||2.5M||TBD|||||| ||upstart-udev-br||upstart-udev-bridge --daemon||252.0K||277.0K||728.0K||2.0M||TBD|||||| ||ssh-agent||/usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch gnome-session --session=ubuntu||264.0K||264.0K||340.0K||2.7M||TBD|||||| ||rtkit-daemon||/usr/lib/rtkit/rtkit-daemon||252.0K||259.0K||1020.0K||20.0M||TBD|||||| ||dbus-launch||dbus-launch --autolaunch=eb7b1a4a82848b34b311e5735097cfc1 --binary-syntax --close-stderr||240.0K||252.0K||656.0K||2.7M||TBD|||||| ||dbus-launch||/usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch gnome-session --session=ubuntu||240.0K||252.0K||656.0K||2.7M||TBD|||||| ||dbus-daemon||//bin/dbus-daemon --fork --print-pid 5 --print-address 7 --session||204.0K||229.0K||504.0K||2.3M||TBD|||||| ||cron||cron||208.0K||220.0K||768.0K||1.8M||TBD|||||| ||avahi-daemon||avahi-daemon: chroot helpe||104.0K||199.0K||500.0K||2.6M||TBD|||||| ||upstart-socket-||upstart-socket-bridge --daemon||168.0K||183.0K||412.0K||1.9M||TBD|||||| ||atd||atd||144.0K||145.0K||316.0K||1.7M||TBD|||||| ||getty||/sbin/getty -8 38400 tty6||120.0K||128.0K||712.0K||3.3M||TBD|||||| ||getty||/sbin/getty -8 38400 tty5||120.0K||128.0K||712.0K||3.3M||TBD|||||| ||getty||/sbin/getty -8 38400 tty4||120.0K||128.0K||712.0K||3.3M||TBD|||||| ||getty||/sbin/getty -8 38400 tty3||120.0K||128.0K||712.0K||3.3M||TBD|||||| ||getty||/sbin/getty -8 38400 tty2||120.0K||128.0K||712.0K||3.3M||TBD|||||| ||getty||/sbin/getty -8 38400 tty1||120.0K||128.0K||712.0K||3.3M||TBD|||||| ||getty||/sbin/getty 115200 ttyGS0||112.0K||118.0K||640.0K||1.6M||TBD|||||| ||sh||/bin/sh -e /proc/self/fd/9||72.0K||104.0K||448.0K||1.3M||TBD|||||| ||sh||/bin/sh -c /usr/bin/gtk-window-decorator||68.0K||100.0K||440.0K||1.3M||TBD|||||| ||cat||/bin/cat||92.0K||94.0K||460.0K||2.8M||TBD|||||| ||brcm_patchram_p||brcm_patchram_plus --enable_hci --scopcm=0,2,0,0,0,0,0,0,0,0 --baudrate 3000000 --use_baudrate_for_download --patchram /lib/firmware/bcm4330.hcd --no2bytes --enable_lpm --tosleep=50000 /dev/ttyHS2||72.0K||74.0K||396.0K||1.2M||TBD||||||