Performance

"Gregor Pavlin" <[email protected]> Mon, 22 Apr 2002 17:15:32 +0200
Newsgroups org.kernel.vger.linux-config
Message-ID <[email protected]>
Hi,


I'm trying to configure a small, embedded Linux system (Pentium III
1000MHz), that supports Java+X-Windows. In any case, the Java application
runs very slowly. Even worse, the same application runs on a Linux-system
with a (Pentium III 450MHz)twice as fast.

Initially I thought that it was the X-server configuration problem but now I
guess that it has to do with scheduling. Namely, when I checked the
processes with "top" on both systems and got interesting results:


System with (Pentium III 1000MHz):

Java stuff was assigned less than 30% of the CPU
X windows used more than 60% of the CPU resources.


System with (Pentium III 450MHz):

Java more than 80% of the CPU
X windows few % of the CPU resources.


I think that for the poor performance the X-server is not
responsible.Namely, on the (Pentium III 1000MHz)I can plug in  a harddrive
with a full Linux (SuSE)with the same XFree86 server as in the embedded
linux and the results are quite interesting. Namely, when I start the java
application, it is very slow. But then I close and open the KDE toolbar on
the desktop and after this action the Java just takes off. I checked this
process also with the "top"; before that action the 70% of the CPU was used
by the X-windows and 20% CPU by the Java application. However, as soon as I
hid and opened the KDE toolbar the ratio was Java 70%/Xwindows 10%. If the
problem were the Xserver, then this should not happen, on the same computer
using the same X-configuration, right?

In order to influence the CPU sharing on the "slow" computer (Pentium III
1000MHz) I tryed "nice --20 /$PATH/java-application". However, this doesn't
result in a significant improvement in performance.



Therefore I have the following questions:


1.) Can this be a scheduler's problem? Could this result from dynamic
scheduling associated with the interactive applications handling different
input devices?

2.) If so, are there any other ways I can influence the scheduler, e.g. the
policy without recompiling the Kernel?

3.) I'm using a read-only mounted file systems with about 10 MB RAM-disk and
no Swapping. Could these features be a problem in the context of threads and
X-Windows?




Thank you in advance.

Regards,
Gregor

----------------------------

Gregor Pavlin

email: [email protected]
Tel.:++43 316 244233
     ++43 316 289402
Fax.:++43 316 244243

Kalsdorferstr. 41,
A-8073, Feldkirchen bei Graz
Austria