Opened 14 years ago
Closed 13 years ago
#68 closed defect (wontfix)
Performance of Java 6 is not too good
Reported by: | Yoda_Java6 | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | Next |
Component: | general | Version: | 1.6.0-b19 Beta 2 |
Severity: | medium | Keywords: | |
Cc: |
Description
Java 6 still feels a quite a bit slow (in some areas).
To demonstrate it, I used Jeti/2, measuring time from starting it
and until GUI is up and roster and 4 MUCs (2 on local server 2 on
remote) are populated.
All tests done from same client PC, only the loaded Java
versions are different.
Jabber server Java 6 on eCS
Time to start Jeti/2 until roster and 4 MUC are filled
Java 1.41 | Java 1.42 | Java 1.50 | Java 1.60 |
| | | |
9 secs | 20 secs | 45 secs | 35 secs |
9 secs | 15 secs | 35 secs | 25 secs |
9 secs | 25 secs | 38 secs | 33 secs |
9 secs | 16 secs | 30 secs | 24 secs |
| | | |
1) 2) 3) 4)
(A lot more tests was actually done - these are the best results)
1) Java 1.41 loads in 9 secs in almost every test done.
2) Between 15-25 secs in mosts test. Not easy to see any specific
slow part.
3) Has seems to have some timing issues with sockets / DNS - hang
for a long time in same place.
4) Lots of tests were over 1 minut to load. Splash screen is
visible slowly drawn in parts. Communication with server seems
to take a long time.
There seems to be room for improvement - although it may be hard
to compete with our native 1.41
Change History (6)
comment:1 by , 14 years ago
Milestone: | GA → Enhanced |
---|
comment:2 by , 14 years ago
I was told, I might have been making an unfair comparison, because my PC's are all
SMP (2 cores or 2 CPUs). Because of current SMP problems, Java 6 is marked as single
processor app in the tests.
I think this is very fair, as this reflects the current state of all Javas.
However, I changed system to only run 1 core, just to give 'fair results' :-)
(this looks fine in mono fonts :-) )
Java 1.41 | Java 1.42 | Java 1.50 | Java 1.60 |
13-15 secs | 23-25 secs | 43-45 secs | 42-44 secs |
These are the best results after approx 10 tests of each java
Since java 5 is a hack - it is only here for fun.
facts seems to be:
Java 1.41 is 3 times faster than Java 6
Java 1.42 is 2 times faster than Java 6
... in single processor mode. That is IMHO a _LOT_ !
comment:3 by , 14 years ago
Thank you for doing these tests.
Java 1.5.0 is a hack not more than 1.4.2 -- both are pure Win32 binaries that use the very same Innotek runtime. So what your results show is that Java 1.5 itself is slower than Java 1.4.2 in at least this exact case you are testing. And since both Java 1.5 and 1.6 behave equally (while the former being bound to InnotekRT and the latter -- to Odin), I suppose it's not Odin who slows them down. Most lileky, they changed something inside Java within JDK 5.0 which gives different performance results (there were actually quite a lot of language and API changes AFAIR).
While it's theoretically possible that Odin can be optimized to work better with the new Java code, it looks like a big task and I see no real demand in it right now. This is just a startup test after all, not very important. We need more tests in various areas and modes. I doubt that the average difference (on a large number of applications and tasks running on various hardware) is that big, actually.
comment:4 by , 14 years ago
Milestone: | Enhanced → GA2 |
---|---|
Severity: | → medium |
comment:5 by , 13 years ago
Milestone: | GA2 → Next |
---|
comment:6 by , 13 years ago
Resolution: | → wontfix |
---|---|
Status: | new → closed |
i'm closing this ticket, as i don't see a real need to work on that. the reason ist, what most likely the slowness comes from java itself. even on windows newer java is much slower on loading.
According to the ticket author, 1.41 is the Java made by Golden Code (which doesn't use Odin). And the rest are Odin-based. So, it looks like in this particular area the thing that slows it down is Odin. This is kind of expected.
We will pay more attention to the speed optimization at some later time.