Skip to content

Conversation

@graalvmbot
Copy link
Collaborator

  • Add host proxy benchmarks.
  • Improve performance of polyglot proxy interfaces like ProxyArray.
Single-Context before:
Benchmark                              Mode  Cnt          Score          Error  Units
HostProxyBenchmark.arrayGetSize       thrpt   10  237641626.099 ± 11531995.981  ops/s
HostProxyBenchmark.arrayRead          thrpt   10   99983751.157 ±   253307.401  ops/s
HostProxyBenchmark.arrayWrite         thrpt   10   50362513.221 ±   135705.133  ops/s
HostProxyBenchmark.executableExecute  thrpt   10   26688684.412 ±   109379.082  ops/s
HostProxyBenchmark.objectGetKeys      thrpt   10    2309834.516 ±     6003.637  ops/s
HostProxyBenchmark.objectGetMember    thrpt   10   49441347.588 ±   170923.664  ops/s
HostProxyBenchmark.objectHasMember    thrpt   10  136223480.172 ±   339039.123  ops/s
HostProxyBenchmark.objectPutMember    thrpt   10   57746670.074 ±   310909.144  ops/s

Single-Context after:
Benchmark                              Mode  Cnt            Score            Error  Units Improvement
HostProxyBenchmark.arrayGetSize       thrpt   10  17755957649.174 ± 1212149716.378  ops/s 74x
HostProxyBenchmark.arrayRead          thrpt   10    905320880.972 ±    4665748.268  ops/s 9x
HostProxyBenchmark.arrayWrite         thrpt   10    135386797.372 ±    6201195.107  ops/s 2.6x
HostProxyBenchmark.executableExecute  thrpt   10    121310621.014 ±    1121982.931  ops/s 4.5x
HostProxyBenchmark.objectGetKeys      thrpt   10  16640468481.865 ±  667865621.351  ops/s 7000x
HostProxyBenchmark.objectGetMember    thrpt   10    360456442.376 ±   15103381.641  ops/s 7.3x
HostProxyBenchmark.objectHasMember    thrpt   10    921759331.422 ±   26825795.804  ops/s 6.7x
HostProxyBenchmark.objectPutMember    thrpt   10    137347870.350 ±    2646484.090  ops/s 2.3x


Multi-Context before:
Benchmark                              Mode  Cnt          Score         Error  Units
HostProxyBenchmark.arrayGetSize       thrpt   10  225224453.562 ± 1532998.655  ops/s
HostProxyBenchmark.arrayRead          thrpt   10   98286976.408 ± 4827444.535  ops/s
HostProxyBenchmark.arrayWrite         thrpt   10   56628943.925 ±  211262.959  ops/s
HostProxyBenchmark.executableExecute  thrpt   10   29381811.120 ±  281146.935  ops/s
HostProxyBenchmark.objectGetKeys      thrpt   10    2246573.283 ±   84596.352  ops/s
HostProxyBenchmark.objectGetMember    thrpt   10   49337730.387 ±  223935.072  ops/s
HostProxyBenchmark.objectHasMember    thrpt   10  135262896.980 ± 6478288.813  ops/s
HostProxyBenchmark.objectPutMember    thrpt   10   58142042.556 ±  179694.168  ops/s


Multi-Context after:
Benchmark                              Mode  Cnt            Score            Error  Units
HostProxyBenchmark.arrayGetSize       thrpt   10  17016167551.281 ± 1736734482.050  ops/s 75x
HostProxyBenchmark.arrayRead          thrpt   10    748849512.393 ±   13583938.953  ops/s 7.6x
HostProxyBenchmark.arrayWrite         thrpt   10    133899643.563 ±    1949201.172  ops/s 2.3x
HostProxyBenchmark.executableExecute  thrpt   10    119321419.630 ±    5321548.359  ops/s 4x
HostProxyBenchmark.objectGetKeys      thrpt   10  17035546494.641 ±   45640248.392  ops/s 7500x
HostProxyBenchmark.objectGetMember    thrpt   10    406062143.108 ±   19219001.700  ops/s 8.2x
HostProxyBenchmark.objectHasMember    thrpt   10    890628733.645 ±   24473582.077  ops/s 6.5x
HostProxyBenchmark.objectPutMember    thrpt   10    137578047.032 ±    1896290.155  ops/s 2.3x

Benchmark workload Reproxy:

Total Time Before: 77244ms
Total Time After:  38427ms 2x

Total runtime from: https://github.com/JohnTortugo/Reproxy/tree/main/src/main/java/com/jtortugo/reproxy
(no changes)

@oracle-contributor-agreement oracle-contributor-agreement bot added the OCA Verified All contributors have signed the Oracle Contributor Agreement. label Nov 18, 2025
@graalvmbot graalvmbot force-pushed the chumer/GR-71468/optimize-performance branch 2 times, most recently from 0ad45cb to 1d024a4 Compare November 18, 2025 16:35
@graalvmbot graalvmbot force-pushed the chumer/GR-71468/optimize-performance branch from 1d024a4 to b56cb8c Compare November 19, 2025 11:43
@graalvmbot graalvmbot force-pushed the chumer/GR-71468/optimize-performance branch from b56cb8c to d71b9c5 Compare November 19, 2025 16:44
@graalvmbot graalvmbot merged commit ee2e127 into master Nov 20, 2025
13 checks passed
@graalvmbot graalvmbot deleted the chumer/GR-71468/optimize-performance branch November 20, 2025 00:33
Copy link
Contributor

@JohnTortugo JohnTortugo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some minor comments / questions

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

OCA Verified All contributors have signed the Oracle Contributor Agreement.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants