Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
quick and dirty performance comparison of two json parsers.
C++ C Other
branch: master
Failed to load latest commit information.
rapidjson initial commit drop summary of test on arch linux into readme
pass.unicode.json initial commit
test_file.json initial commit
test_file2.json initial commit

A quick and dirty comparison of rapidjson vs yajl for pretty printing of JSON.

compiling rapidjson:

$ cd rapidjson/examples/pretty
$ g++ -O3 -o pretty -I rapidjson/include rapidjson/example/pretty/pretty.cpp

just get json_reformat from the yajl package from your package management system.

Comparison of pretty printing for test_file.json:

[lth@lloydpro rapidjson_vs_yajl]$ time json_reformat < test_file.json  > /dev/null
real          0m0.119s
user          0m0.113s
sys           0m0.004s
[lth@lloydpro rapidjson_vs_yajl]$ time ./pretty < test_file.json  > /dev/null
real          0m0.175s
user          0m0.168s
sys           0m0.005s
[lth@lloydpro rapidjson_vs_yajl]$ time cat < test_file.json > /dev/null
real          0m0.006s
user          0m0.001s
sys           0m0.005s

Comparison of pretty printing for test_file2.json:

[lth@lloydpro rapidjson_vs_yajl]$ time ./pretty < test_file2.json  > /dev/null
real          0m0.119s
user          0m0.113s
sys           0m0.005s
[lth@lloydpro rapidjson_vs_yajl]$ time json_reformat < test_file2.json  > /dev/null
real          0m0.105s
user          0m0.099s
sys           0m0.004s
[lth@lloydpro rapidjson_vs_yajl]$ time cat < test_file2.json > /dev/null
real          0m0.006s
user          0m0.001s
sys           0m0.004s


For pretty printing, on osx 10.7, for these two data files, YAJL is 31% faster than rapidjson.

math: (/ (+ (- (/ 113 99.0) 1) (- (/ 168 113.0) 1)) 2.0)

Oh. and cat is a couple orders of magnitude faster than either.

UPDATE: on 64 bit arch linux, yajl is ~80% faster using the same methodology.

Something went wrong with that request. Please try again.