PerformanceΒΆ

python-rapidjson tries to be as performant as possible while staying compatible with the json module. Here are our current benchmarks:

  ujson simplejson rapidjson yajl
Array with 256 doubles        
Encode 13.81s 12.58s 1.82s 8.36s
Decode 2.00s 4.65s 2.19s 2.09s
         
Array with 256 utf-8 strings        
Encode 1.98s 2.36s 5.09s 1.45s
Decode 2.77s 13.58s 2.42s 7.19s
         
100 dictionaries of 100 arrays        
Encode 1.65s 5.20s 0.77s 2.09s
Decode 2.76s 3.86s 2.79s 3.47
         

To run these tests yourself, clone the repo and run:

$ tox -- -m benchmark

Caution

The benchmarks may require several Gigs of memory!

You can skip the benchmarks while running the test suite with:

$ tox -- -m '"not benchmark"'