[Bug 211416] Optimise kde performance on nfs
Dean Montogmery
dmonty at sd73.bc.ca
Wed Jun 2 22:26:12 BST 2010
https://bugs.kde.org/show_bug.cgi?id=211416
--- Comment #5 from Dean Montogmery <dmonty sd73 bc ca> 2010-06-02 23:26:07 ---
Another idea:
* have a kde option to use the "locate" database to build an "available file
list" in RAM. This way kde will be able to quickly lookup and access config
files, icons images, locales, libs, etc. instead of thrashing the nfs looking
for files that don't exist. Cron updates the locate database every night which
is good enough for me - kde can fall back to thrashing if locate database is
old.
=====
Below is a list of files with a count of "misses" that strace shows for the
kdm=>desktop login process. You can easily see how kde thrashes NFS thousands
of times looking for config files (kdeglobals, system.kdeglobals), icons
(*.png), locales (*.mo) etc...
grep -i 'no such file or directory' kdm* | awk -F '"' '{print $2}' | xargs -n1
basename | sort | uniq -c | sort -n
...
84 application-exit.png
84 configure.png
84 dialog-cancel.png
84 dialog-error.png
84 dialog-ok-apply.png
84 dialog-password.png
84 dialog-warning.png
84 document-export.png
84 document-multiple.png
84 document-new.png
84 document-open.png
84 document-print-preview.png
84 document-print.png
84 document-revert.png
84 document-save-as.png
84 document-save.png
84 drive-harddisk.png
84 edit-clear.png
84 edit-copy.png
84 edit-cut.png
84 edit-find-replace.png
84 edit-find.png
84 edit-paste.png
84 edit-redo.png
84 folder.png
84 fork.png
84 format-indent-less.png
84 format-indent-more.png
84 format-justify-center.png
84 format-justify-fill.png
84 format-justify-left.png
84 format-justify-right.png
84 format-text-bold.png
84 format-text-italic.png
84 format-text-strikethrough.png
84 format-text-underline.png
84 go-bottom.png
84 go-down.png
84 go-first.png
84 go-home.png
84 go-jump.png
84 go-last.png
84 go-top.png
84 go-up.png
84 list-add.png
84 media-floppy.png
84 media-optical.png
84 media-playback-pause.png
84 media-playback-start.png
84 media-playback-stop.png
84 media-record.png
84 media-seek-backward.png
84 media-seek-forward.png
84 media-skip-backward.png
84 media-skip-forward.png
84 network-connect.png
84 network-disconnect.png
84 network-server.png
84 preferences-desktop-font.png
84 process-stop.png
84 tools-check-spelling.png
84 unknown.png
84 view-fullscreen.png
84 view-restore.png
84 view-sort-ascending.png
84 view-sort-descending.png
84 zoom-fit-best.png
84 zoom-in.png
84 zoom-original.png
84 zoom-out.png
87 view-refresh.png
87 window-close.png
90 locale
94 socket
110 pixmaps
114 desktop_kdebase-workspace.js
114 desktop_kdebase-workspace.mo
117 hicolor
132 ld.so.preload
140 .krcdirs
144 lib
156 icons
165 Xcursor
165 Xcursor.so.1
165 Xinerama
165 Xinerama.so.1
165 Xrandr.so.2
165 i686
165 libXcursor
165 libXinerama
165 libXrandr
168 application-x-zerosize.png
168 color-picker.png
168 dialog-information.png
168 dialog-ok.png
168 document-properties.png
168 edit-undo.png
168 help-about.png
168 help-contents.png
169 plugins
173 kde-icon-cache.lock
187 kde4-configrc
187 libwacomcfg
187 wacomcfg.so.0
202 kdecalendarsystems.js
202 kdecalendarsystems.mo
202 kdeqt.js
202 kdeqt.mo
202 kio4.js
202 kio4.mo
202 libphonon.js
202 libphonon.mo
202 solid_qt.js
202 solid_qt.mo
217 Trolltech.conf
240 wacomcfg
242 plasma_theme_default.lock
246 kdelibs4.js
252 edit-delete.png
252 go-next.png
252 go-previous.png
276 oxygen
286 .
306 entry.desktop
306 usd.desktop
315 viewitem.svgz
330 kdelibs4.mo
330 libXfixes.so.1
330 libXfixes.so.2
363 dbus-1.so.3
363 libdbus-1
397 oxygenrc
495 sse2
503 Xrandr
825 libXi.so.1
957 cmov
1320 libXfixes
1650 libXi
1688 dbus-1
2104 kdeglobals
2805 ld.so.nohwcap
4074 system.kdeglobals
====
Here is an example of how kde keeps looking for a file that does not exist.
# grep -i 'no such file or directory' kdm* | awk -F '"' '{print $2}' | grep
system.kdeglobals | sort | uniq -c | sort -n
6 /usr/share/config/system.kdeglobals
22 /tmp/1498807313/.kde/share/config/system.kdeglobals
966
/usr/share/kubuntu-default-settings/kde4-profile/default/share/config/system.kdeglobals
1012 /home/d/dmonty/.kde/share/config/system.kdeglobals
1034 /etc/kde4/system.kdeglobals
1034 /usr/share/kde4/config/system.kdeglobals
I'm guessing using a locate database would also speed up non-nfs regular
systems that use hard disk.
--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the Unassigned-bugs
mailing list