Skip to content

Benchmark status

Richard Hightower edited this page Mar 12, 2023 · 4 revisions

Benchamrk Jackson vs. JParse on 4/11/2023

Benchmark                            Mode  Cnt        Score   Error  Units
BenchMark.readGlossaryJParseFast    thrpt    2  1046168.418          ops/s
BenchMark.readGlossaryJParseStrict  thrpt    2   834228.472          ops/s
BenchMark.readGlossaryJackson       thrpt    2   480766.582          ops/s
BenchMark.readGlossaryJsonIter      thrpt    2   518097.711          ops/s

BenchMark.readWebJSONJParseFast     thrpt    2   239626.169          ops/s
BenchMark.readWebJSONJParseStrict   thrpt    2   221463.913          ops/s
BenchMark.readWebJsonJackson        thrpt    2   107875.826          ops/s
BenchMark.readWebJsonJsonIter       thrpt    2   119422.797          ops/s


Benchmark                          Mode  Cnt        Score   Error  Units
BenchMark.jParseFastFloatArray    thrpt    2   905004.563          ops/s
BenchMark.jParseStrictFloatArray  thrpt    2   794882.120          ops/s
BenchMark.jacksonFloatArray       thrpt    2   474279.220          ops/s
BenchMark.jsonIteratorFloatArray  thrpt    2   555286.375          ops/s


BenchMark.jParseFastLongArray     thrpt    2  1648877.964          ops/s
BenchMark.jacksonLongArray        thrpt    2  1138840.199          ops/s
BenchMark.jParseStrictLongArray   thrpt    2   999877.457          ops/s
BenchMark.jsonIteratorLongArray   thrpt    2   627151.074          ops/s

Benchamrk Jackson vs. JParse on 4/5/2023


Full suite with Jackson vs JParse with some tuning 

Benchmark                               Mode  Cnt        Score   Error  Units
BenchMark.jParseFastBigDecimalArray    thrpt    2  1215124.826          ops/s
BenchMark.jParseStrictBigDecimalArray  thrpt    2  1039492.869          ops/s
BenchMark.jacksonBigDecimalArray       thrpt    2   690981.569          ops/s

BenchMark.jParseFastBigIntArray        thrpt    2   912159.889          ops/s
BenchMark.jacksonBigIntArray           thrpt    2   897758.697          ops/s
BenchMark.jParseStrictBigIntArray      thrpt    2   682459.819          ops/s

BenchMark.jParseFastDoubleArrayFast    thrpt    2   908428.768          ops/s
BenchMark.jParseStrictDoubleArrayFast  thrpt    2   803214.061          ops/s
BenchMark.jParseFastDoubleArray        thrpt    2   790712.225          ops/s
BenchMark.jParseStrictDoubleArray      thrpt    2   699304.157          ops/s
BenchMark.jacksonDoubleArray           thrpt    2   647033.152          ops/s

BenchMark.jParseFastFloatArrayFast     thrpt    2   901698.329          ops/s
BenchMark.jParseStrictFloatArrayFast   thrpt    2   812076.799          ops/s
BenchMark.jParseFastFloatArray         thrpt    2   778261.188          ops/s
BenchMark.jParseStrictFloatArray       thrpt    2   707744.269          ops/s
BenchMark.jacksonFloatArray            thrpt    2   484756.380          ops/s

BenchMark.jParseFastIntArray           thrpt    2  1530011.397          ops/s
BenchMark.jacksonIntArray              thrpt    2  1155919.401          ops/s
BenchMark.jParseStrictIntArray         thrpt    2  1028120.461          ops/s
BenchMark.jParseFastIntArrayFast       thrpt    2   967096.072          ops/s
BenchMark.jParseStrictIntArrayFast     thrpt    2   727882.654          ops/s

BenchMark.jParseFastLongArray          thrpt    2  1591470.201          ops/s
BenchMark.jacksonLongArray             thrpt    2  1073341.474          ops/s
BenchMark.jParseStrictLongArray        thrpt    2  1000679.844          ops/s
BenchMark.jParseFastLongArrayFast      thrpt    2   971806.552          ops/s
BenchMark.jParseStrictLongArrayFast    thrpt    2   707145.346          ops/s

JParse is faster than Jackson with every type of number array parses, including all primitives. 

Benchmarks after compliance and adding a fast mode for string encode 4/2/2023

Benchmark                                 Mode  Cnt        Score   Error  Units
BenchMark.readGlossaryEventFastJParse    thrpt    2  1544378.371          ops/s
BenchMark.readGlossaryEventStrictJParse  thrpt    2  1350973.258          ops/s
BenchMark.readGlossaryFastJParse         thrpt    2  1009812.240          ops/s
BenchMark.readGlossaryStrictJParse       thrpt    2   768033.147          ops/s
BenchMark.readNatsJsonGlossary           thrpt    2   263061.790          ops/s



Benchmark                                 Mode  Cnt        Score   Error  Units
BenchMark.readGlossaryEventFastJParse    thrpt    2  1529200.975          ops/s
BenchMark.readGlossaryEventStrictJParse  thrpt    2  1310883.760          ops/s
BenchMark.readGlossaryFastJParse         thrpt    2  1028468.789          ops/s
BenchMark.readGlossaryStrictJParse       thrpt    2   758091.145          ops/s
BenchMark.readNatsJsonGlossary           thrpt    2   257347.380          ops/s



Benchmark                                 Mode  Cnt        Score   Error  Units
BenchMark.readGlossaryEventFastJParse    thrpt    2  1519677.703          ops/s
BenchMark.readGlossaryEventStrictJParse  thrpt    2  1410075.141          ops/s
BenchMark.readGlossaryFastJParse         thrpt    2   991175.767          ops/s
BenchMark.readGlossaryStrictJParse       thrpt    2   795776.224          ops/s
BenchMark.readNatsJsonGlossary           thrpt    2   259346.737          ops/s

BenchMark after Token Type Enum refactor and improving error messages 2/15/2023

Benchmark                         Mode  Cnt       Score   Error  Units
BenchMark.readWebJSONJParse      thrpt    2  214720.377          ops/s
BenchMark.readWebJSONNoggitStax  thrpt    2  211375.573          ops/s


Benchmark                                      Mode  Cnt        Score   Error  Units
BenchMark.readGlossaryJParse                  thrpt    2  1034323.573          ops/s
BenchMark.readGlossaryJackson                 thrpt    2   468925.690          ops/s
BenchMark.readGlossaryNoggit                  thrpt    2   830511.356          ops/s
BenchMark.readWebGlossaryNoggitObjectBuilder  thrpt    2   541948.355          ops/s

Benchmark                          Mode  Cnt        Score   Error  Units
BenchMark.jParseBigDecimalArray   thrpt    2  1169605.828          ops/s
BenchMark.jParseDoubleArray       thrpt    2   792797.138          ops/s
BenchMark.jParseDoubleArrayFast   thrpt    2   941945.264          ops/s
BenchMark.jacksonBigDecimalArray  thrpt    2   702073.384          ops/s
BenchMark.jacksonDoubleArray      thrpt    2   631449.040          ops/s

Benchmark                        Mode  Cnt       Score   Error  Units
BenchMark.jParseFloatArray      thrpt    2  696615.529          ops/s
BenchMark.jParseFloatArrayFast  thrpt    2  907420.628          ops/s
BenchMark.jacksonFloatArray     thrpt    2  482510.441          ops/s

Benchmark                        Mode  Cnt       Score   Error  Units
BenchMark.jParseFloatArray      thrpt    2  778255.921          ops/s
BenchMark.jParseFloatArrayFast  thrpt    2  875096.548          ops/s
BenchMark.jacksonFloatArray     thrpt    2  465653.001          ops/s


Benchmark                       Mode  Cnt        Score   Error  Units
BenchMark.jParseBigIntArray    thrpt    2   934664.426          ops/s
BenchMark.jacksonBigIntArray   thrpt    2   932493.159          ops/s

BenchMark.jParseIntArray       thrpt    2  1625546.706          ops/s
BenchMark.jacksonIntArray      thrpt    2  1187126.168          ops/s

BenchMark.jParseLongArray      thrpt    2  1588664.028          ops/s
BenchMark.jacksonLongArray     thrpt    2  1142003.413          ops/s


Benchmark                                                    Mode  Cnt       Score   Error  Units
BenchMark.deserializeIntoMapJParseAndGetPathThenSerialize   thrpt    2  737778.017          ops/s
BenchMark.deserializeIntoMapJacksonAndGetPathThenSerialize  thrpt    2  278654.871          ops/s

BenchMark.jparsePathGrabWebXML                              thrpt    2  143232.868          ops/s
BenchMark.jaywayPathGrabWebXML                              thrpt    2  110607.658          ops/s

BenchMark.jparsePathGrabGlossary                            thrpt    2  423813.900          ops/s
BenchMark.jaywayThenPathGrabGlossary                        thrpt    2  362598.671          ops/s
BenchMark.jacksonPathGrabGlossary                           thrpt    2  281671.761          ops/s
Clone this wiki locally