Skip to main content

Why jboss5.1 is so slow on solaris 10?

18 replies [Last post]
xiangyingbing
Offline
Joined: 2010-04-01
Points: 0

Why jboss5.1 is so slow on solaris 10?

I read many related articles, but none of them give a solution. Those artices are:
http://community.jboss.org/message/210915#210915
10 minutes is used to start the cluster.
http://community.jboss.org/message/247199#247199
JBOSS really slow on Solaris 64 bit system

my jboss's JAVA_OPTS:

JAVA_OPTS="-Dprogram.name=run.sh -d64 -server -Xms1024m -Xmx1024m -XX:MaxPermSize=512m -XX:+UseLargePages -XX:+UseParallelGC -XX:SurvivorRatio=16 -XX:ThreadStackSize=512k -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000"

JDK:
1.6_18

I run jboss with this command:
/usr/bin/priocntl -e -c FX /opt/yxiang_soft/jboss/jboss-5.1.0.GAjdk6/bin/run.sh -c all -b 10.80.4.231

log:

31sh-3.00# /usr/bin/priocntl -e -c FX /opt/yxiang_soft/jboss/jboss-5.1.0.GAjdk6/bin/run.sh -c all -b 10.80.4.2
=========================================================================

JBoss Bootstrap Environment
JBOSS_HOME: /opt/yxiang_soft/jboss/jboss-5.1.0.GAjdk6
JAVA: /opt/genband/gvu/active/jdk/bin/java

JAVA_OPTS: -Dprogram.name=run.sh -server -Xms128m -Xmx512m -XX:MaxPermSize=256m -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000

CLASSPATH: /opt/yxiang_soft/jboss/jboss-5.1.0.GAjdk6/bin/run.jar:/opt/genband/gvu/active/jdk/lib/tools.jar

=========================================================================

GVU--> JAVA_OPTS: -Dprogram.name=run.sh -d64 -server -Xms1024m -Xmx1024m -XX:MaxPermSize=512m -XX:+UseLargePages -XX:+UseParallelGC -XX:SurvivorRatio=16 -XX:ThreadStackSize=512k -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000
16:08:15,755 INFO [ServerImpl] Starting JBoss (Microcontainer)...
16:08:15,760 INFO [ServerImpl] Release ID: JBoss [The Oracle] 5.1.0.GA (build: SVNTag=JBoss_5_1_0_GA date=200905221634)

From server.log, i can see that over 10 minutes are used to start clean jboss[no xxx.ear deployed].

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
linuxhippy
Offline
Joined: 2004-01-07
Points: 0

> Even though T1's CPU is 1G HZ, i do NOT think it's 4
> times slower than the windows PC.

Well a single T1 thread has about 1/2-3/4 of the IPC an out-of-order x86 core, and you desktop system has a 2.2ghz core. So the 4x speedup is quite to be expected.

> If My Boss ask me:"Does it means i bought a stupid box or hired a stupid employee?"
Can't comment on the employee :P
But he bought a good box for running very BIG apps, not for developing them.
And usually you can keep JBOSS running, and just re-deploy your application.

- Clemens

Slam-Drive
Offline
Joined: 2011-06-29
Points: 0

Hello,
I don't know...

Solaris 11 handles like Solaris 10... after you run the update. It started after Oracle dropped thier Repositories. If you have a older version of Solaris 10 -- Don't update via main packagemanager / pkg. . Use git or other handalers.

xiangyingbing
Offline
Joined: 2010-04-01
Points: 0

> Even though T1's CPU is 1G HZ, i do NOT think it's 4
> times slower than the windows PC.

Well a single T1 thread has about 1/2-3/4 of the IPC an out-of-order x86 core, and you desktop system has a 2.2ghz core. So the 4x speedup is quite to be expected.
~~~~~~~~~~~~~~~~OK. I believe you are right.

> If My Boss ask me:"Does it means i bought a stupid box or hired a stupid employee?"
Can't comment on the employee :P
But he bought a good box for running very BIG apps, not for developing them.
And usually you can keep JBOSS running, and just re-deploy your application.
~~~~~~~~~~~~~~~~If two JBoss instances are started at the same time and both of them run slowly, they will NOT form a cluster.
Now, the workaround is: start one, then start the other after 3 minutes, the later will join the cluster.

- Clemens

Thank you for your reply and patience.

xiangyingbing
Offline
Joined: 2010-04-01
Points: 0

Instead of bashing arround, what about buying a support-contract? :P
~~~~~~~~~~~~~~~Not every boss is generous like JBoss. My boss hates buy anyting.
:(

I have no choice but post here and there.

xiangyingbing
Offline
Joined: 2010-04-01
Points: 0

JBoss startup is mostly single-threaded
~~~~~~~You are right, i studied jboss's source code whole night.
Everything is loaded one by one by VFS, then started by micro-container.

My windows CPU:
Pentium(R) Dual-Core CPU
E5200 @2.5GHZ
2.49GHZ, 3.21GB of RAM

Many application runs on this OS: eclipse, mysql, IM, OUTLOOK, many putty clients...

Even though T1's CPU is 1G HZ, i do NOT think it's 4 times slower than the windows PC.

What makes me feel uncomfortable is that, this post[http://community.jboss.org/message/187766#187766] says
[b]
On Windows XP JBoss loads in 1 min, where on Solaris in 4 min!
...
"when I moved from Solaris 8 to 9 the load time shrinks in 1 min ;-)".
[/b]

It's the same issue as the one i face!!!
This is why i can NOT believe you at first.

I updated J2SE patch and Solaris patch. But, nothing is improved... ;(

Please just forget this topic.
I'am angry about the platform, so i write so much.
Now, i'll shut up.

Message was edited by: xiangyingbing

xiangyingbing
Offline
Joined: 2010-04-01
Points: 0

btw, i rewrite org.jboss.Main and add some test codes. I replace the one in jboss/bin/run.jar with it.

The time consued by the test code in jboss is almost the same as it runs out of JBoss.

Now, i can only believe you: the T1 is NOT for single thread.

I never give up easily. This time, i give up.

If My Boss ask me:"Does it means i bought a stupid box or hired a stupid employee?"
I'll anwser: "Both".

thomasallen
Offline
Joined: 2010-05-25
Points: 0

i think they should try updating it to new version so it can work smoothly

xiangyingbing
Offline
Joined: 2010-04-01
Points: 0

JBoss starts on windows in ONLY 1 minutes. But It need 4.5 minutes to get started!!!
Now, i am a bit disappointed of solaris10.

linuxhippy
Offline
Joined: 2004-01-07
Points: 0

> JBoss starts on windows in ONLY 1 minutes. But It
> need 4.5 minutes to get started!!!

You are on a T1, which is optimized for MANY threads and high TROUGHPUT - not low-latency on single-threaded workload. JBoss startup is mostly single-threaded, but who cares ... what counts is throughput when hundreds of clients simultaneously access your webapp.

Now, please stop flooding all forums.

- Clemens

xiangyingbing
Offline
Joined: 2010-04-01
Points: 0

[b]I studied this issue several days[/b], i did NOT see somebody says "Solaris10 is bad", so i think Solaris 10 is good. So i have the question.

Please note that, one of those links says that jboss can start in 1 minute on soalris 9. Why it can NOT on solaris 10? I searched and studied many pages, but i can NOT find somebody give the solution, Should NOT i publish the quesiton?

linuxhippy, just as your name shows, you like linux more than Solaris(unix), right?
Can you endure your application's bad performance?

If you are the administrator of this forum, please ban my account. I do NOT care it.

xiangyingbing
Offline
Joined: 2010-04-01
Points: 0

Great, you deleted my post. Why NOT ban my account?

linuxhippy
Offline
Joined: 2004-01-07
Points: 0

Although I do have delete-rights, I didn't delete anything.

Instead of bashing arround, what about buying a support-contract? :P

- Clemens

xiangyingbing
Offline
Joined: 2010-04-01
Points: 0

Since you replied my ugly question, i believe you did NOT delete my post.

And i am sorry for my limited knowledge and bad manners which makes you feel uncomfortable.

I am really crazy now, because of the bad performance of JBOSS on this platform.
I am tortured by this issue over one week!

I read all JDK 32/64 bit related pages, only get useful info from you and from [http://www.novell.com/products/jboss/sysreqs.html ], it says:
Benefits of 64-bit JVM on 64-bit OS and Hardware:

* Wider datapath: The pipe between RAM and CPU is doubled, which improves the performance of memory-bound applications.
* 64-bit memory addressing gives virtually unlimited (1 exabyte) heap allocation. However large heaps affect garbage collection.
* Applications that run with more than 1.5GB of RAM (including free space for garbage collection optimization) should utilize the 64-bit JVM.
* Applications that run on 32-bit JVM and do not require more than minimal heap sizes will gain nothing from a 64-bit JVM. Barring memory issues, 64-bit hardware with the same relative clock speed and architecture is not likely to run Java applications faster than their 32-bit cousin.

[b]
Now, i belive you are right. I appologize to you if this question and my replies makes you feel unhappy.[/b]

xiangyingbing
Offline
Joined: 2010-04-01
Points: 0

I just can NOT believe JBoss is sooooooooooooooo slow on my platform.

Do you think it's nomal that[b] pure JBoss5.1.0 takes about 4.5minutes to get started[/b] even though my single CPU's frequency is 1G HZ???
Nothing else is running on this platform.

xiangyingbing
Offline
Joined: 2010-04-01
Points: 0

my solaris info:

bash-3.00# prtdiag
System Configuration: Sun Microsystems sun4v SPARC Enterprise T2000
Memory size: 8064 Megabytes

================================ Virtual CPUs ================================

CPU ID Frequency Implementation Status
------ --------- ---------------------- -------
0 1000 MHz SUNW,UltraSPARC-T1 no-intr
1 1000 MHz SUNW,UltraSPARC-T1 no-intr
2 1000 MHz SUNW,UltraSPARC-T1 no-intr
3 1000 MHz SUNW,UltraSPARC-T1 no-intr
4 1000 MHz SUNW,UltraSPARC-T1 no-intr
5 1000 MHz SUNW,UltraSPARC-T1 no-intr
6 1000 MHz SUNW,UltraSPARC-T1 no-intr
7 1000 MHz SUNW,UltraSPARC-T1 no-intr
8 1000 MHz SUNW,UltraSPARC-T1 no-intr
9 1000 MHz SUNW,UltraSPARC-T1 no-intr
10 1000 MHz SUNW,UltraSPARC-T1 no-intr
11 1000 MHz SUNW,UltraSPARC-T1 no-intr
12 1000 MHz SUNW,UltraSPARC-T1 no-intr
13 1000 MHz SUNW,UltraSPARC-T1 no-intr
14 1000 MHz SUNW,UltraSPARC-T1 no-intr
15 1000 MHz SUNW,UltraSPARC-T1 on-line

======================= Physical Memory Configuration ========================
Segment Table:
--------------------------------------------------------------
Base Segment Interleave Bank Contains
Address Size Factor Size Modules
--------------------------------------------------------------
0x0 8 GB 4 2 GB MB/CMP0/CH0/R0/D0
MB/CMP0/CH0/R0/D1
2 GB MB/CMP0/CH1/R0/D0
MB/CMP0/CH1/R0/D1
2 GB MB/CMP0/CH2/R0/D0
MB/CMP0/CH2/R0/D1
2 GB MB/CMP0/CH3/R0/D0
MB/CMP0/CH3/R0/D1

========================= IO Configuration =========================

IO
Location Type Slot Path Name Model
----------- ----- ---- --------------------------------------------- ------------------------- ---------
IOBD/NET0 PCIE IOBD /pci@780/pci@0/pci@1/network@0 network-pciex8086,105e
IOBD/NET1 PCIE IOBD /pci@780/pci@0/pci@1/network@0,1 network-pciex8086,105e
IOBD/PCIE PCIE IOBD /pci@780/pci@0/pci@9/scsi@0 scsi-pciex1000,56 LSI,1064E
IOBD/NET2 PCIE IOBD /pci@7c0/pci@0/pci@2/network@0 network-pciex8086,105e
IOBD/NET3 PCIE IOBD /pci@7c0/pci@0/pci@2/network@0,1 network-pciex8086,105e
IOBD/PCIX PCIX IOBD /pci@7c0/pci@0/pci@1/pci@0/isa@2 isa
IOBD/PCIX PCIX IOBD /pci@7c0/pci@0/pci@1/pci@0/usb@5 usb-pciclass,0c0310
IOBD/PCIX PCIX IOBD /pci@7c0/pci@0/pci@1/pci@0/usb@6 usb-pciclass,0c0310
IOBD/PCIX PCIX IOBD /pci@7c0/pci@0/pci@1/pci@0/ide@8 ide-pci10b9,5229

============================ Environmental Status ============================
Fan sensors:
------------------------------------------------------------
Location Sensor Status
------------------------------------------------------------
NNL084502N:CH/FT0/FM0 RS unknown
NNL084502N:CH/FT0/FM1 RS unknown
NNL084502N:CH/FT0/FM2 RS unknown
NNL084502N:CH/FT2 RS unknown

Temperature sensors:
------------------------------------------------------------
Location Sensor Status
------------------------------------------------------------
NNL084502N:CH/IOBD/IOB T_CORE unknown
NNL084502N:CH/IOBD T_AMB unknown
NNL084502N:CH/MB/CMP0 T_TCORE unknown
NNL084502N:CH/MB/CMP0 T_BCORE unknown
NNL084502N:CH/MB T_AMB unknown
NNL084502N:CH/PDB T_AMB unknown

Current sensors:
------------------------------------------------------------
Location Sensor Status
------------------------------------------------------------
NNL084502N:CH/MB I_VCORE unknown
NNL084502N:CH/MB I_VMEML unknown
NNL084502N:CH/MB I_VMEMR unknown

Current indicators:
------------------------------------------------------------
Location Indicator Condition
------------------------------------------------------------
NNL084502N:CH/IOBD I_USB0 unknown
NNL084502N:CH/IOBD I_USB1 unknown
NNL084502N:CH/FIOBD I_USB unknown

Voltage sensors:
------------------------------------------------------------
Location Sensor Status
------------------------------------------------------------
NNL084502N:CH/SC/BAT V_BAT unknown
NNL084502N:CH/IOBD V_+1V5 unknown
NNL084502N:CH/IOBD V_+1V8 unknown
NNL084502N:CH/IOBD V_+3V3MAIN unknown
NNL084502N:CH/IOBD V_+3V3STBY unknown
NNL084502N:CH/IOBD V_+1V unknown
NNL084502N:CH/IOBD V_+1V2 unknown
NNL084502N:CH/IOBD V_+5V unknown
NNL084502N:CH/IOBD V_-12V unknown
NNL084502N:CH/IOBD V_+12V unknown
NNL084502N:CH/MB V_+1V5 unknown
NNL084502N:CH/MB V_VMEML unknown
NNL084502N:CH/MB V_VMEMR unknown
NNL084502N:CH/MB V_VTTL unknown
NNL084502N:CH/MB V_VTTR unknown
NNL084502N:CH/MB V_+3V3STBY unknown
NNL084502N:CH/MB V_VCORE unknown

=====

http://community.jboss.org/message/217765#217765

No answer!

http://community.jboss.org/message/187766#187766

JBoss 4.0.0 is slow on Solaris 8 (64bit SunFire v120) 4 min

I'm running solaris2.10, JDK 1.5.0_06 or 1.5.0_11 (32 bit or 64 bit), both are really slow.

Why???

Is there something wrong with my setting?
We can NOT do anything now:
[b]we developed on windows[fast enough]. but customers need us deploy jboss on solaris 10.[/b]

http://community.jboss.org/en/jbossas/performance is read too, but nothing is useful.

I do as [http://www.mastertheboss.com/en/jboss-application-server/113-jboss-performance-tuning-1.html] says,

but jboss is still slow on solaris 10.

Please help me. Thanks in advance.

mellowslide
Offline
Joined: 2011-08-25
Points: 0

Hi,

We are experiencing the same problem, our application runs slow in Solaris 10 (it runs faster in a Windows environment). Our setup is:

  • Java(TM) SE Runtime Environment (build 1.6.0_21-b06)
  • SunOS 5.10 Generic_142900-09 sun4v sparc SUNW,T5140. 64-bit sparcv9
  • Solaris Zone: capped-memory: physical: 13G, swap: 13G.
  • 32 cores with 1.1 Ghz.
  • JBoss SOA Platform 5.1.0
  • JVM JAVA_OPTS:
    -Xms1536m
    -Xmx1536m
    -XX:PermSize=192m
    -XX:MaxPermSize=192m
    -XX:+UseParallelGC
    -verbose:gc
    -XX:+PrintGCDetails
    -Xloggc:gc.log
    -Djava.awt.headless=false
    -Dorg.jboss.resolver.warning=true
    -Dsun.rmi.dgc.client.gcInterval=3600000
    -Dsun.rmi.dgc.server.gcInterval=3600000
    -Dsun.lang.ClassLoader.allowArraySyntax=true
We are now trying to run JVM with 64 bits and a bigger heap size but there are no improvements in performace.
Any info regarding this issue is appreciated.
tavogj04
Offline
Joined: 2011-05-09
Points: 0

Hi
You have found any solution for this problem... I have the same problem with jboss 4-23GA and solaris 10 Sparc on T1000 Server in a LDOM, but my started times are of 10 minutes and Jdk 1.6.23
Any recommendations I'll be grateful

wozza.xing
Offline
Joined: 2012-06-20
Points: 0

it's not the number of bits or the size of your hard disk, it's how you use it that counts.

http://java.sun.com/docs/hotspot/threads/threads.html