この記事では、次のように述べられています。
JDK には、クライアント側のオファリングと、サーバー アプリケーション用に調整された VM の 2 つのフレーバーの VM が含まれています。これら 2 つのソリューションは、Java HotSpot ランタイム環境のコード ベースを共有していますが、クライアントとサーバーの明確に異なるパフォーマンス特性に適した異なるコンパイラを使用しています。これらの違いには、コンパイルのインライン化ポリシーとヒープのデフォルトが含まれます。
JDK のディストリビューションにはこれらのシステムが両方とも含まれているため、開発者は -client または -server を指定して必要なシステムを選択できます。
サーバー VM とクライアント VM は似ていますが、サーバー VM はピーク動作速度を最大化するように特別に調整されています。これは、起動時間の短縮や実行時のメモリ フットプリントの縮小よりも、可能な限り高速な動作速度を必要とする、実行時間の長いサーバー アプリケーションを実行することを目的としています。
クライアント VM コンパイラは、旧バージョンの JDK で使用されていたクラシック VM とジャストインタイム (JIT) コンパイラの両方のアップグレードとして機能します。クライアント VM は、アプリケーションとアプレットの実行時のパフォーマンスを向上させます。Java HotSpot Client VM は、アプリケーションの起動時間とメモリ フットプリントを削減するように特別に調整されているため、クライアント環境に特に適しています。一般に、クライアント システムは GUI に適しています。
-server
これは、フラグを使用してアプリケーションを実行したい場合、適切に動作させるために特定のモードでコンパイルする必要があるということですか?