Skip to main content

benchmark of ssrJSON

Project description

ssrJSON-benchmark

PyPI - Version PyPI - Wheel

The ssrJSON benchmark repository.

Benchmark Results

The benchmark results can be found in website results or GitHub results. Contributing your benchmark result is welcomed.

Quick jump for

Usage

pip install ssrjson-benchmark[all]  # Install all dependencies for benchmarking and printing PDF / Markdown
# pip install ssrjson-benchmark[benchmark]  # Only install third-party JSON libraries for benchmarking
# pip install ssrjson-benchmark[visual]  # Only install dependencies for generating PDF / Markdown report
# pip install ssrjson-benchmark  # Clean install without any dependency
python -m ssrjson_benchmark full -h # Run benchmark + generate PDF report in one command
# python -m ssrjson_benchmark benchmark -h  # Run benchmark and generate JSON benchmark result
# python -m ssrjson_benchmark print -h # Generate report from previously saved JSON benchmark result

Notes

  • This repository conducts benchmarking using json, ujson,pydantic, msgspec, orjson, and ssrJSON. The benchmark for dumps_to_str aims to produce a str object. If a JSON library's dumps-related interface only outputs a bytes object, it will be substituted with dumps followed by a single decode("utf-8") operation. Similarly, for the dumps_to_bytes test, if the JSON library's dumps-related interface only outputs a str object, it will be replaced with dumps followed by a single encode("utf-8") operation.
  • To ensure the accuracy of benchmark results, this repository differentiates between scenarios with and without UTF-8 caches when testing dumps_to_bytes. For dumps_to_str and loads, since these methods are unrelated to encoding str objects to UTF-8, the data sources do not involve any UTF-8 cache, and no distinction is made in their tests.
    • Cache writing of ssrJSON is disabled globally when running benchmark.
    • We use orjson.dumps to create UTF-8 cache for all benchmark targets.
    • Test with UTF-8 cache is skipped when the whole JSON object is ASCII.
  • The performance of JSON encoding is primarily constrained by the speed of writing to the buffer, whereas decoding performance is mainly limited by the frequent invocation of CPython interfaces for object creation. During decoding, both ssrJSON and orjson employ short key caching to reduce the number of object creations, and this caching mechanism is global in both libraries. As a result, decoding benchmark tests may not accurately reflect the conditions encountered in real-world production environments.
  • The files simple_object.json and simple_object_zh.json do not represent real-world data; they are used to compare the performance of the fast path. Therefore, the benchmark results from these test cases should not be interpreted as indicative of actual performance in production environment.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ssrjson_benchmark-0.0.11.tar.gz (967.9 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

ssrjson_benchmark-0.0.11-cp314-cp314t-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.14tWindows x86-64

ssrjson_benchmark-0.0.11-cp314-cp314t-manylinux_2_38_x86_64.whl (15.6 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.38+ x86-64

ssrjson_benchmark-0.0.11-cp314-cp314-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.14Windows x86-64

ssrjson_benchmark-0.0.11-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

ssrjson_benchmark-0.0.11-cp313-cp313-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.13Windows x86-64

ssrjson_benchmark-0.0.11-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

ssrjson_benchmark-0.0.11-cp312-cp312-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.12Windows x86-64

ssrjson_benchmark-0.0.11-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

ssrjson_benchmark-0.0.11-cp311-cp311-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.11Windows x86-64

ssrjson_benchmark-0.0.11-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (999.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

ssrjson_benchmark-0.0.11-cp310-cp310-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.10Windows x86-64

ssrjson_benchmark-0.0.11-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (999.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

File details

Details for the file ssrjson_benchmark-0.0.11.tar.gz.

File metadata

  • Download URL: ssrjson_benchmark-0.0.11.tar.gz
  • Upload date:
  • Size: 967.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ssrjson_benchmark-0.0.11.tar.gz
Algorithm Hash digest
SHA256 76d735ec9cc11a0c0316105462c713d86082fa358d3f80ff31b5733697a337dd
MD5 20a5cf0c9e09dae93d10f489acb3bda7
BLAKE2b-256 67bfe536c65b44fc3d17b10a8634d55de774940daaa4da96a75940d07891a0d9

See more details on using hashes here.

Provenance

The following attestation bundles were made for ssrjson_benchmark-0.0.11.tar.gz:

Publisher: release-wheel.yaml on Nambers/ssrJSON-benchmark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ssrjson_benchmark-0.0.11-cp314-cp314t-win_amd64.whl.

File metadata

File hashes

Hashes for ssrjson_benchmark-0.0.11-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 fae64cae6392850d2d4b6d3f89e9b61b248e02b9baf803565006a703482cfdae
MD5 b5d83d4201680124cf69a532874fa03b
BLAKE2b-256 c27330c79011e497b0d6ad4670eb1c931fdea884bc4f2f6005bf2e11ef135956

See more details on using hashes here.

Provenance

The following attestation bundles were made for ssrjson_benchmark-0.0.11-cp314-cp314t-win_amd64.whl:

Publisher: release-wheel.yaml on Nambers/ssrJSON-benchmark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ssrjson_benchmark-0.0.11-cp314-cp314t-manylinux_2_38_x86_64.whl.

File metadata

File hashes

Hashes for ssrjson_benchmark-0.0.11-cp314-cp314t-manylinux_2_38_x86_64.whl
Algorithm Hash digest
SHA256 ff9ca0a8506c904a0fb8685be486810df6a83a56abb7a347d962f0810d32009a
MD5 1b01b546ba34b29ac37ec5cbcf128c64
BLAKE2b-256 032d578d127932b2fe4a0ed83848321c80639ec01c28727f3eb913324ac8077f

See more details on using hashes here.

Provenance

The following attestation bundles were made for ssrjson_benchmark-0.0.11-cp314-cp314t-manylinux_2_38_x86_64.whl:

Publisher: release-wheel.yaml on Nambers/ssrJSON-benchmark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ssrjson_benchmark-0.0.11-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for ssrjson_benchmark-0.0.11-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 c911e3c86aa8f1563058da8c1f6d59df7af906b3b421c353bdb879099c774a0d
MD5 c56272a2ecb367656c45f5a681b2cdec
BLAKE2b-256 490e3b86e27355ad496346344fb089ea29b88510bcb6170e57017030f23b3792

See more details on using hashes here.

Provenance

The following attestation bundles were made for ssrjson_benchmark-0.0.11-cp314-cp314-win_amd64.whl:

Publisher: release-wheel.yaml on Nambers/ssrJSON-benchmark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ssrjson_benchmark-0.0.11-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for ssrjson_benchmark-0.0.11-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 dfc4780b86247fc86aed9f3dcfb68ded3ad4331edb02a6d0b2c334c0eda7b4da
MD5 f8bd55f12ba896e571819eb97383f08a
BLAKE2b-256 41a258af0bf339acc2aac3cbf3b8279a40af4abe52f0d6048abf0ee1cde18eaf

See more details on using hashes here.

Provenance

The following attestation bundles were made for ssrjson_benchmark-0.0.11-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl:

Publisher: release-wheel.yaml on Nambers/ssrJSON-benchmark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ssrjson_benchmark-0.0.11-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for ssrjson_benchmark-0.0.11-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 0914aebf7c9aba2a1851622a880b1dbbc73ab2a88c5ec1b602af6f69694a4074
MD5 b86aca854780722d3e64ef2423b2f332
BLAKE2b-256 68ff2b1ef2d4ab6722f2a5161703871298fe271b739ce3a01ee818df9bca3f07

See more details on using hashes here.

Provenance

The following attestation bundles were made for ssrjson_benchmark-0.0.11-cp313-cp313-win_amd64.whl:

Publisher: release-wheel.yaml on Nambers/ssrJSON-benchmark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ssrjson_benchmark-0.0.11-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for ssrjson_benchmark-0.0.11-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 3d307f9c67891cb9429efefc2a353c79e766211e63e3f4158117982dda6678ed
MD5 c5f710121dabf0a63d0cdacda5f8c73f
BLAKE2b-256 8d1179ccf822c98f30d736cbd9002e39efcb0cf03b9f6bc42513fd69758cb6f0

See more details on using hashes here.

Provenance

The following attestation bundles were made for ssrjson_benchmark-0.0.11-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl:

Publisher: release-wheel.yaml on Nambers/ssrJSON-benchmark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ssrjson_benchmark-0.0.11-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for ssrjson_benchmark-0.0.11-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 437ec83e5d28755e051af9afef92bd6df755f0663916d087b1776c34364b2827
MD5 b63722902a0fbd3cabc4ffe613120091
BLAKE2b-256 f2dcbb07028cd15b018c9c37dcd98b858d4c80f1a4b6c7118aa64c12da70e623

See more details on using hashes here.

Provenance

The following attestation bundles were made for ssrjson_benchmark-0.0.11-cp312-cp312-win_amd64.whl:

Publisher: release-wheel.yaml on Nambers/ssrJSON-benchmark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ssrjson_benchmark-0.0.11-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for ssrjson_benchmark-0.0.11-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 3f4628da3d682eb459cd705edf7a65a02d157ea50b3b510ffc9d72113860b07a
MD5 7540a7dd7fb5e8fc49856c945d46207f
BLAKE2b-256 f408efb78bff09a77cff748c8409063622e086ab4eabde2ad61d63393d565205

See more details on using hashes here.

Provenance

The following attestation bundles were made for ssrjson_benchmark-0.0.11-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl:

Publisher: release-wheel.yaml on Nambers/ssrJSON-benchmark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ssrjson_benchmark-0.0.11-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for ssrjson_benchmark-0.0.11-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 52fad1e419a9ea304c401ecf3c2c6710f9f682f7dd7492390721d0673f379a79
MD5 299815cf46b02438746dde24cd83fd54
BLAKE2b-256 8eae0f0f8a553d4221ccb5b7c4c4ae844918f5fddf4c3f48c02f005bb5474586

See more details on using hashes here.

Provenance

The following attestation bundles were made for ssrjson_benchmark-0.0.11-cp311-cp311-win_amd64.whl:

Publisher: release-wheel.yaml on Nambers/ssrJSON-benchmark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ssrjson_benchmark-0.0.11-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for ssrjson_benchmark-0.0.11-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 529f8f4ca5e61b72a97a22611946491b6cdbbb6a4ad6d6ccef7e1f3b5044d3cc
MD5 3fc690b2c1d4e3e6b7e62d83bf5fd496
BLAKE2b-256 73e9aacfb6a26c06b46bc148bf45cf1a5dc96fe15b3edc1f83951a995880fd12

See more details on using hashes here.

Provenance

The following attestation bundles were made for ssrjson_benchmark-0.0.11-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl:

Publisher: release-wheel.yaml on Nambers/ssrJSON-benchmark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ssrjson_benchmark-0.0.11-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for ssrjson_benchmark-0.0.11-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 1c492a859fa9cb027dbd6e0883d40386dfbbd7a668cdfea06893ff36ce4b8e8c
MD5 ca9ac04d23839030ce80e7237e3afafd
BLAKE2b-256 5d33c9115c37c70b3551e54bd009ab398950a43dd31cd8e325edfb2bc30de16e

See more details on using hashes here.

Provenance

The following attestation bundles were made for ssrjson_benchmark-0.0.11-cp310-cp310-win_amd64.whl:

Publisher: release-wheel.yaml on Nambers/ssrJSON-benchmark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ssrjson_benchmark-0.0.11-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for ssrjson_benchmark-0.0.11-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 cb0e56bc9e817e083e3c69e81f131c508ec3011f14c9a2469592cef1f8918233
MD5 752f5ce836a6bbf5ddeb6b119081d656
BLAKE2b-256 f80fd4e16770f31dbb4d2b79720967039667870232b2dd757096eda46ce5ca67

See more details on using hashes here.

Provenance

The following attestation bundles were made for ssrjson_benchmark-0.0.11-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl:

Publisher: release-wheel.yaml on Nambers/ssrJSON-benchmark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page