Thanks a lot for the review, Marcus.
Unfortunately I realized yesterday that my change is incomplete without
a way to cache and reuse property maps. Not only will this make the
parser itself faster, but without it code dealing with parsed JSON will
become megamorphic very fast.
I'll upload a new webrev soon. It will also address your comments below.
Hannes
Am 2015-01-31 um 16:40 schrieb Marcus Lagergren:
Stellar work, Hannes! And readable code.
Awesome numbers, Hannes. Why was the last JSON parser so slow? I guess it was
just a case of clean room implement per spec to ensure correctness, right? I
don’t think we’ve paid a lot of attention to the JSON code since it was first
written.
Does everything compile without warnings? I notice you have explicitly added a
@SuppressWarnings(“unchecked”) in JSONFunctions. Why was this the case? List<?>
still too weak?
Do your ProperyHashMap changes give us benefits in performance elsewhere too?
(or slowdowns for that matter)
Do you have any micro benchmarks you used to test this to check in ?
+1
/M
On 30 Jan 2015, at 17:40, Hannes Wallnoefer <[email protected]> wrote
Please review JDK-8062141: Various performance issues parsing JSON:
http://cr.openjdk.java.net/~hannesw/8062141/
Thew new JSON parser is about 2-3 x faster than our old one, roughly on par
with the ones in Rhino or V8.
Hannes