Mustang JVM(1.6)與Tiger JVM(1.5)單項性能測試
Mustang JVM
(1.6)與Tiger JVM(1.5)性能對比
這里先介紹一下用來做JVM性能評測的軟件——Volano BenchMark,這是一個純粹用Java寫出來的服務(wù)器benchmark評測的軟件。其實這本來是個WebChat的軟件,制作者在Chat App的功能基礎(chǔ)上發(fā)展出這個對JVM性能測試的小軟件,用來在不同硬件配置的機(jī)器上或者是不同Kernel的操作系統(tǒng)上對不同的JVM進(jìn)行性能測試。它是通過對服務(wù)器建立多個客戶端的連接來測量客戶端程序廣播批量信息所需要的時間,從而達(dá)到對JVM性能測試的結(jié)果。
其實這個軟件能對服務(wù)器的以下方面性能進(jìn)行評測:調(diào)度程序,TCP/IP及Ethernet Driver的網(wǎng)絡(luò)吞吐及響應(yīng),Pthreads線程,SMP(Symmetric Multi Processing對稱多處理)性能測量。
Benchmark
的配置
-
CHAT
房間數(shù)量:10
-
每個房間用戶數(shù)量:20
-
每個用戶信息量:1000
服務(wù)器和客戶端都在同一臺電腦上
測試用到的JVM
Sun Client JVM
l????????
Jdk-6-beta-windows-i586
l????????
Options used: -server –Xmx
Sun Client JVM
l????????
Jdk-1_5_0_01-windows-i586-p
l????????
Options used: -server –Xmx
在這里我補(bǔ)充一下,JVM的啟動Option我沒有進(jìn)行配置,因為這里做的只是在通常情況下Mustang(1.6)和Tiger(1.5)的對比,所以選用server還是Client/Hotspot、預(yù)分配Heap的大小是
硬件配置
OS
:Microsoft Windows XP [版本
5.1.2600] (Service Pack 2)
CPU:
AMD Athlon(tm) XP 2200+ Thoroughbred-B Processor(0.13μm)
Memory:
512MB
Cache:64+64KB L1 Cache+258 KB L2 Cache
測試結(jié)果:
測試結(jié)果是以每秒信息數(shù)量來衡量的,測試結(jié)果取5次測試去掉最高和最低后的平均值:
JVM |
指標(biāo)
|
1 |
2 |
3 |
4 |
5 |
1.6 β JVM Mustang |
持續(xù)時間(秒) |
46.235 |
43.5 |
45.063 |
44.016 |
44.719 |
平均吞吐量 |
8651 |
9195 |
8876 |
9088 |
8945 |
|
1.5 JVM Tiger |
持續(xù)時間(秒) |
47.828 |
43.125 |
42.266 |
41.984 |
42.359 |
平均吞吐量 |
8363 |
9275 |
9464 |
9527 |
9443 |
測試結(jié)果:
Mustang JVM 1.6
β:
8969.667
Tiger JVM 1.5
:
9394
感覺有點(diǎn)不太對勁,重新啟動電腦再試了一遍:
JVM |
指標(biāo)
|
1 |
2 |
3 |
4 |
5 |
1.6 β JVM Mustang |
持續(xù)時間(秒) |
46.312 |
44.063 |
44.11 |
44.109 |
44.953 |
平均吞吐量 |
8637 |
9078 |
9068 |
9068 |
8898 |
|
1.5 JVM Tiger |
持續(xù)時間(秒) |
46.813 |
43.621 |
42.512 |
42.684 |
43.012 |
平均吞吐量 |
8663 |
9145 |
9435 |
9456 |
9426 |
測試結(jié)果:
Mustang JVM 1.6
β:
9011.333
Tiger JVM 1.5
:
9335.333
1.5
的
JVM
還是比
1.6
β的性能好。個人有點(diǎn)不是很理解,當(dāng)然這里沒有去考慮使用
Server
還是
Client
以及其他因素,但作為一個普通的應(yīng)用程序開發(fā)者,β版的
1.6JVM
的效能并沒有讓我們看到驚喜。
后話:
國外一個 Blog 的專欄作家們曾經(jīng)說到, 1.5 版是 Java 的巨大改進(jìn),但 1.6 讓我們看到了走向暮年的 Java ,但堅信 Java 不會 Die out ,因為我們從 COBOL 或者 C++ 那些語言可以看到,即使是在這個年代,我們?nèi)匀豢梢钥吹?/span> COBOL 和 C++ 的廣泛應(yīng)用,他們已經(jīng)活了數(shù)十年了,而 Java 才 10 多歲, Java 的用戶群體是有史以來最多的,所以相信 Java 會變強(qiáng)。但也相信很快會有另一個年輕的“ Java ”來代替已老的 Java ,正如當(dāng)初 Java 橫空出世一樣。
我的評測結(jié)果也許有很多錯誤的地方,歡迎大家指出,同時我這里使用的 Mustang 的 JVM 是 Demo 版里面比較老的,也許這是對結(jié)果影響的一個重要因素, Sun 的 Java 網(wǎng)站也曾有評測結(jié)果對兩個 Demo 版的 Mustang JVM 和 Tiger JVM 進(jìn)行評測,結(jié)果也是如此,舊版的 Mustang JVM 比 Tiger 性能還低,但新版 Mustang JVM 能比 Tiger 超出 30 ~ 40 個百分點(diǎn),但我不確定使用的是否為舊版。
如果大家想要自己使用 VolanoBenchmark 對 JVM 以及網(wǎng)絡(luò)吞吐情況和服務(wù)器性能進(jìn)行測試,我可以提供簡要的教程。這里除了 Volano 外其實還有幾個對 Java 服務(wù)器性能進(jìn)行測試的軟件,我所有三個,大家可以去看看:
RUBiS benchmark Object Web 的 JMOB 項目之一,不要說不知道 Object Web 是什么,它是國際開源中間件聯(lián)盟管理團(tuán)體的網(wǎng)站,這個測試工具的功能是三個中最強(qiáng)大的了。本人沒時間去接觸,所以就不使用她了。推薦使用!
VolanoMark ,不多說了,免費(fèi)而且簡單上手,在 Windows 環(huán)境下需要 cygwin 才能運(yùn)行(其實只是為了運(yùn)行 shell 文件,如果你對自己的 Dos Batch 水平有信心也可以改造成不用 cygwin )。能對服務(wù)器性能、網(wǎng)絡(luò)性能以及應(yīng)用程序性能做測試。如果需要使用幫助的可以留言,或者來信chenpengyi#gmail.com。
最后一個就是 SPECjbb2000 ,以前叫 2000 ,現(xiàn)在更名 2005 了,好像要收費(fèi),不便宜,所以……咳咳,不多說了,誰要是知道這個免費(fèi)了請通知一下。
posted on 2006-05-01 16:00 benchensz 閱讀(4883) 評論(7) 編輯 收藏 所屬分類: 隨便寫寫(比較有用,值得看看)