Changes between Version 2 and Version 3 of css/memorytunig


Ignore:
Timestamp:
07/01/14 19:36:32 (5 years ago)
Author:
nogami
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • css/memorytunig

    v2 v3  
    4545 
    4646まずXmxパラメータでヒープの最大サイズを初期設定の1GB、4GB、6GB、8GBと増やした。(図1)[[BR]] 
    47 ヒープサイズを増やせば処理可能な日数が増え、処理時間もデータ量(日数)に比例する(Xmx近似の点線)。[[BR]] 
     47ヒープサイズを増やせば処理可能な日数が増え、処理時間もデータ量(日数)に比例する。(Xmx近似の点線)[[BR]] 
    4848ヒープサイズはデータの読み込みが進むにつれ次第に最大サイズ近くまで拡張されていった。 
    4949 
     
    5353OSがメモリを割り当てることはないので、PCのメモリを無駄に占有するわけではない。 
    5454 
    55 ヒープサイズを固定した場合にXmx近似より処理時間が短く完了する比例関係部分がある(Xms近似の点線)。[[BR]] 
     55ヒープサイズを固定した場合にXmx近似より処理時間が短く完了する比例関係部分がある。(Xms近似の点線)[[BR]] 
    5656データ量がヒープのOld領域の不足が起こらないで済む場合はXms近似で処理が完了するが、 
    5757!Old領域が不足してFull GCが起こり始めるとXmx近似になっていく。 
     
    8787 
    8888Xms4Gとしてヒープサイズを4GBに固定して、NewRatio指定なし、!NewRatio=2、8、10、12、14、16、20と変化させた。(図6)[[BR]] 
    89 !NewRatio指定なしとNewRatio=2の結果は同じであることが確認できた(64bit Javaを使用)。[[BR]] 
     89!NewRatio指定なしとNewRatio=2の結果は同じであることが確認できた。(64bit Javaを使用)[[BR]] 
    9090NewRatioを増やすにつれてXms近似の範囲で処理完了する日数が増えていくが、 
    9191次第に改善幅が小さくなっていき、16と20では同じ結果になった。[[BR]] 
     
    132132Old領域の割合を大きくすることで同じヒープサイズでもパフォーマンスを改善することができる。 
    133133 
     134== 追加情報 == 
     135 
     136今回このベンチマークテストを行っているときに、処理完了までに掛かる時間のうち 
     137そのほとんどがネットワーク経由でのデータ転送に掛かっていることが分かった。 
     138 
     139ベンチマークで使用したPCは100MbpsのHUBに繋がっていたが、 
     140データ転送中は100Mbpsのうち98%近い帯域を使用しており、 
     141ネットワークの速度がボトルネックになっていることが明らかだった。 
     142 
     143そこでHUBを1Gbps(GbE)のものに交換してXms8G NR16時のベンチマークを行ってみたところ、 
     144処理完了までの時間はほぼ半分になった。(図13) 
     145 
     146[[Image(GbE_fig13.png, 40%)]] 
     147 
     148処理完了までの時間を次の3つに分けて詳しく測定した。 
     149 * プロットファイルを開いてからデータ転送が始まるまでの時間。(データベース側でのクエリ処理の時間と考えられる。) 
     150 * データ転送に掛かる時間。 
     151 * データ転送が終了してグラフ描画が終了するまでの時間。 
     152 
     15338日分ではFull GCが発生しているためグラフ描画時間がかかっているが、 
     154それを除けば3つとも日数に比例した時間がかかっている。(図14) 
     155 
     156[[Image(GbE_fig14.png, 40%)]] 
     157 
     15836日分の処理時間の内訳を100Mbpsと1Gbpsを比較すると、クエリ処理とグラフ描画の時間に差はなく、 
     159データ転送にかかる時間が233秒から85秒へと148秒短縮された。(約2.7倍高速化)(図15-1,15-2) 
     160 
     161[[Image(GbE_fig15-1.png, 40%)]] 
     162[[Image(GbE_fig15-2.png, 40%)]] 
     163 
     164この時ネットワーク帯域のうち25%~30%を使用していた。[[BR]] 
     165このボトルネックがPC、データベース、ネットワークのどこにあるのかまでは検証していない。