Codereview request for 7183053: Optimize DoubleByte charset for String.getBytes()/new String(byte[]) (original) (raw)

Xueming Shen xueming.shen at oracle.com
Tue Jul 10 23:11:10 UTC 2012


Hi,

In JDK7, the decoder and encoder implementation of most of our single-byte charsets and UTF-8 charset are optimized to implement the internal interfce sun.nio.cs.ArrayDecoder/ Encoder to provide a fastpath for String.getBytes(...) and new String(byte[]...) operations. I have an old blog regarding this optimization at

https://blogs.oracle.com/xuemingshen/entry/faster_new_string_bytes_cs

This rfe, as the followup for above changes, is to implement ArrayDe/Encoder for most of the sun.nio.cs.ext.DoubleByte based double-byte charsets. Here is the webrev

http://cr.openjdk.java.net/~sherman/7183053/webrev

The results of the "non -scientific" benchmark StrCodingBenchmarkDB running on client and server vm on my linux machine are included in docs_c (client) and docs_s(server) below.

http://cr.openjdk.java.net/~sherman/7183053/dbcs_c http://cr.openjdk.java.net/~sherman/7183053/dbcs_s

Numbers are the time spent on the decoding/encoding operations, the smaller the better.

Thanks, -Sherman



More information about the core-libs-dev mailing list