情報が含まれていまJSR-292(invokedynamicいGroovy実績を教えてください。

StackOverflow https://stackoverflow.com/questions/2011211

  •  18-09-2019
  •  | 
  •  

質問

あの推定ではどのくらいJSR-292影響Groovy実績を教えてください。

役に立ちましたか?

解決

性能特性がJDK7にすべての時間を変更するため、

invokedynamicのは、本当に複雑な物語です。インディにGroovyの移植の間に私は1.5倍程度、実際にJavaの近くで、本当になりました。しかし、私は要因3-4というようなものにパフォーマンスが低下catchExceptionGuardを、使用する必要があります。我々はまだそのガードを使用する必要がないようにする方法を検討する必要があります。多分、我々はそのためのGroovy 2.2でのいくつかの既存のコードを壊す必要があります。前述したようにとにかく、私はは、invokeMethodフォールバック用のガードを必要としません。それはおそらく私が解いたりして他のことをしなければならない他の例外を含むGroovyRuntimeExceptionsためのものです。だから、理論上のパフォーマンスは、Javaおよび既存の方法のためのJavaの速度の半分の間であるように思われます。 invokeMethodへの呼び出しのパフォーマンスはまったく違う話です。

あなたはより多くを必要とする場合は、Groovyの2.0で@CompileStaticを使用します。

他のヒント

私は、ベンチマークはまだないと思いますし、誰かがそれを実行するまで、我々は唯一の

...推測することができます

あなたはこれを見つけることができます興味深いこの問題でを投稿してください。

これは、一般的に周りの10-50倍速くなります。

のhttp://www.mail-archive .COM / mlvm-devの@ openjdk.java.net / msg00819.htmlする

なんなのかどのくらいで適用Groovy.まさなければならないと分かってい,Groovyはfallbacks例invokeMethod法です。はできませんでスクフォースメンバーとinvokedynamicになると思います。

しかし、ある:

  • の場合にスローされる例外の方法が見つかりません。残念ながら、が必要であろう分析stacktraceなーゆさんこちらで用意したい場所でスローされます。ことができるsignifficantの減速を呼び出す時に存在しない方法を問わず扱うinvokeMethodコールバック.
  • 見Groovy++.で利用できる静的タイピング条件を満たす場合は一部のcontraints.この場合には、できるということでスイッチを"厳しい動モードでは、許されないこれらのfallbacks.
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top