Martin
First off I don't use Akondi apps. Turns out half of them are not even installed on this machine.
Second a large number of Linux boxes including the one I am testing out KD5 on are NOT modern machines. This is a 7 year old Emachine with 2 gigs of RAM. Linux is frequently used on machines that no longer can run Windows. In particular by people who cannot afford to run out and buy a new computer because the old one is just icky and a few years old.
This is a mostly clean machine. Only things running are Clementine and Konsole.
As for the maps you requested.
PID Swap USS PSS RSS User Command
3401 25.2 M 133.8 M 137.6 M 146.7 M draciron /usr/bin/clementine
3293 37.8 M 61.3 M 64.8 M 75.4 M draciron /usr/bin/plasmashell
14585 11.5 M 12.0 M 15.8 M 25.9 M draciron /usr/bin/konsole
3274 16.3 M 10.5 M 12.5 M 19.8 M draciron kwin_x11
3405 9912.0 K 6648.0 K 8409.0 K 13.8 M draciron /usr/bin/kmix
3237 64.0 M 3756.0 K 4967.0 K 11.5 M draciron kded5 [kdeinit5]
3419 21.7 M 3324.0 K 3473.0 K 6936.0 K draciron /usr/bin/python3
3325 2260.0 K 2556.0 K 2866.0 K 6088.0 K draciron /usr/bin/pulseaudio
3286 29.9 M 1780.0 K 2196.0 K 7612.0 K draciron /usr/bin/krunner
3261 1096.0 K 1776.0 K 1931.0 K 4828.0 K draciron /usr/lib/telepathy/mission-control-5
3283 8900.0 K 1340.0 K 1703.0 K 5512.0 K draciron /usr/bin/baloo_file
3445 832.0 K 1232.0 K 1606.0 K 4384.0 K draciron /usr/bin/clementine-tagreader
3475 604.0 K 1080.0 K 1310.0 K 4412.0 K draciron /usr/lib/gvfs/gvfs-udisks2-volume-monitor
3279 2236.0 K 928.0 K 1303.0 K 5440.0 K draciron /usr/lib/x86_64-linux-gnu/libexec/kf5/kscreen_backend_launcher
14591 1684.0 K 1224.0 K 1302.0 K 3160.0 K draciron /bin/bash
3353 8328.0 K 1020.0 K 1216.0 K 5564.0 K draciron /usr/bin/korgac
3532 5396.0 K 892.0 K 1158.0 K 5452.0 K draciron /usr/lib/x86_64-linux-gnu/libexec/kdeconnectd
3257 5316.0 K 948.0 K 1128.0 K 5312.0 K draciron /usr/bin/kglobalaccel5
3174 380.0 K 884.0 K 1059.0 K 2924.0 K draciron /usr/bin/dbus-daemon
3251 6192.0 K 864.0 K 1033.0 K 5140.0 K draciron /usr/bin/ksmserver
3243 5740.0 K 756.0 K 925.0 K 4828.0 K draciron /usr/bin/kaccess
3302 5244.0 K 728.0 K 892.0 K 4748.0 K draciron /usr/bin/kactivitymanagerd
3235 3732.0 K 644.0 K 891.0 K 4820.0 K draciron klauncher [kdeinit5] --fd=9
3127 4784.0 K 696.0 K 864.0 K 4852.0 K draciron /usr/bin/kwalletd5
3306 5660.0 K 704.0 K 863.0 K 4976.0 K draciron /usr/lib/x86_64-linux-gnu/libexec/polkit-kde-authentication-agent-1
8166 4244.0 K 492.0 K 755.0 K 3900.0 K draciron kdeinit4: kded4 [kdeinit]
3314 2352.0 K 592.0 K 731.0 K 4376.0 K draciron /usr/bin/xembedsniproxy
3125 3176.0 K 424.0 K 691.0 K 3956.0 K draciron /usr/bin/kwalletd
8164 2140.0 K 376.0 K 585.0 K 3148.0 K draciron kdeinit4: klauncher [kdeinit] --fd=8
3230 376.0 K 244.0 K 344.0 K 2316.0 K draciron /usr/bin/dbus-daemon
21191 0.0 B 192.0 K 249.0 K 2088.0 K draciron smemstat
3232 528.0 K 200.0 K 234.0 K 2232.0 K draciron /usr/lib/at-spi2-core/at-spi2-registryd
3446 1460.0 K 4096.0 B 182.0 K 2760.0 K draciron /usr/bin/clementine-tagreader
3225 3088.0 K 100.0 K 176.0 K 2628.0 K draciron kdeinit5: Running...
6626 540.0 K 136.0 K 174.0 K 2360.0 K draciron /usr/lib/x86_64-linux-gnu/gconf/gconfd-2
3224 656.0 K 12.0 K 120.0 K 2748.0 K draciron /usr/lib/at-spi2-core/at-spi-bus-launcher
3497 712.0 K 8192.0 B 79.0 K 2360.0 K draciron /usr/lib/gvfs/gvfs-mtp-volume-monitor
3484 884.0 K 4096.0 B 78.0 K 2652.0 K draciron /usr/lib/gvfs/gvfs-gphoto2-volume-monitor
17541 2100.0 K 4096.0 B 59.0 K 1936.0 K draciron -bash
3437 2048.0 K 4096.0 B 47.0 K 2360.0 K draciron /usr/bin/kuiserver5
3250 468.0 K 4096.0 B 31.0 K 1920.0 K draciron kwrapper5
8161 2332.0 K 4096.0 B 27.0 K 1968.0 K draciron kdeinit4: kdeinit4 Running...
3491 1096.0 K 4096.0 B 27.0 K 1972.0 K draciron /usr/lib/gvfs/gvfs-afc-volume-monitor
3442 1344.0 K 4096.0 B 27.0 K 1952.0 K draciron /usr/lib/bluetooth/obexd
3114 828.0 K 4096.0 B 27.0 K 1832.0 K draciron /lib/systemd/systemd
3458 700.0 K 4096.0 B 24.0 K 1804.0 K draciron /usr/lib/gvfs/gvfsd
3502 528.0 K 4096.0 B 22.0 K 1748.0 K draciron /usr/lib/gvfs/gvfs-goa-volume-monitor
3267 476.0 K 4096.0 B 21.0 K 1676.0 K draciron /usr/lib/dconf/dconf-service
3173 464.0 K 4096.0 B 20.0 K 1440.0 K draciron /usr/bin/dbus-launch
3128 112.0 K 4096.0 B 19.0 K 1488.0 K draciron /bin/sh
3222 88.0 K 4096.0 B 11.0 K 644.0 K draciron /usr/lib/x86_64-linux-gnu/libexec/kf5/start_kdeinit
Total: 315.0 M 253.4 M 275.5 M 446.7 M
I finally got Akondi to start by running KOrganizer which didn't kick off everything but close enough. I'm not going to go re-enable Akondi and reboot to get the extra garbage that came with Kbuntu's default setup.
PID Swap USS PSS RSS User Command
21426 0.0 B 147.5 M 147.6 M 151.1 M draciron /usr/sbin/mysqld
3401 25.2 M 127.2 M 132.0 M 146.9 M draciron /usr/bin/clementine
3293 29.1 M 104.7 M 111.0 M 148.7 M draciron /usr/bin/plasmashell
21419 0.0 B 25.6 M 41.6 M 109.7 M draciron /usr/bin/kaddressbook
3283 5436.0 K 30.5 M 31.7 M 37.8 M draciron /usr/bin/baloo_file
3306 2692.0 K 16.5 M 27.2 M 67.9 M draciron /usr/lib/x86_64-linux-gnu/libexec/polkit-kde-authentication-agent-1
21470 0.0 B 18.2 M 22.3 M 39.4 M draciron /usr/bin/akonadi_baloo_indexer
21479 0.0 B 11.6 M 18.2 M 74.0 M draciron /usr/bin/akonadi_mailfilter_agent
21469 0.0 B 11.2 M 17.5 M 71.7 M draciron /usr/bin/akonadi_archivemail_agent
21484 0.0 B 10.9 M 16.7 M 70.6 M draciron /usr/bin/akonadi_sendlater_agent
21482 0.0 B 10.7 M 15.8 M 68.0 M draciron /usr/bin/akonadi_notes_agent
3274 15.5 M 11.4 M 12.8 M 26.5 M draciron kwin_x11
21474 0.0 B 8424.0 K 11.1 M 53.4 M draciron /usr/bin/akonadi_ical_resource
21473 0.0 B 7736.0 K 10.5 M 53.1 M draciron /usr/bin/akonadi_followupreminder_agent
21481 0.0 B 7504.0 K 10.1 M 52.0 M draciron /usr/bin/akonadi_newmailnotifier_agent
21477 0.0 B 7596.0 K 10179.0 K 49.9 M draciron /usr/bin/akonadi_maildispatcher_agent
21471 0.0 B 7544.0 K 10161.0 K 50.9 M draciron /usr/bin/akonadi_birthdays_resource
21425 0.0 B 9568.0 K 10155.0 K 21.5 M draciron akonadiserver
21475 0.0 B 7284.0 K 9725.0 K 49.1 M draciron /usr/bin/akonadi_maildir_resource
21468 0.0 B 7268.0 K 9691.0 K 48.8 M draciron /usr/bin/akonadi_akonotes_resource
21472 0.0 B 6976.0 K 9245.0 K 46.7 M draciron /usr/bin/akonadi_contacts_resource
21480 0.0 B 6960.0 K 9092.0 K 45.4 M draciron /usr/bin/akonadi_migration_agent
14585 11.4 M 6280.0 K 8865.0 K 27.2 M draciron /usr/bin/konsole
3405 9856.0 K 5616.0 K 7456.0 K 14.4 M draciron /usr/bin/kmix
21422 0.0 B 4080.0 K 5148.0 K 27.0 M draciron /usr/bin/akonadi_control
3237 63.8 M 4060.0 K 4586.0 K 13.2 M draciron kded5 [kdeinit5]
3353 7272.0 K 3492.0 K 4575.0 K 20.5 M draciron /usr/bin/korgac
3325 1740.0 K 3812.0 K 4113.0 K 8308.0 K draciron /usr/bin/pulseaudio
3419 21.6 M 3796.0 K 3883.0 K 7420.0 K draciron /usr/bin/python3
3286 29.7 M 2032.0 K 2236.0 K 8620.0 K draciron /usr/bin/krunner
14591 1208.0 K 1856.0 K 1921.0 K 4028.0 K draciron /bin/bash
3127 4416.0 K 1628.0 K 1919.0 K 10.2 M draciron /usr/bin/kwalletd5
3261 1040.0 K 1716.0 K 1878.0 K 5488.0 K draciron /usr/lib/telepathy/mission-control-5
3235 3364.0 K 1000.0 K 1656.0 K 9524.0 K draciron klauncher [kdeinit5] --fd=9
3445 832.0 K 1136.0 K 1455.0 K 4384.0 K draciron /usr/bin/clementine-tagreader
3251 5968.0 K 1284.0 K 1448.0 K 7408.0 K draciron /usr/bin/ksmserver
8166 3960.0 K 816.0 K 1417.0 K 5920.0 K draciron kdeinit4: kded4 [kdeinit]
3174 232.0 K 1252.0 K 1408.0 K 3600.0 K draciron /usr/bin/dbus-daemon
3257 5108.0 K 1260.0 K 1392.0 K 6684.0 K draciron /usr/bin/kglobalaccel5
3532 5248.0 K 1040.0 K 1179.0 K 6684.0 K draciron /usr/lib/x86_64-linux-gnu/libexec/kdeconnectd
3279 2140.0 K 968.0 K 1153.0 K 6388.0 K draciron /usr/lib/x86_64-linux-gnu/libexec/kf5/kscreen_backend_launcher
3475 604.0 K 1000.0 K 1149.0 K 4412.0 K draciron /usr/lib/gvfs/gvfs-udisks2-volume-monitor
3125 3020.0 K 588.0 K 1111.0 K 5624.0 K draciron /usr/bin/kwalletd
3243 5552.0 K 944.0 K 1072.0 K 6196.0 K draciron /usr/bin/kaccess
3302 5116.0 K 856.0 K 985.0 K 5972.0 K draciron /usr/bin/kactivitymanagerd
3314 2248.0 K 696.0 K 804.0 K 5820.0 K draciron /usr/bin/xembedsniproxy
3230 224.0 K 564.0 K 706.0 K 3072.0 K draciron /usr/bin/dbus-daemon
3437 1624.0 K 588.0 K 687.0 K 4796.0 K draciron /usr/bin/kuiserver5
3458 364.0 K 384.0 K 595.0 K 4044.0 K draciron /usr/lib/gvfs/gvfsd
6626 376.0 K 372.0 K 451.0 K 2888.0 K draciron /usr/lib/x86_64-linux-gnu/gconf/gconfd-2
8164 2128.0 K 284.0 K 441.0 K 3160.0 K draciron kdeinit4: klauncher [kdeinit] --fd=8
3224 344.0 K 332.0 K 409.0 K 3456.0 K draciron /usr/lib/at-spi2-core/at-spi-bus-launcher
3225 2892.0 K 224.0 K 356.0 K 3380.0 K draciron kdeinit5: Running...
3232 496.0 K 280.0 K 307.0 K 2376.0 K draciron /usr/lib/at-spi2-core/at-spi2-registryd
21680 0.0 B 196.0 K 219.0 K 1972.0 K draciron smemstat
3446 1460.0 K 4096.0 B 117.0 K 2760.0 K draciron /usr/bin/clementine-tagreader
17541 2100.0 K 4096.0 B 53.0 K 1936.0 K draciron -bash
3484 884.0 K 4096.0 B 52.0 K 2652.0 K draciron /usr/lib/gvfs/gvfs-gphoto2-volume-monitor
3497 712.0 K 4096.0 B 47.0 K 2360.0 K draciron /usr/lib/gvfs/gvfs-mtp-volume-monitor
3222 64.0 K 36.0 K 41.0 K 676.0 K draciron /usr/lib/x86_64-linux-gnu/libexec/kf5/start_kdeinit
3114 828.0 K 4096.0 B 24.0 K 1832.0 K draciron /lib/systemd/systemd
8161 2332.0 K 4096.0 B 23.0 K 1968.0 K draciron kdeinit4: kdeinit4 Running...
3250 468.0 K 4096.0 B 23.0 K 1920.0 K draciron kwrapper5
3491 1096.0 K 4096.0 B 22.0 K 1972.0 K draciron /usr/lib/gvfs/gvfs-afc-volume-monitor
3442 1344.0 K 4096.0 B 21.0 K 1952.0 K draciron /usr/lib/bluetooth/obexd
3502 528.0 K 4096.0 B 18.0 K 1748.0 K draciron /usr/lib/gvfs/gvfs-goa-volume-monitor
3267 476.0 K 4096.0 B 17.0 K 1676.0 K draciron /usr/lib/dconf/dconf-service
3173 464.0 K 4096.0 B 17.0 K 1440.0 K draciron /usr/bin/dbus-launch
3128 112.0 K 4096.0 B 16.0 K 1488.0 K draciron /bin/sh
Total: 292.3 M 654.3 M 758.7 M 1759.6 M
As you can see it chewed up 250 megs, an eighth of the machine's memory just starting up. MySQL alone was 150 megs. Which is odd since I don't remember MySQL having that heavy a footprint. Leave it sitting for a few hours and it is consuming 8 times that much RAM. Leave it sitting a couple days and unknown problems happen as I have to mash down the power button to get the machine to respond any more. Put it under a normal load and it just goes away for a long time.
After disabling Akondi it gets a little sluggish if I put a full load on it but is surprisingly fast for a 7 year old machine with 2 gigs. I have had zero reboots except for kernel updates. I think the last one was about a week ago. I put it under a load with no Akondi and it gets a little sluggish. I close some tabs & apps and it's back to normal operations.
When I put Kbuntu 18.04 on the 5 machines I'll be building next, one of them actually a modern machine but not mine. The modern machine belongs to an 80 year old relative, and one of the others going to my brother to try to get him into using Linux. The other 3 will be almost as old but will have 4 gigs of RAM. I will make sure to disable Akondi on all of those machines. I expect to have zero issues once I disable Akondi.
The reason the thread started was somebody asked how to disable Akondi. Which should be something you can do from the control panel. Instead it requires a bit of digging on Google and a few mins in a console window. This is 2018. A lot of Linux users today are not sysadmins and power users. There would be a lot more if Linux developers remembered this isn't the 90s. You cannot count on Linux users having ANY IT capability at all. Over the last several years I set up Linux machines for several elderly people who had zero IT knowledge, often replacing XP installations with Linux. KDE is easy to use out of the box. 10 minutes in Synaptics and I had all the apps these people would ever need installed. With auto updates turned on that machine was good to go until the distro went out of support or the hardware failed.
Linux really is the ideal OS for granny long as they are not using the latest bleeding edge devices or needing some Microsoft software to run on the thing. Linux is stable, secure and anybody who's used XP or 2000 can figure out KDE no problem. You are not getting a call every week to remove a virus, install a driver, do a restore from a checkpoint because the registry got trashed. The grand kids can play on it and not fill the machine with viruses and malware. Aside from Skype being hit or miss on Linux I've been able to take a number of obsolete machines and make them work for computer illiterate people using KBunutu. They had a very small learning curve to adapt and a cheat sheet with equiv apps took care of most of that. I also usually left instructions on how to burn a CD and access thumbdrives & cameras as well as how to back up the machine. The only time I've had to do support on any of these machines is when they find ways to mess up Open Office or Thunderbird or something like that and it's only once or twice a year. Half the time it's a 2 minute fix when they do.
So assuming a modern machine and a power user is not a good assumption with Linux anymore.
On Mon, Sep 3, 2018 at 3:20 AM Martin Steigerwald <martin@xxxxxxxxxxxx> wrote:
Hello Draciron.
Draciron Smith - 03.09.18, 08:15:
> The thread is about shutting down Akondi and why people want to do so.
Right.
> And it appears that a lot of people have to shut down Akondi because
> of performance reasons. Not just from this thread. A quick google
There are at least two use cases to separate:
1) Users who use KDEPIM and Akonadi. I agree that there are performance
issues for some of the *users* of Akonadi.
2) Users who do not use KDEPIM and Akonadi. I do not agree that an empty
and unused Akonadi does use a lot of resources by todays standards of
computing power.
The performance impact for the second group of users is quite low. A claim
which is easy to backup with numbers. I won´t take the time, cause my Akonadi
is not empty and I´d need to measure with a new user. But I invite you to
proof otherwise to me (using smemstat to measure). Unless you have 2 GiB
of RAM or less, I´d recommend not to bother with it. An empty and unused
Akonadi just sits there, doing nothing after startup. If it is is still
using up a lot of CPU even tough you do not use it, I consider that to be a
bug I´d recommend you report.
Okay, what gives, I take the time to debunk myths. I asked for numbers,
so here you have the backup of my claim:
Akonadi´s memory usage a few minutes after it has been started up:
% smemstat | head -1 ; smemstat | egrep "akonadi|mysql"
PID Swap USS PSS RSS D User Command
22020 0,0 B 58,1 M 60,2 M 66,9 M martin2 /usr/sbin/mysqld
22074 0,0 B 19,2 M 26,6 M 93,8 M martin2 /usr/bin/akonadi_mailfilter_agent
22064 0,0 B 18,8 M 26,0 M 91,4 M martin2 /usr/bin/akonadi_archivemail_agent
22082 0,0 B 18,7 M 25,5 M 89,8 M martin2 /usr/bin/akonadi_sendlater_agent
22008 0,0 B 13,3 M 15,0 M 42,1 M martin2 /usr/bin/akonadiserver
22070 0,0 B 6516,0 K 7878,0 K 50,0 M martin2 /usr/bin/akonadi_notes_agent
22079 0,0 B 6072,0 K 7589,0 K 47,7 M martin2 /usr/bin/akonadi_indexing_agent
22083 0,0 B 5572,0 K 6856,0 K 48,9 M martin2 /usr/bin/akonadi_newmailnotifier_agent
22167 0,0 B 5584,0 K 6807,0 K 46,5 M martin2 /usr/bin/akonadi_ical_resource
22065 0,0 B 5480,0 K 6418,0 K 45,8 M martin2 /usr/bin/akonadi_followupreminder_agent
22072 0,0 B 5368,0 K 6393,0 K 45,3 M martin2 /usr/bin/akonadi_maildispatcher_agent
22119 0,0 B 5100,0 K 5963,0 K 44,0 M martin2 /usr/bin/akonadi_birthdays_resource
22174 0,0 B 4812,0 K 5746,0 K 44,0 M martin2 /usr/bin/akonadi_akonotes_resource
22152 0,0 B 4832,0 K 5740,0 K 43,9 M martin2 /usr/bin/akonadi_maildir_resource
22161 0,0 B 4760,0 K 5625,0 K 43,4 M martin2 /usr/bin/akonadi_contacts_resource
22062 0,0 B 4784,0 K 5595,0 K 43,0 M martin2 /usr/bin/akonadi_migration_agent
22004 0,0 B 4868,0 K 5483,0 K 38,2 M martin2 /usr/bin/akonadi_control
A good part is mysql with 58,1 MiB Unique Set Size. Then you have those
Akonadi processes most using below 7 MiB each. Now tell me how this would
be going to be an issue for machines with 4 GiB RAM or more? It may not
even be that much of an issue for machines with 2 GiB RAM especially when
you switch to SQLite3.
Akonadi also shows how far off RSS values can be as those processes share
a lot of code in form of shared objects.
CPU time used since startup about 20 minutes ago (started 9:19,
Sandybridge i5 on ThinkPad T520):
% pidstat 0 | head -3 | tail +3 ; pidstat 0 | egrep "[a]konadi|[m]ysql" | grep 1001
09:38:54 UID PID %usr %system %guest %wait %CPU CPU Command
09:38:54 1001 22004 0,00 0,00 0,00 0,00 0,00 3 akonadi_control
09:38:54 1001 22008 0,00 0,00 0,00 0,00 0,00 2 akonadiserver
09:38:54 1001 22020 0,00 0,00 0,00 0,00 0,00 3 mysqld
09:38:54 1001 22062 0,00 0,00 0,00 0,00 0,00 1 akonadi_migrati
09:38:54 1001 22064 0,00 0,00 0,00 0,00 0,00 0 akonadi_archive
09:38:54 1001 22065 0,00 0,00 0,00 0,00 0,00 2 akonadi_followu
09:38:54 1001 22070 0,00 0,00 0,00 0,00 0,00 1 akonadi_notes_a
09:38:54 1001 22072 0,00 0,00 0,00 0,00 0,00 0 akonadi_maildis
09:38:54 1001 22074 0,00 0,00 0,00 0,00 0,00 0 akonadi_mailfil
09:38:54 1001 22079 0,00 0,00 0,00 0,00 0,00 3 akonadi_indexin
09:38:54 1001 22082 0,00 0,00 0,00 0,00 0,00 0 akonadi_sendlat
09:38:54 1001 22083 0,00 0,00 0,00 0,00 0,00 2 akonadi_newmail
09:38:54 1001 22119 0,00 0,00 0,00 0,00 0,00 1 akonadi_birthda
09:38:54 1001 22152 0,00 0,00 0,00 0,00 0,00 1 akonadi_maildir
09:38:54 1001 22161 0,00 0,00 0,00 0,00 0,00 3 akonadi_contact
09:38:54 1001 22167 0,00 0,00 0,00 0,00 0,00 3 akonadi_ical_re
09:38:54 1001 22174 0,00 0,00 0,00 0,00 0,00 2 akonadi_akonote
Almost none. ps aux reports 2 seconds for starting up mysqld.
Disk usage (should be since startup according to manpage of pidstat, but
that does not appear so, at least mysqld did create the database):
% pidstat -d 0 | head -3 | tail +3 ; pidstat 0 | egrep "[a]konadi|[m]ysql" | grep 1001
09:41:05 UID PID kB_rd/s kB_wr/s kB_ccwr/s iodelay Command
09:41:05 1001 22004 0,00 0,00 0,00 0,00 0,00 3 akonadi_control
09:41:05 1001 22008 0,00 0,00 0,00 0,00 0,00 0 akonadiserver
09:41:05 1001 22020 0,00 0,00 0,00 0,00 0,00 3 mysqld
09:41:05 1001 22062 0,00 0,00 0,00 0,00 0,00 1 akonadi_migrati
09:41:05 1001 22064 0,00 0,00 0,00 0,00 0,00 0 akonadi_archive
09:41:05 1001 22065 0,00 0,00 0,00 0,00 0,00 0 akonadi_followu
09:41:05 1001 22070 0,00 0,00 0,00 0,00 0,00 1 akonadi_notes_a
09:41:05 1001 22072 0,00 0,00 0,00 0,00 0,00 3 akonadi_maildis
09:41:05 1001 22074 0,00 0,00 0,00 0,00 0,00 0 akonadi_mailfil
09:41:05 1001 22079 0,00 0,00 0,00 0,00 0,00 3 akonadi_indexin
09:41:05 1001 22082 0,00 0,00 0,00 0,00 0,00 0 akonadi_sendlat
09:41:05 1001 22083 0,00 0,00 0,00 0,00 0,00 2 akonadi_newmail
09:41:05 1001 22119 0,00 0,00 0,00 0,00 0,00 1 akonadi_birthda
09:41:05 1001 22152 0,00 0,00 0,00 0,00 0,00 1 akonadi_maildir
09:41:05 1001 22161 0,00 0,00 0,00 0,00 0,00 3 akonadi_contact
09:41:05 1001 22167 0,00 0,00 0,00 0,00 0,00 3 akonadi_ical_re
09:41:05 1001 22174 0,00 0,00 0,00 0,00 0,00 2 akonadi_akonote
Disk capacity usage:
% du -sh ~/.local/share/akonadi
143M /home/martin2/.local/share/akonadi
+ some configuration and resource change status files.
You may switch to SQLite by just removing MySQL and PostgreSQL backends.
Or with a configuration option:
[%General]
Driver=QSQLITE
Memory usage:
% smemstat | head -1 ; smemstat | egrep "akonadi|mysql"
PID Swap USS PSS RSS D User Command
23667 0,0 B 19,2 M 26,7 M 93,8 M martin2 /usr/bin/akonadi_mailfilter_agent
23657 0,0 B 18,6 M 25,8 M 90,8 M martin2 /usr/bin/akonadi_archivemail_agent
23673 0,0 B 18,8 M 25,4 M 89,0 M martin2 /usr/bin/akonadi_sendlater_agent
23647 0,0 B 10,5 M 11,7 M 37,9 M martin2 /usr/bin/akonadiserver
23672 0,0 B 6488,0 K 7862,0 K 50,0 M martin2 /usr/bin/akonadi_notes_agent
23662 0,0 B 6012,0 K 7425,0 K 47,1 M martin2 /usr/bin/akonadi_indexing_agent
23670 0,0 B 5364,0 K 6621,0 K 48,4 M martin2 /usr/bin/akonadi_newmailnotifier_agent
23660 0,0 B 5440,0 K 6436,0 K 46,0 M martin2 /usr/bin/akonadi_followupreminder_agent
23665 0,0 B 5364,0 K 6358,0 K 44,9 M martin2 /usr/bin/akonadi_maildispatcher_agent
23661 0,0 B 5136,0 K 6255,0 K 45,1 M martin2 /usr/bin/akonadi_ical_resource
23658 0,0 B 4948,0 K 5814,0 K 44,1 M martin2 /usr/bin/akonadi_birthdays_resource
23664 0,0 B 4792,0 K 5663,0 K 43,6 M martin2 /usr/bin/akonadi_maildir_resource
23656 0,0 B 4760,0 K 5659,0 K 43,7 M martin2 /usr/bin/akonadi_akonotes_resource
23668 0,0 B 4752,0 K 5553,0 K 42,4 M martin2 /usr/bin/akonadi_migration_agent
23659 0,0 B 4656,0 K 5517,0 K 42,7 M martin2 /usr/bin/akonadi_contacts_resource
23644 0,0 B 4840,0 K 5462,0 K 38,0 M martin2 /usr/bin/akonadi_control
Disk capacity usage:
% du -sh ~/.local/share/akonadi
964K /home/martin2/.local/share/akonadi
% ls -lh ~/.local/share/akonadi/akonadi.db
-rw-r--r-- 1 martin2 martin2 4,0K Sep 3 09:45 /home/martin2/.local/share/akonadi/akonadi.db
+ some configuration and resource change status files.
I skip CPU usage and disk utilization measurements.
But for CPU time on startup:
ps aux reports a TIME of 0:00 for all processes. So none of the Akonadi
processes take more than one second to startup.
So can we be done about discussion of performance impact of empty and
unused Akonadi server already? Especially when switching to SQLite
backend discussing the performance impact of an empty and unused
is much ado about nothing¹. There is really (almost) nothing to see here.
[1] https://en.wikipedia.org/wiki/Much_Ado_About_Nothing
Even with just 2 GiB of RAM the Linux kernel will swap out the memory
used by Akonadi if need be and mostly be done with it.
If you still bother, an easy way to disable Akonadi might be to move
/usr/share/dbus-1/services/org.freedesktop.Akonadi.Control.service
out of the way, or probably "akonadictl", or well whatever starts Akonadi
once a widget or applications accesses it. I do not know for sure, as
I never bothered with disabling Akonadi. But with some trial and error
this should be easy enough to find.
Would it be nice to be able to disable it with a configuration option in
Systemsettings? Sure. Will KDEPIM developers implement this: Probably
not from what I heard so far. But you can open a bug report and aim at
providing a good reason for such a configuration option. In my oppinion:
if the user does not use something, it would be nice to be able to skip
even starting it. I totally agree with that one.
But as I am not one of those users who do not use Akonadi, so it is
certainly not my case to do the convicing work :)
> search turns up hundreds of people asking the same question on Linux
> and technical forums. Akondi has serious performance issues.
Akonadi has dissatisfied users. Not nearly all of the reports you find
on the net are related to performance issues. As not nearly all reports
of your favorite filesystem + "corruption" reveal real stability issues
with filesystems. And it is still good to separate the use cases: How many
reports did you find about the performance impact of an empty and unused
Akonadi that were actually based on *facts*? I *never* saw one. Not even
*one*.
Akonadi has known performance issues, especially for heavy users of KDEPIM
with a lot of mails.
Although there is a major step forward with KDEPIM and Akonadi 18.08,
as Daniel Vrátil fixed one of the known major performance issues in Akonadi
by implementing notification payloads:
https://www.dvratil.cz/2018/04/my-kde-pim-update/
What I still do is to kill akonadi_indexing_agent from time to time – with
KDEPIM and Akonadi 17.12 however still as Sandro is preparing the 18.08
update for Debian. The performance issues it creates are also known to the
developers, including the reason for it. This is one of the next items that
Daniel Vrátil has on his todo list. But akonadi_indexing_agent only creates
those performance issues when there is actually a lot to index. I don´t know
how it will behave with 18.08 yet, I may have to wait till Daniel rewrote
the indexing to put it into the resources themselves for it to improve
substantially.
> If you are a developer I'll be happy to take screen shots Htop and the
> way Akondi crushes a system's memory. […]
htop is not a suitable tool to measure unless is has PSS support meanwhile.
I explained this all in my post about facts about memory usage.
Although I – with a lot of help – fixed a severe performance issue with
local maildir support in Akonadi and provided initial CRM114 spam filtering
wizard configuration developing on Akonadi is not what I do regularly. I
helped to move things forward with performance related issues in Akonadi
some time ago.
The major performance bottle necks are known to KDEPIM developers, but
are challenging to fix as they need good knowledge of how Akonadi work
and are major tasks. We had it all before… countless of times in
kdepim-users. There is a thread I started called something like "review of
database aspect in Akonadi" on kde-pim mailing list that gives a summary
of the major issues. I won´t take the time to repeat it here again.
For people who are really into improving matters with Akonadi and KDEPIM,
read:
KDE PIM Junior Jobs are opened!
https://www.dvratil.cz/2018/08/kde-pim-junior-jobs-are-opened/
Thanks,
--
Martin