マルチコア・システムにおける SAP Java アプリケーション・サーバのスケーラビリティ性能比較

書誌事項

タイトル別名
  • マルチコア ・ システム ニ オケル SAP Java アプリケーション ・ サーバ ノ スケーラビリティ セイノウ ヒカク
  • Scalability Comparison of SAP Java Application Server on Two Multicore Systems

この論文をさがす

抄録

Java アプリケーション・サーバのスケーラビリティを改善するために,単一マシン上で複数のJava 仮想マシン(JVM)を利用する手法が広く用いられている.本論文ではSAP のJava アプリケーション・サーバ上で動作する SAP EP-ESS ベンチマークのスケーラビリティ性能を,2種類のマルチコア・システムを用いて評価した.8 コアの Sun Niagara を 1個搭載したシステムと,4 コアの Intel Clovertown を 2 個搭載したシステムの 2 種類の 8 コア・システムを使用し,それぞれのシステムで 1,2 および 4 個のJVM を用いた場合のスケーラビリティを比較した.単一 JVM の構成では,どちらのシステムでもロックコンテンションが発生し,6 コア以上では性能向上が見られなかった.複数 JVM 構成の場合は,Niagara において 2 JVM 構成が最高性能を達成したのに対し,Clovertown では4 JVM 構成が最高性能を達成した.両者のマイクロ・アーキテクチャ性能を解析した結果,Niagara での性能劣化は,Niagara のキャッシュメモリと TLB が Clovertown と比較して小さいために生じたことが判明した.Niagara でより高いスケーラビリティを達成するためには,単一 JVM がよりスケーラブルである必要があり,我々はロックコンテンションを削減することによって,Niagara 上での単一 JVM の性能を 15% 改善し,ほぼリニアなスケーラビリティを実現した.

To improve scalability of Java application servers, multiple JVM instances are often used on a single machine in production environments. In this paper, we studied scalability of a Java application server, SAP EP-ESS benchmark, on the two multicore systems, Sun's single-socket 8-core Niagara system and Intel's dual-socket quad-core Clovertown system, with three configurations of 1, 2, and 4 JVMs. For a single JVM, lock contention was observed on more than 6 cores in both systems. For multiple JVMs, 2 JVMs achieved the highest throughput on Niagara, while 4 JVMs achieved the highest throughput on Clovertown. We investigated the micro-architectural performance data, and we concluded that this is because Niagara comes with smaller caches and TLB, whereas Clovertown comes with larger caches and TLB. To achieve better scalability on Niagara, the application must be more scalable with a single JVM. We confirmed this by reducing lock contention using a Java concurrent library. As a result, we obtained a 15% performance gain on Niagara, and the throughput scaled almost linearly.

収録刊行物

キーワード

詳細情報 詳細情報について

問題の指摘

ページトップへ