Skip to content

Commit 3b95408

Browse files
committed
merge into a smaller # of benchmarks by size
1 parent 41d2855 commit 3b95408

File tree

2 files changed

+169
-120
lines changed

2 files changed

+169
-120
lines changed

doc/benchmarks.rst

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -79,25 +79,25 @@ if available.
7979
base64
8080
------
8181

82-
Benchmark the ``base64`` module's encoding and decoding functions across
83-
various data sizes (20 bytes, 127 bytes, 3 KB, and 100 KB).
82+
Benchmark the ``base64`` module's encoding and decoding functions. Each
83+
algorithm has ``_small`` and ``_large`` variants that test both encode and
84+
decode in a single benchmark:
85+
86+
* ``_small``: Balanced iterations across tiny (20B), small (127B), medium (3KB),
87+
and 9KB data sizes
88+
* ``_large``: Large data focus with 100KB x 10 iterations plus 1MB x 1 iteration
8489

8590
Available benchmarks:
8691

87-
* ``base64_encode``: Standard Base64 encoding (``b64encode``)
88-
* ``base64_decode``: Standard Base64 decoding (``b64decode``)
89-
* ``base64_decode_validate``: Base64 decoding with ``validate=True``
90-
* ``urlsafe_base64_encode``: URL-safe Base64 encoding (``urlsafe_b64encode``)
91-
* ``urlsafe_base64_decode``: URL-safe Base64 decoding (``urlsafe_b64decode``)
92-
* ``base32_encode``: Base32 encoding (``b32encode``)
93-
* ``base32_decode``: Base32 decoding (``b32decode``)
94-
* ``base16_encode``: Base16/hex encoding (``b16encode``)
95-
* ``base16_decode``: Base16/hex decoding (``b16decode``)
96-
* ``ascii85_encode``: Ascii85 encoding (``a85encode``)
97-
* ``ascii85_decode``: Ascii85 decoding (``a85decode``)
98-
* ``ascii85_encode_wrapcol``: Ascii85 encoding with ``wrapcol=76``
99-
* ``base85_encode``: Base85 encoding (``b85encode``)
100-
* ``base85_decode``: Base85 decoding (``b85decode``)
92+
* ``base64_small``, ``base64_large``: Standard Base64 encoding and decoding
93+
(includes ``validate=True`` code path)
94+
* ``urlsafe_base64_small``: URL-safe Base64 (small only, as URLs shouldn't
95+
contain huge data)
96+
* ``base32_small``, ``base32_large``: Base32 encoding and decoding
97+
* ``base16_small``, ``base16_large``: Base16/hex encoding and decoding
98+
* ``ascii85_small``, ``ascii85_large``: Ascii85 encoding and decoding
99+
(includes ``wrapcol=76`` code path)
100+
* ``base85_small``, ``base85_large``: Base85 encoding and decoding
101101

102102
See the `base64 module <https://docs.python.org/dev/library/base64.html>`_.
103103

0 commit comments

Comments
 (0)