From 5acaee4ebcc645c7b5a76a7b37410082e4173aae Mon Sep 17 00:00:00 2001 From: Jesse Wilson Date: Thu, 15 Dec 2011 07:03:01 +0000 Subject: [PATCH] Check in our best Jackson vs. Gson comparison benchmarks. http://microbenchmarks.appspot.com/run/limpbizkit@gmail.com/com.google.gson.metrics.ParseBenchmark --- .../google/gson/metrics/ParseBenchmark.java | 379 ++++++++++++++++++ .../gson/metrics/ParseBenchmarkData.zip | Bin 0 -> 67881 bytes 2 files changed, 379 insertions(+) create mode 100644 metrics/src/main/java/com/google/gson/metrics/ParseBenchmark.java create mode 100644 metrics/src/main/java/com/google/gson/metrics/ParseBenchmarkData.zip diff --git a/metrics/src/main/java/com/google/gson/metrics/ParseBenchmark.java b/metrics/src/main/java/com/google/gson/metrics/ParseBenchmark.java new file mode 100644 index 00000000..59b9e0fe --- /dev/null +++ b/metrics/src/main/java/com/google/gson/metrics/ParseBenchmark.java @@ -0,0 +1,379 @@ +/* + * Copyright (C) 2011 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.gson.metrics; + +import com.google.caliper.Param; +import com.google.caliper.Runner; +import com.google.caliper.SimpleBenchmark; +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonParser; +import com.google.gson.annotations.SerializedName; +import com.google.gson.reflect.TypeToken; +import java.io.CharArrayReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.Reader; +import java.io.StringWriter; +import java.lang.reflect.Type; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.List; +import org.codehaus.jackson.JsonFactory; +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.DeserializationConfig; +import org.codehaus.jackson.map.ObjectMapper; +import org.codehaus.jackson.type.TypeReference; + +/** + * Measure Gson and Jackson parsing and binding performance. + * + *

This benchmark requires that ParseBenchmarkData.zip is on the classpath. + * That file contains Twitter feed data, which is representative of what + * applications will be parsing. + */ +public final class ParseBenchmark extends SimpleBenchmark { + @Param Document document; + @Param Api api; + + private enum Document { + TWEETS(new TypeToken>() {}, new TypeReference>() {}), + READER_SHORT(new TypeToken() {}, new TypeReference() {}), + READER_LONG(new TypeToken() {}, new TypeReference() {}); + + private final Type gsonType; + private final TypeReference jacksonType; + + private Document(TypeToken typeToken, TypeReference typeReference) { + this.gsonType = typeToken.getType(); + this.jacksonType = typeReference; + } + } + + private enum Api { + JACKSON_STREAM { + @Override Parser newParser() { + return new JacksonStreamParser(); + } + }, + JACKSON_BIND { + @Override Parser newParser() { + return new JacksonBindParser(); + } + }, + GSON_STREAM { + @Override Parser newParser() { + return new GsonStreamParser(); + } + }, + GSON_DOM { + @Override Parser newParser() { + return new GsonDomParser(); + } + }, + GSON_BIND { + @Override Parser newParser() { + return new GsonBindParser(); + } + }; + abstract Parser newParser(); + } + + private char[] text; + private Parser parser; + + @Override protected void setUp() throws Exception { + text = resourceToString("/" + document.name() + ".json").toCharArray(); + parser = api.newParser(); + } + + public void timeParse(int reps) throws Exception { + for (int i = 0; i < reps; i++) { + parser.parse(text, document); + } + } + + private static String resourceToString(String path) throws Exception { + InputStream in = ParseBenchmark.class.getResourceAsStream(path); + if (in == null) { + throw new IllegalArgumentException("No such file: " + path); + } + + Reader reader = new InputStreamReader(in, "UTF-8"); + char[] buffer = new char[8192]; + StringWriter writer = new StringWriter(); + int count; + while ((count = reader.read(buffer)) != -1) { + writer.write(buffer, 0, count); + } + reader.close(); + return writer.toString(); + } + + public static void main(String[] args) throws Exception { + Runner.main(ParseBenchmark.class, args); + } + + interface Parser { + void parse(char[] data, Document document) throws Exception; + } + + private static class GsonStreamParser implements Parser { + public void parse(char[] data, Document document) throws Exception { + com.google.gson.stream.JsonReader jsonReader + = new com.google.gson.stream.JsonReader(new CharArrayReader(data)); + readToken(jsonReader); + jsonReader.close(); + } + + public void readObject(com.google.gson.stream.JsonReader reader) throws IOException { + reader.beginObject(); + while (reader.hasNext()) { + reader.nextName(); + readToken(reader); + } + reader.endObject(); + } + + public void readArray(com.google.gson.stream.JsonReader reader) throws IOException { + reader.beginArray(); + while (reader.hasNext()) { + readToken(reader); + } + reader.endArray(); + } + + private void readToken(com.google.gson.stream.JsonReader reader) throws IOException { + switch (reader.peek()) { + case BEGIN_ARRAY: + readArray(reader); + break; + case BEGIN_OBJECT: + readObject(reader); + break; + case BOOLEAN: + reader.nextBoolean(); + break; + case NULL: + reader.nextNull(); + break; + case NUMBER: + reader.nextLong(); + break; + case STRING: + reader.nextString(); + break; + default: + throw new IllegalArgumentException("Unexpected token" + reader.peek()); + } + } + } + + private static class JacksonStreamParser implements Parser { + public void parse(char[] data, Document document) throws Exception { + JsonFactory jsonFactory = new JsonFactory(); + org.codehaus.jackson.JsonParser jp = jsonFactory.createJsonParser(new CharArrayReader(data)); + jp.configure(org.codehaus.jackson.JsonParser.Feature.CANONICALIZE_FIELD_NAMES, false); + int depth = 0; + do { + switch (jp.nextToken()) { + case START_OBJECT: + case START_ARRAY: + depth++; + break; + case END_OBJECT: + case END_ARRAY: + depth--; + break; + case FIELD_NAME: + jp.getCurrentName(); + break; + case VALUE_STRING: + jp.getText(); + break; + case VALUE_NUMBER_INT: + case VALUE_NUMBER_FLOAT: + jp.getLongValue(); + break; + } + } while (depth > 0); + jp.close(); + } + } + + private static class GsonDomParser implements Parser { + public void parse(char[] data, Document document) throws Exception { + new JsonParser().parse(new CharArrayReader(data)); + } + } + + private static class GsonBindParser implements Parser { + private static Gson gson = new GsonBuilder() + .setDateFormat("EEE MMM dd HH:mm:ss Z yyyy") + .create(); + + public void parse(char[] data, Document document) throws Exception { + gson.fromJson(new CharArrayReader(data), document.gsonType); + } + } + + private static class JacksonBindParser implements Parser { + private static ObjectMapper mapper = new ObjectMapper(); + + static { + mapper.configure(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES, false); + mapper.configure(DeserializationConfig.Feature.AUTO_DETECT_FIELDS, true); + mapper.setDateFormat(new SimpleDateFormat("EEE MMM dd HH:mm:ss Z yyyy")); + } + + public void parse(char[] data, Document document) throws Exception { + mapper.readValue(new CharArrayReader(data), document.jacksonType); + } + } + + static class Tweet { + @JsonProperty String coordinates; + @JsonProperty boolean favorited; + @JsonProperty Date created_at; + @JsonProperty boolean truncated; + @JsonProperty Tweet retweeted_status; + @JsonProperty String id_str; + @JsonProperty String in_reply_to_id_str; + @JsonProperty String contributors; + @JsonProperty String text; + @JsonProperty long id; + @JsonProperty String retweet_count; + @JsonProperty String in_reply_to_status_id_str; + @JsonProperty Object geo; + @JsonProperty boolean retweeted; + @JsonProperty String in_reply_to_user_id; + @JsonProperty String in_reply_to_screen_name; + @JsonProperty Object place; + @JsonProperty User user; + @JsonProperty String source; + @JsonProperty String in_reply_to_user_id_str; + } + + static class User { + @JsonProperty String name; + @JsonProperty String profile_sidebar_border_color; + @JsonProperty boolean profile_background_tile; + @JsonProperty String profile_sidebar_fill_color; + @JsonProperty Date created_at; + @JsonProperty String location; + @JsonProperty String profile_image_url; + @JsonProperty boolean follow_request_sent; + @JsonProperty String profile_link_color; + @JsonProperty boolean is_translator; + @JsonProperty String id_str; + @JsonProperty int favourites_count; + @JsonProperty boolean contributors_enabled; + @JsonProperty String url; + @JsonProperty boolean default_profile; + @JsonProperty long utc_offset; + @JsonProperty long id; + @JsonProperty boolean profile_use_background_image; + @JsonProperty int listed_count; + @JsonProperty String lang; + @JsonProperty("protected") @SerializedName("protected") boolean isProtected; + @JsonProperty int followers_count; + @JsonProperty String profile_text_color; + @JsonProperty String profile_background_color; + @JsonProperty String time_zone; + @JsonProperty String description; + @JsonProperty boolean notifications; + @JsonProperty boolean geo_enabled; + @JsonProperty boolean verified; + @JsonProperty String profile_background_image_url; + @JsonProperty boolean defalut_profile_image; + @JsonProperty int friends_count; + @JsonProperty int statuses_count; + @JsonProperty String screen_name; + @JsonProperty boolean following; + @JsonProperty boolean show_all_inline_media; + } + + static class Feed { + @JsonProperty String id; + @JsonProperty String title; + @JsonProperty String description; + @JsonProperty("alternate") @SerializedName("alternate") List alternates; + @JsonProperty long updated; + @JsonProperty List items; + + @Override public String toString() { + StringBuilder result = new StringBuilder() + .append(id) + .append("\n").append(title) + .append("\n").append(description) + .append("\n").append(alternates) + .append("\n").append(updated); + int i = 1; + for (Item item : items) { + result.append(i++).append(": ").append(item).append("\n\n"); + } + return result.toString(); + } + } + + static class Link { + @JsonProperty String href; + + @Override public String toString() { + return href; + } + } + + static class Item { + @JsonProperty List categories; + @JsonProperty String title; + @JsonProperty long published; + @JsonProperty long updated; + @JsonProperty("alternate") @SerializedName("alternate") List alternates; + @JsonProperty Content content; + @JsonProperty String author; + @JsonProperty List likingUsers; + + @Override public String toString() { + return title + + "\nauthor: " + author + + "\npublished: " + published + + "\nupdated: " + updated + + "\n" + content + + "\nliking users: " + likingUsers + + "\nalternates: " + alternates + + "\ncategories: " + categories; + } + } + + static class Content { + @JsonProperty String content; + + @Override public String toString() { + return content; + } + } + + static class ReaderUser { + @JsonProperty String userId; + + @Override public String toString() { + return userId; + } + } +} diff --git a/metrics/src/main/java/com/google/gson/metrics/ParseBenchmarkData.zip b/metrics/src/main/java/com/google/gson/metrics/ParseBenchmarkData.zip new file mode 100644 index 0000000000000000000000000000000000000000..58e08bb504761c1f54900a98d6e3a0d2ac41be83 GIT binary patch literal 67881 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�N$Nz?PXwhGqXoR5yb=)f{mU; zm_v2KQt@bymf$qIr9`?)@8x?!p$`V+crtlbZ{(NPDVvciPxFc4=i4|nYgI{PnAogr z6AUvUB{Hm*XO;N)aU8BTNXlZ|nuEsI@;Z77F}?ApY;m)pJ!z~PBBxXkbbrqXh&2YY}djq)DJ5*QM*u&-3K^%iZocM58 z#5p7+U_mC1Qa06iqC8Qh&O#ExUGvbgY~e<>-`C3B64iuTn6#g@4HW1d)L#mmCmF$7 zczp>xRgv2#CW`7tEUec@uOVXW_LhdX(lorlx~^M%DzRwibHjp5@chz!rpCd1dkOt+ zN$<`z_%NLi_iiE1?O~?Fy4g9>^N#f)3z{}6F)8LGCt?~HF;ilKmjHEoPMD7oZdq zx0S*Y`VxwHA7HDx2~(KdI8`c-uQ=FNguK(AlL;(a;kyD!N?(aoTum(zZL6#cvD21o zdXc|v>VJXvW$X<#*znqP|DD;aP0j_tkNTk6(sqTa#iA#{d3uI~&T?jIiUZZW2K z@g@)p%Ud2+Chx||CcyGvXUy`o^goV!X3nsjIOdZ%YW~kBV{z5W