RFR: 8300236: Use VarHandle access in Data(Input | Output)Stream classes

Per Minborg pminborg at openjdk.org
Thu Jan 19 20:00:25 UTC 2023


On Wed, 18 Jan 2023 16:34:57 GMT, Per Minborg <pminborg at openjdk.org> wrote:

> This PR proposes using a performance optimization using a new supported API for operations similar to those found in `java.io.Bits`

Performance looks promising for serialization (values in us/operation):

<google-sheets-html-origin style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;">

  | Java 20 | Java 21 | Improvement
-- | -- | -- | --
SerializeBenchmark.serializeData | 7.283 | 6.793 | 6.7%
SerializeBenchmark.serializeRecord | 7.275 | 6.733 | 7.5%

</google-sheets-html-origin>


![image](https://user-images.githubusercontent.com/7457876/213516307-c39c0467-8cd0-4fd8-9d4b-f56b17e1a4ca.png)

-------------

PR: https://git.openjdk.org/jdk/pull/12076


More information about the core-libs-dev mailing list