Skip to Content
Javaパフォーマンス第2版
book

Javaパフォーマンス第2版

by Scott Oaks
March 2025
Intermediate to advanced
450 pages
7h 10m
Japanese
O'Reilly Media, Inc.
Content preview from Javaパフォーマンス第2版

付録 チューニングフラグの概要

この付録では、よく使われるフラグを取り上げ、どのような場合に使うべきかを指 摘する。ここでよく使われるフラグには、旧バージョンのJavaでよく使われ、もはや推奨されていないフラグも含まれる。旧バージョンのJavaのドキュメントやTipsでは、それらのフラグが推奨されている場合があるので、ここで紹介している。

表A-1. ジャストインタイム・コンパイラーを調整するフラグ
フラッグ 何をするのか いつ使うか こちらも参照のこと。

-server

このフラグはもはや何の効果もなく、黙って無視される。

該当なし

"ティアード・コンピレーション"

-client

このフラグはもはや何の効果もなく、黙って無視される。

該当なし

"ティアード・コンピレーション"

-XX:+TieredCompilation

ティアード・コンピレーションを採用している。

メモリの制約が厳しくない限り、常にそうだ。

"ティアード・コンパイル ""ティアード・コンパイルのトレードオフ"

-XX:ReservedCodeCacheSize=<MB>

JITコンパイラによってコンパイルされたコード用にスペースを確保する。

大規模なプログラミングを実行しているとき、コードキャッシュが不足しているという警告が表示される。

"コードキャッシュのチューニング"

-XX:InitialCodeCacheSize=<MB>

JITコンパイラによってコンパイルされたコードの初期スペースを確保する。

コードキャッシュ用のメモリを事前に確保する必要がある場合(これは珍しいことだ)。

"コードキャッシュのチューニング"

-XX:CompileThreshold=<N>

メソッドやループをコンパイルする前に実行する回数をセットする。

このフラグはもはや推奨されない。

「コンパイルのしきい値

-XX:+PrintCompilation

JITコンパイラによる演算子のログを提供する。

重要なメソッドがコンパイルされていないと疑ったり、一般的にコンパイラが何をしているのか気になったりするときだ。

"コンパイル・プロセスの検査"

-XX:CICompilerCount=<N>

JITコンパイラが使用するスレッド数をセットする。

あまりにも多くのコンパイラ・スレッドが起動されている場合。これは主に、多数のJVMを実行している大型マシンに影響する。

"コンパイル・スレッド"

-XX:+DoEscapeAnalysis

コンパイラによる積極的な最適化を有効にする。

まれに、これがクラッシュの引き金になることがあるので、無効にすることが推奨されることもある。まれにクラッシュの引き金になることがあるので、無効にしておくことが推奨されることもある。

「脱出分析

-XX:UseAVX=<N>

インテル・プロセッサーで使用する命令セットをセットする。

Java11の初期バージョンでは、これを2にセットする必要がある。それ以降のバージョンでは、デフォルトで2に設定されている。

「CPU固有のコード

-XX:AOTLibrary=<path>

指定されたライブラリを先取りコンパイルに使用する。

限られた場合だが、初期化プログラムの実行を高速化できるかもしれない。Java 11でのみ実験的である。

"先行コンピレーション"

表A-2. GCアルゴリズムを選択するフラグ
フラッグ 何をするのか いつ使うか こちらも参照のこと。

-XX:+UseSerialGC ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

スクラム実践者が知るべき97のこと

スクラム実践者が知るべき97のこと

Gunther Verheyen, 吉羽 龍太郎, 原田 騎郎, 永瀬 美穂

Publisher Resources

ISBN: 9798341626010