2016-02-08 7 views
6

リモートデバッグのオーバーヘッドについては疑問があります。私は、これらのパラメータでホットスポットを使用してアプリケーションを起動します。Javaのリモートデバッグのオーバーヘッド

-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 

私はホットスポットの多くの古いバージョンでは、パフォーマンスに大きく影響について聞いたが、私のアプリケーションは、現在のJava 8を使用し、私はそれについての最新情報を任意のを見つけることができません。 「

+0

は確かに、巨大なリモートデバッグのオーバーヘッドあなたはHCPにSAP JVMを使用しない限り、(彼らは特別なデバッグサービスを持っている)(オーバー/へのステップに30+秒)がある - あなたがローカルでデバッグしているかのようにそれはほとんどです。 hanatrial.ondemand.comで試してみることができます –

+0

@SvetlinZarevは、誰かがjvmに接続してデバッグを開始したとき、またはagentlibが接続されている間は常に残っているときに限り、このオーバーヘッドを有効にしますか? –

+0

ああ、私はあなたの質問に誤解しました。 –

答えて

6

1.4.0。 1.4.0から、HotSpotテクノロジの完全なパフォーマンス上の利点は、デバッグを有効にしているプログラムで利用できました。 改善されたパフォーマンスにより、長時間実行されるプログラムのデバッグが容易になります。

1.4.1後JPDA領域にOracleで述べた性能関連向上は存在しません。最後は、JavaホットスポットクライアントVMのJDK 1.4.0と、JDK 1.4.1のJava Hotspot Server VMでした。

だから、何の性能向上が1.4.1から最新のバージョンにデバッグする領域に期待することはできなかったと言うことは安全です。さもなければ、それはoracleのdocsによって言及されていたでしょう。

出典: https://docs.oracle.com/javase/8/docs/technotes/guides/jpda/

確認するために、上記のリンクの強化セクションの下にあるリンクを経由してください。

+0

完璧、ありがとう。 –

0

AMDからこの資料では、この原因は、彼らもホットスポットのJVM上のリモートデバッグによるパフォーマンスヒットを減らすためにいくつかの調整を行ったどのくらいのパフォーマンスdegredation見つけましょう、と私は引用しますOpenJDKでホットスポットJVMのパフォーマンスを向上させるためにこれらの変更をどのように適用したかについても示しますが、デバッグは有効にしていますが、デバッガはまだ接続されていません。デバッグが有効になっていたホットスポット(前1.4.0に)、以前のバージョンでは、唯一のインタプリタを使用して実行されるプログラム:「フルスピードデバッグ」を導入しました

http://developer.amd.com/resources/documentation-articles/articles-whitepapers/java-performance-when-debugging-is-enabled/

+0

この記事は2010年に書かれました.Java 6の時でした。それはまだ最新ですか? –

関連する問題