[linux-mm-cc] compcache on LTSP
nai.xia at gmail.com
nai.xia at gmail.com
Mon May 5 04:27:47 EDT 2008
Compcache on The Linux Terminal Server Project
Nai Xia (nai.xia at gmail.com)
1. Introduction of LTSP (from www.ltsp.org)
The Linux Terminal Server Project adds thin-client support to Linux servers.
LTSP is a flexible, cost effective solution that is empowering schools,
businesses, and organizations all over the world to easily install and deploy
desktop workstations. A growing number of Linux distributions include LTSP
out-of-the-box.
Shiny new thin-clients and legacy PCs alike can be used to browse the Web, send
e-mail, create documents, and run other desktop applications. LTSP not only
improves Total Cost of Ownership (TCO), but more importantly, provides
increased value over traditional computing solutions.
Many of the success stories of LTSP(*) are solutions deployed at schools,
institutes, libraries, etc. One of the mostly required features in these
environments, is the reading of the Adobe Portable Document Format. So our
experiment is based on a very popular .pdf reading software --- kpdf in a
typical LTSP setup. The results show compcache can bring significant improvements
to this kind of application.
(*)http://wiki.ltsp.org/twiki/bin/view/Ltsp/SuccessStories
2. Environment
Hardware:
Server: Pentium 4 2.0GHZ, IDE disk 7200rpm, 1G RAM
ThinClient: Old T42 IBM thinkpad, Pentium M 1.6GHZ,
124M RAM(limited with kernel cmdline, to emulate a legacy PC)
network: 1Gigabit network
Software:
Server host: Debian sid,updated at April,23th
LTSP(ltsp-server-standalone) + DHCP + NFS rootfs
Thin client: Debian etch with KDE, diskless( without swap )
3. Experiments
A group of pdf files were randomly selected, each of them is a technical paper and of
similar size (1.1M~1.2M). The experiments are to evaluate the user experience
reading these papers with V.S. without compcache loaded. We symbolically named
them as A.pdf,B.pdf....Z.pdf for ease of presentation.
a) Pdf reading responsiveness
When reading a pdf file with kpdf, if the system is under pressure (CPU or
memory), a user can feel obvious slowdown in paging down and paging up in a
document. Thus we define the pdf reading responsiveness as the time(seconds) for paging from
the 1st page to the 50th page (go back and forth to take the mean value) in the same
pdf file.
After the thin client booted up, the KDE was started and two pdf files(A.pdf,
B.pdf) were loaded, which ate most of the 124M RAM. We tested the value and closed
these two pdf files. Then we loaded the compcache with swapsize of 64M and did
the same test again. The results are as follows:
------------------------------------------------------------------
original with compcache(64M)
A.pdf 10s 2.5s
B.pdf 412s 4s
------------------------------------------------------------------
Just as we can expect, without compcache, the system slowed down significantly when
approaching the memory up limit, which actually makes the system unusable if one wants
to read the two pdf files side by side. While with the help of compcache, it
quite smooth to read these two pdf file concurrently.
b) Desktop responsiveness
Similar slowdown can be observed in upper case if one wants to switch between
the two kpdf programs from time to time. We believe it is related to the X
window system and the window manager.We call the average swith time between two
programs "the desktop responsiveness". It's also important, for if someone is
reading one book and take another as a reference, low desktop responsiveness
will soon bored him out.
In the same experiment as in a), we observed the desktop responsiveness in the original
ltsp client was 10 seconds,while after the compcache was loaded, the swith time was
hardly observable!
c) Load capacity
Man is a lazy animal, if one opens a pdf file and feel he MAY take a look at it later
on, he trends to keep it open for hours :). So the number of pdf files we can
keep open in our system is never large enough. We here show how compcache can
improve on this situation.
As we have seen, the original system can successfully load two pdf files, but
not more, further loading triggered the OOM killer. That means the loading
capacity of the original is 2. The compcache can be installed as different swap
size, so we ranged the swap size from 32768kbytes to 196608kbytes to see the
relation between swap size and load capacity.
--------------------------------------------------------------------------
swap size(kbytes) load capacity(num. of pdf files)
(none) 2
32768 4
65536 6
98304 9
131072 11
163840 11
196608 11
--------------------------------------------------------------------------
We can see that in the best case, compcache increased the load capacity by 450%.
5. Conclusion
LTSP is a great invention for large number of legacy or resource-limited PCs,
however, users may suffer from the limited memory using these systems when
the up limit is approached. More money can be spent adding on more RAM to
improve the user experience, the feature-rich KDE desktop can be cutted off to
lend more memory to other programs. But, with compcache, who bothers ! :)
More information about the linux-mm-cc
mailing list