タグ

メモリとJavaに関するiwwのブックマーク (4)

  • HPROF: ヒープ/CPU プロファイリングツール

    Java 2 Platform Standard Edition (J2SE) では、ヒープと CPU のプロファイリング用に HPROF と呼ばれる簡単なコマンド行プロファイリングツールが常に提供されます。HPROF は、実際には JVM のネイティブエージェントライブラリであり、JVM の起動時にコマンド行オプションで動的にロードされ、JVM プロセスの一部になります。ユーザーは、起動時に HPROF のオプションを指定することで、HPROF に対してヒープ、CPU、またはその両方のさまざまなプロファイリング機能を要求できます。生成されるデータは、テキスト形式またはバイナリ形式にでき、メモリー使用量や効率の低いコードが関与するパフォーマンス上の問題を見つけて切り分けるために使用できます。HPROF によって生成されるバイナリ形式ファイルは、HAT などのツールでヒープ内の割り当て済みオ

    iww
    iww 2018/04/06
    Javaプログラムがバグって死んだときに残すファイル。 coreみたいなもの。 それなりに大きくて邪魔。
  • JVMのチューニング - ITエンジニアとして生きる

    前回、JVMとGCのしくみ - ITエンジニアとして生きるでJVMとGCのしくみについて書いた。 今回はその続きということでJVMのチューニングについて書きたいと思う。 JVMチューニングって -Xms ・・・ ヒープ全体(New領域+Old領域)の初期値 -Xmx ・・・ ヒープ全体(New領域+Old領域)の最大値 くらいしか話題に上がらないし意識しないことが多い(気がする)。 でもホントはこれだけではダメで、前回のようにPermanent領域、New領域、Old領域を意識したチューニングが必要になる。 VMチューニングを考えるその前に・・・チューニングの話をする前にまずVMの起動モードについて話したいと思う。 VMには大きく以下2つの起動モードがあり、それぞれ以下のような特徴を持つ。 ◆クライアントVMモード 起動時間を短縮し、メモリサイズを縮小するように調整されている。 VM起動時

    JVMのチューニング - ITエンジニアとして生きる
  • Javaオブジェクトのメモリ使用量

    Javaオブジェクトのメモリ使用量を計測してみました。 計測を行ったJDKはWindowsの1.4.2_04です。 基的に、Javaではプリミティブ型以外の全オブジェクトを生成するときに new演算子を使用します。 つまり、メモリ確保が行われるタイミングはnew演算子が実行される時に限られます。 全てのオブジェクト フイールド数0 フィールドが一つも無いオブジェクトを生成すると、8byteのメモリを消費します。 Object obj = new Object(); フイールド数1以上 フィールドが一つ以上あるオブジェクトを生成すると、8+α byteのメモリを消費します。 α の値は、このクラスが保持するフィールドに依存します。 フィールドの型により、消費するbyte数が異なります。 byte / boolean 1byteを消費します。 short 2byteを消費します。 int /

  • JavaのGCログを日付時刻で表示する - カフェイン中毒エンジニアの事件簿

    こんなのを見て。 http://www.theserverlabs.com/blog/2010/05/26/human-readable-jvm-gc-timestamps/ まずは基編。 -Xloggc: -Xloggc: タイムスタンプが付いたファイルにGCステータスのログを記録する -XX:+PrintGCDetails Print more details at garbage collection. Manageable. (Introduced in 1.4.0.) 次に問題のやつ。Oracleのサイトで資料が見つからない…。 -XX:+PrintGCDateStamps で試しにこんなのを設定すると、 -Xloggc:./gc.log -XX:+PrintGCDateStamps -XX:+PrintGCDetails こうなる。 2012-02-21T23:24:35.5

    JavaのGCログを日付時刻で表示する - カフェイン中毒エンジニアの事件簿
  • 1