Hitachi

uCosminexus Application Runtime - Cosminexus Developer's Kit for Java 機能解説・リファレンス


2.1.1 GCとJavaVMのメモリ管理の概要

JavaVMのチューニングの目的は,システムの処理性能の向上です。特に,GCの仕組みを考慮した上で,適切なメモリ管理ができるようにチューニングすることで,システムの処理性能が向上します。GCの挙動はメモリ管理方式によって変わるため,システムの要件に合わせて適切なメモリ管理方式を選択してください。日立JavaVMでは,次の2つのメモリ管理方式を選択できます。

表2‒1 各メモリ管理方式の特長

項番

メモリ管理方式

特長

1

SerialGC

スループットを重視するシステムに適している。

GCには長い時間が掛かるGC(FullGC)と,短い時間で終わるGC(CopyGC)がある。GCの時間を制御できない。

メモリサイズのチューニングをすることで,FullGCの発生回数を減少できる。

2

G1GC

大規模なメモリを使用するシステムやレスポンスを重視するシステムに適している。

項番1の方式と比較してスループットが低い。

GCには長い時間が掛かるGC(FullGC)と,短い時間で終わるGC(YoungGC,MixedGC)がある。YoungGCとMixedGCのGCの目標時間を指定できる。

メモリサイズのチューニングに加え,GCを行うスレッド数を増やすことで,FullGCの発生回数を減少できる。

SerialGCについては「2.2 SerialGCの仕組みとJavaVMのメモリチューニング」を,G1GCについては「2.3 G1GCの仕組みとJavaVMのメモリチューニング」を参照してください。