[WIP] Implement OpenAPI framing support - #2799
Draft
jviotti wants to merge 29 commits into
Draft
Conversation
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
jviotti
force-pushed
the
openapi-simple
branch
from
September 8, 2026 19:28
a646a0a to
4d74440
Compare
There was a problem hiding this comment.
Benchmark (linux/llvm)
Details
| Benchmark suite | Current: 26efeab | Previous: 555819e | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.523162662657478 ns/iter |
2.520648313810275 ns/iter |
1.00 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.4917515763546962 ns/iter |
2.492154963350404 ns/iter |
1.00 |
Regex_Period_Asterisk |
2.4914819340108845 ns/iter |
2.4902046571565455 ns/iter |
1.00 |
Regex_Group_Period_Asterisk_Group |
2.49136839252711 ns/iter |
2.501630343684446 ns/iter |
1.00 |
Regex_Period_Plus |
3.1217641040148822 ns/iter |
2.8174989155061447 ns/iter |
1.11 |
Regex_Period |
3.1151271666431732 ns/iter |
2.8330627582731767 ns/iter |
1.10 |
Regex_Caret_Period_Plus_Dollar |
3.1136111422357824 ns/iter |
2.8010359334416286 ns/iter |
1.11 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
3.1150453641640046 ns/iter |
2.801961206642616 ns/iter |
1.11 |
Regex_Caret_Period_Asterisk_Dollar |
3.7354309880257643 ns/iter |
2.502478164288797 ns/iter |
1.49 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
3.735335111273106 ns/iter |
2.5044749035807654 ns/iter |
1.49 |
Regex_Caret_X_Hyphen |
6.381717641845321 ns/iter |
5.921639383531097 ns/iter |
1.08 |
Regex_Period_Md_Dollar |
27.44618312492972 ns/iter |
27.464516393882672 ns/iter |
1.00 |
Regex_Caret_Slash_Period_Asterisk |
6.53610098169381 ns/iter |
6.537251297352928 ns/iter |
1.00 |
Regex_Caret_Period_Range_Dollar |
3.1139854459845213 ns/iter |
4.411904434545961 ns/iter |
0.71 |
Regex_Nested_Backtrack |
42.73765772660054 ns/iter |
43.824185832633255 ns/iter |
0.98 |
JSON_Array_Of_Objects_Unique |
455.24218103637025 ns/iter |
450.796854207979 ns/iter |
1.01 |
JSON_Parse_1 |
4475.588037364048 ns/iter |
4451.3365265583525 ns/iter |
1.01 |
JSON_Parse_Real |
5043.113726134664 ns/iter |
5055.3781307402 ns/iter |
1.00 |
JSON_Parse_Decimal |
7108.151559498633 ns/iter |
7345.52291139373 ns/iter |
0.97 |
JSON_Parse_Schema_ISO_Language |
3206177.009216471 ns/iter |
3211731.301369818 ns/iter |
1.00 |
JSON_Parse_Integer |
3655.778766222738 ns/iter |
3651.892651176413 ns/iter |
1.00 |
JSON_Parse_String_NonSSO_Plain |
3094.9192525300978 ns/iter |
2994.7084026979505 ns/iter |
1.03 |
JSON_Parse_String_SSO_Plain |
2646.83127453619 ns/iter |
2573.5800502841503 ns/iter |
1.03 |
JSON_Parse_String_Escape_Heavy |
12120.308344875222 ns/iter |
12029.601750283697 ns/iter |
1.01 |
JSON_Parse_Object_Short_Keys |
7993.405121703135 ns/iter |
7963.33893093405 ns/iter |
1.00 |
JSON_Parse_Object_Scalar_Properties |
4336.286799101902 ns/iter |
4071.0306102235672 ns/iter |
1.07 |
JSON_Parse_Object_Array_Properties |
5293.671666073933 ns/iter |
5321.643962344553 ns/iter |
0.99 |
JSON_Parse_Object_Object_Properties |
5282.973524611804 ns/iter |
5239.872622366402 ns/iter |
1.01 |
JSON_Parse_Nested_Containers |
34593.98104094988 ns/iter |
34842.482095853506 ns/iter |
0.99 |
JSON_From_String_Copy |
10.95284493248913 ns/iter |
11.406957521221914 ns/iter |
0.96 |
JSON_From_String_Temporary |
10.290040570675727 ns/iter |
9.961338588913934 ns/iter |
1.03 |
JSON_Number_To_Double |
22.8773347724607 ns/iter |
22.778843880494577 ns/iter |
1.00 |
JSON_Object_At_Last_Key/8 |
3.9236954872916163 ns/iter |
3.92907237672441 ns/iter |
1.00 |
JSON_Object_At_Last_Key/32 |
12.265552464839285 ns/iter |
12.292281569407479 ns/iter |
1.00 |
JSON_Object_At_Last_Key/128 |
49.27677673654963 ns/iter |
49.23623050406591 ns/iter |
1.00 |
JSON_Object_At_Last_Key/512 |
384.2906507967069 ns/iter |
383.0596007056043 ns/iter |
1.00 |
JSON_Fast_Hash_Helm_Chart_Lock |
60.31895944516599 ns/iter |
54.461439509967846 ns/iter |
1.11 |
JSON_Equality_Helm_Chart_Lock |
158.94214246945583 ns/iter |
158.04620006100575 ns/iter |
1.01 |
JSON_Divisible_By_Decimal |
251.6830760011248 ns/iter |
246.2580835865277 ns/iter |
1.02 |
JSON_String_Equal/10 |
5.922612010273094 ns/iter |
5.925140503570389 ns/iter |
1.00 |
JSON_String_Equal/100 |
6.555765516802164 ns/iter |
6.5486340532325125 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.940268102643996 ns/iter |
0.9351937273035424 ns/iter |
1.01 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
10.586519113729915 ns/iter |
10.58156944575262 ns/iter |
1.00 |
JSON_String_Fast_Hash/10 |
2.181016264823211 ns/iter |
2.179923742940718 ns/iter |
1.00 |
JSON_String_Fast_Hash/100 |
2.18084195067408 ns/iter |
2.191173555307514 ns/iter |
1.00 |
JSON_String_Key_Hash/10 |
2.183869503593303 ns/iter |
2.1912189442173005 ns/iter |
1.00 |
JSON_String_Key_Hash/100 |
6.539799680558304 ns/iter |
6.537577110730131 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Same_Length |
3.4396719130199793 ns/iter |
3.4231515819273732 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Small |
3.1260014267868272 ns/iter |
2.9600628339169317 ns/iter |
1.06 |
JSON_Object_Defines_Miss_Too_Large |
2.7488223855891647 ns/iter |
2.6331304569709664 ns/iter |
1.04 |
Pointer_Object_Traverse |
28.34778498210045 ns/iter |
28.605666730383266 ns/iter |
0.99 |
Pointer_Object_Try_Traverse |
30.675887245257307 ns/iter |
30.6243315015192 ns/iter |
1.00 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
147.0850181480428 ns/iter |
147.68477194804254 ns/iter |
1.00 |
Pointer_Walker_Schema_ISO_Language |
1525982.0353201167 ns/iter |
1494137.0521739211 ns/iter |
1.02 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1277552.9307832096 ns/iter |
1282689.450367691 ns/iter |
1.00 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1656970.5095693364 ns/iter |
1660481.3301662563 ns/iter |
1.00 |
Pointer_Position_Tracker_Get_Deeply_Nested |
631.3302935067843 ns/iter |
630.438380242883 ns/iter |
1.00 |
JSONPath_Descendant_Filter_Nested |
1544.3649102904826 ns/iter |
1536.284042403736 ns/iter |
1.01 |
URITemplateRouter_Create |
23636.07896424912 ns/iter |
24235.400436803076 ns/iter |
0.98 |
URITemplateRouter_Match |
178.21389260043784 ns/iter |
170.91962414079666 ns/iter |
1.04 |
URITemplateRouter_Match_BasePath |
208.00130913688926 ns/iter |
202.86433681123563 ns/iter |
1.03 |
URITemplateRouterView_Restore |
8508.443540647007 ns/iter |
8537.283897801648 ns/iter |
1.00 |
URITemplateRouterView_Match |
141.83561976899716 ns/iter |
142.1560817622488 ns/iter |
1.00 |
URITemplateRouterView_Match_BasePath |
162.48515271306718 ns/iter |
162.59289095636248 ns/iter |
1.00 |
URITemplateRouterView_Arguments |
438.6643197447867 ns/iter |
431.0586211049741 ns/iter |
1.02 |
JSONL_Parse_Large |
9025495.493506538 ns/iter |
9302274.973684257 ns/iter |
0.97 |
JSONL_Parse_Large_GZIP |
10557307.848485338 ns/iter |
10757300.646153785 ns/iter |
0.98 |
JSONLD_Catalog_Annotation_List_Populate |
584801.8188647645 ns/iter |
594543.5211505886 ns/iter |
0.98 |
JSONLD_Catalog_Materialize |
3424204.2352941865 ns/iter |
3439991.803921623 ns/iter |
1.00 |
HTML_Build_Table_100000 |
57821654.90909495 ns/iter |
57518887.54545576 ns/iter |
1.01 |
HTML_Render_Table_100000 |
1788928.7157621714 ns/iter |
1931662.4831460486 ns/iter |
0.93 |
GZIP_Compress_ISO_Language_Set_3_Locations |
32700199.136363816 ns/iter |
32525619.7272717 ns/iter |
1.01 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4070996.668604647 ns/iter |
4050534.947674313 ns/iter |
1.01 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1871085.6648936218 ns/iter |
1866862.0773332806 ns/iter |
1.00 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
355567.4091602941 ns/iter |
355628.1414090288 ns/iter |
1.00 |
JOSE_VerifySignature_RS256 |
60401.45041251057 ns/iter |
60289.425559380565 ns/iter |
1.00 |
JOSE_VerifySignature_ES512 |
2446114.1923075924 ns/iter |
2421156.055363302 ns/iter |
1.01 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Benchmark (linux/gcc)
Details
| Benchmark suite | Current: 551b053 | Previous: 307253a | Ratio |
|---|---|---|---|
JOSE_VerifySignature_RS256 |
22167.324085192784 ns/iter |
21124.50912736474 ns/iter |
1.05 |
JOSE_VerifySignature_ES512 |
584393.3695652034 ns/iter |
545324.2871595323 ns/iter |
1.07 |
GZIP_Compress_ISO_Language_Set_3_Locations |
36815997.78947262 ns/iter |
32406903.77272673 ns/iter |
1.14 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4469039.232704307 ns/iter |
5021383.484848592 ns/iter |
0.89 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2039292.1224490115 ns/iter |
2071749.1424332198 ns/iter |
0.98 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
382897.2957283591 ns/iter |
348085.60517155705 ns/iter |
1.10 |
HTML_Build_Table_100000 |
56358580.636366576 ns/iter |
54754428.90000011 ns/iter |
1.03 |
HTML_Render_Table_100000 |
2208438.0465837694 ns/iter |
2844880.897959117 ns/iter |
0.78 |
JSONLD_Catalog_Annotation_List_Populate |
697064.2378048496 ns/iter |
671535.6570881308 ns/iter |
1.04 |
JSONLD_Catalog_Materialize |
3607788.9739584513 ns/iter |
3328320.218009601 ns/iter |
1.08 |
JSONL_Parse_Large |
9851444.239436211 ns/iter |
9288097.013333451 ns/iter |
1.06 |
JSONL_Parse_Large_GZIP |
11188847.48387102 ns/iter |
10722967.81538503 ns/iter |
1.04 |
URITemplateRouter_Create |
21717.925869754738 ns/iter |
18434.716852100537 ns/iter |
1.18 |
URITemplateRouter_Match |
157.15852767615385 ns/iter |
146.7722387443369 ns/iter |
1.07 |
URITemplateRouter_Match_BasePath |
186.10001599577197 ns/iter |
165.77170091556772 ns/iter |
1.12 |
URITemplateRouterView_Restore |
8517.5235864126 ns/iter |
3682.6634270342465 ns/iter |
2.31 |
URITemplateRouterView_Match |
123.97948171248788 ns/iter |
116.59562772076373 ns/iter |
1.06 |
URITemplateRouterView_Match_BasePath |
143.8451739714475 ns/iter |
132.27295627205797 ns/iter |
1.09 |
URITemplateRouterView_Arguments |
482.41330979581477 ns/iter |
541.6550884092952 ns/iter |
0.89 |
JSONPath_Descendant_Filter_Nested |
1632.6893499856915 ns/iter |
1571.1625067396114 ns/iter |
1.04 |
Pointer_Object_Traverse |
23.0187950244494 ns/iter |
25.043286691793668 ns/iter |
0.92 |
Pointer_Object_Try_Traverse |
25.872937274036268 ns/iter |
26.290408966471762 ns/iter |
0.98 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
169.7339381491224 ns/iter |
128.25436124059536 ns/iter |
1.32 |
Pointer_Walker_Schema_ISO_Language |
1521218.898706937 ns/iter |
1736090.1670823107 ns/iter |
0.88 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1243683.6309314943 ns/iter |
1184081.7436333122 ns/iter |
1.05 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1695492.4591345845 ns/iter |
1939105.3833332863 ns/iter |
0.87 |
Pointer_Position_Tracker_Get_Deeply_Nested |
589.0993990928116 ns/iter |
623.7529411442937 ns/iter |
0.94 |
JSON_Array_Of_Objects_Unique |
464.29603113794553 ns/iter |
412.9048521144397 ns/iter |
1.12 |
JSON_Parse_1 |
5772.385652040844 ns/iter |
4796.112355336047 ns/iter |
1.20 |
JSON_Parse_Real |
5559.063293240266 ns/iter |
4901.035785847448 ns/iter |
1.13 |
JSON_Parse_Decimal |
10460.332591918568 ns/iter |
7765.6320263108055 ns/iter |
1.35 |
JSON_Parse_Schema_ISO_Language |
3671992.7578946897 ns/iter |
3384313.7766989986 ns/iter |
1.09 |
JSON_Parse_Integer |
3777.358013429385 ns/iter |
3602.478932960173 ns/iter |
1.05 |
JSON_Parse_String_NonSSO_Plain |
3479.006280270249 ns/iter |
3351.9925378849643 ns/iter |
1.04 |
JSON_Parse_String_SSO_Plain |
2994.8158788193596 ns/iter |
2587.686193313138 ns/iter |
1.16 |
JSON_Parse_String_Escape_Heavy |
16966.039427740554 ns/iter |
15963.069536499284 ns/iter |
1.06 |
JSON_Parse_Object_Short_Keys |
8573.337237677095 ns/iter |
7761.881524459389 ns/iter |
1.10 |
JSON_Parse_Object_Scalar_Properties |
4401.768920826936 ns/iter |
3915.1280097960516 ns/iter |
1.12 |
JSON_Parse_Object_Array_Properties |
6919.2379346029775 ns/iter |
5615.821101727825 ns/iter |
1.23 |
JSON_Parse_Object_Object_Properties |
6993.339226110793 ns/iter |
5540.633840047959 ns/iter |
1.26 |
JSON_Parse_Nested_Containers |
42737.28852619239 ns/iter |
35361.138439771945 ns/iter |
1.21 |
JSON_From_String_Copy |
8.582480585916397 ns/iter |
7.777571770547034 ns/iter |
1.10 |
JSON_From_String_Temporary |
7.698790815936714 ns/iter |
7.2586064657036165 ns/iter |
1.06 |
JSON_Number_To_Double |
19.998949814473267 ns/iter |
19.471846940483566 ns/iter |
1.03 |
JSON_Object_At_Last_Key/8 |
5.6163099879452965 ns/iter |
5.934625667717926 ns/iter |
0.95 |
JSON_Object_At_Last_Key/32 |
21.823156629084874 ns/iter |
19.59423966839971 ns/iter |
1.11 |
JSON_Object_At_Last_Key/128 |
87.64474944686192 ns/iter |
74.95884725229267 ns/iter |
1.17 |
JSON_Object_At_Last_Key/512 |
392.31887605326267 ns/iter |
304.56299502901174 ns/iter |
1.29 |
JSON_Fast_Hash_Helm_Chart_Lock |
75.60551360561142 ns/iter |
64.41990930415045 ns/iter |
1.17 |
JSON_Equality_Helm_Chart_Lock |
156.23370930074532 ns/iter |
126.13094210760553 ns/iter |
1.24 |
JSON_Divisible_By_Decimal |
280.83058531571123 ns/iter |
273.91439296509776 ns/iter |
1.03 |
JSON_String_Equal/10 |
5.063925531546742 ns/iter |
4.434693042407398 ns/iter |
1.14 |
JSON_String_Equal/100 |
5.861235048865435 ns/iter |
7.507871186136169 ns/iter |
0.78 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.6235231619273911 ns/iter |
0.8257918412646853 ns/iter |
0.76 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
25.21644599801655 ns/iter |
17.01464641173116 ns/iter |
1.48 |
JSON_String_Fast_Hash/10 |
3.1696662138043226 ns/iter |
3.091875619448593 ns/iter |
1.03 |
JSON_String_Fast_Hash/100 |
3.163567255293779 ns/iter |
3.097594517319751 ns/iter |
1.02 |
JSON_String_Key_Hash/10 |
1.2475226750318087 ns/iter |
1.4431988659208619 ns/iter |
0.86 |
JSON_String_Key_Hash/100 |
12.453749857995094 ns/iter |
11.840237035888435 ns/iter |
1.05 |
JSON_Object_Defines_Miss_Same_Length |
3.113797547286497 ns/iter |
2.9153684054553692 ns/iter |
1.07 |
JSON_Object_Defines_Miss_Too_Small |
3.515475049728266 ns/iter |
3.429351730183524 ns/iter |
1.03 |
JSON_Object_Defines_Miss_Too_Large |
3.2115046978540507 ns/iter |
2.9032866446745698 ns/iter |
1.11 |
Regex_Lower_S_Or_Upper_S_Asterisk |
0.641793767986458 ns/iter |
0.86505946018048 ns/iter |
0.74 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
0.6442413974405843 ns/iter |
0.8644839328625109 ns/iter |
0.75 |
Regex_Period_Asterisk |
0.62798593073746 ns/iter |
0.8653812215636244 ns/iter |
0.73 |
Regex_Group_Period_Asterisk_Group |
0.6232263984046023 ns/iter |
0.8650437104189088 ns/iter |
0.72 |
Regex_Period_Plus |
0.6238317916545768 ns/iter |
0.8652434728587546 ns/iter |
0.72 |
Regex_Period |
0.6590514644760381 ns/iter |
0.8645817338302227 ns/iter |
0.76 |
Regex_Caret_Period_Plus_Dollar |
0.6235159417771087 ns/iter |
0.8648171469886242 ns/iter |
0.72 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
0.6240073560824225 ns/iter |
0.8654462471597625 ns/iter |
0.72 |
Regex_Caret_Period_Asterisk_Dollar |
0.6247850150854573 ns/iter |
0.8649036695385133 ns/iter |
0.72 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
0.6246479442326538 ns/iter |
0.8654057185754322 ns/iter |
0.72 |
Regex_Caret_X_Hyphen |
3.740995237848763 ns/iter |
2.8843426716890006 ns/iter |
1.30 |
Regex_Period_Md_Dollar |
29.383752970969294 ns/iter |
22.69091451563375 ns/iter |
1.29 |
Regex_Caret_Slash_Period_Asterisk |
4.047347572846338 ns/iter |
2.8836638765671814 ns/iter |
1.40 |
Regex_Caret_Period_Range_Dollar |
1.2495465097022784 ns/iter |
1.4408901724973875 ns/iter |
0.87 |
Regex_Nested_Backtrack |
38.11462712038758 ns/iter |
37.346838230203616 ns/iter |
1.02 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Benchmark (windows/msvc)
Details
| Benchmark suite | Current: 551b053 | Previous: 307253a | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
5.108597999999915 ns/iter |
2.617790357142878 ns/iter |
1.95 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
5.022821999999678 ns/iter |
2.6217377208736132 ns/iter |
1.92 |
Regex_Period_Asterisk |
5.041338999999994 ns/iter |
2.5698617857143193 ns/iter |
1.96 |
Regex_Group_Period_Asterisk_Group |
5.083242000000041 ns/iter |
2.6116439708824415 ns/iter |
1.95 |
Regex_Period_Plus |
5.0675730000000385 ns/iter |
2.900379683615522 ns/iter |
1.75 |
Regex_Period |
5.022778999999673 ns/iter |
2.6353953994326185 ns/iter |
1.91 |
Regex_Caret_Period_Plus_Dollar |
5.227707000000237 ns/iter |
2.803769774282196 ns/iter |
1.86 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
5.024910999999861 ns/iter |
2.9395162907059955 ns/iter |
1.71 |
Regex_Caret_Period_Asterisk_Dollar |
5.06069000000025 ns/iter |
2.7250578770312 ns/iter |
1.86 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
5.021869000000265 ns/iter |
2.645095644959814 ns/iter |
1.90 |
Regex_Caret_X_Hyphen |
8.331601562499966 ns/iter |
6.543028571428521 ns/iter |
1.27 |
Regex_Period_Md_Dollar |
46.91113026621834 ns/iter |
30.9553660714279 ns/iter |
1.52 |
Regex_Caret_Slash_Period_Asterisk |
7.8474866071427085 ns/iter |
6.567862723213683 ns/iter |
1.19 |
Regex_Caret_Period_Range_Dollar |
5.6526214285713845 ns/iter |
3.142487183291524 ns/iter |
1.80 |
Regex_Nested_Backtrack |
57.926169642854575 ns/iter |
42.85303086744762 ns/iter |
1.35 |
JSON_Array_Of_Objects_Unique |
574.054799999999 ns/iter |
518.3275999999637 ns/iter |
1.11 |
JSON_Parse_1 |
9096.750907362668 ns/iter |
8461.63633198047 ns/iter |
1.08 |
JSON_Parse_Real |
16016.173545804515 ns/iter |
12505.585714285822 ns/iter |
1.28 |
JSON_Parse_Decimal |
11843.626785714077 ns/iter |
9210.395089285861 ns/iter |
1.29 |
JSON_Parse_Schema_ISO_Language |
7782981.111111237 ns/iter |
8184676.000000005 ns/iter |
0.95 |
JSON_Parse_Integer |
6269.868750000082 ns/iter |
4615.784856662832 ns/iter |
1.36 |
JSON_Parse_String_NonSSO_Plain |
8886.580417051451 ns/iter |
9657.56696428599 ns/iter |
0.92 |
JSON_Parse_String_SSO_Plain |
3874.3607600700316 ns/iter |
3038.1459821430412 ns/iter |
1.28 |
JSON_Parse_String_Escape_Heavy |
22741.68749999994 ns/iter |
23284.772491378935 ns/iter |
0.98 |
JSON_Parse_Object_Short_Keys |
13112.82142857197 ns/iter |
10427.045312500382 ns/iter |
1.26 |
JSON_Parse_Object_Scalar_Properties |
6909.633928571627 ns/iter |
6026.326496719882 ns/iter |
1.15 |
JSON_Parse_Object_Array_Properties |
11529.48437500001 ns/iter |
9792.161195708479 ns/iter |
1.18 |
JSON_Parse_Object_Object_Properties |
11702.99107142877 ns/iter |
9505.611582090769 ns/iter |
1.23 |
JSON_Parse_Nested_Containers |
80119.05133928593 ns/iter |
65671.89285714648 ns/iter |
1.22 |
JSON_From_String_Copy |
64.02509821428839 ns/iter |
49.706001676076546 ns/iter |
1.29 |
JSON_From_String_Temporary |
57.624321428570674 ns/iter |
58.35402000000158 ns/iter |
0.99 |
JSON_Number_To_Double |
119.64162499999988 ns/iter |
91.38993342009447 ns/iter |
1.31 |
JSON_Object_At_Last_Key/8 |
7.685127232143048 ns/iter |
7.667637276786035 ns/iter |
1.00 |
JSON_Object_At_Last_Key/32 |
23.505023175167203 ns/iter |
19.19430293563825 ns/iter |
1.22 |
JSON_Object_At_Last_Key/128 |
90.55320131459214 ns/iter |
92.6967547903257 ns/iter |
0.98 |
JSON_Object_At_Last_Key/512 |
428.18529235037886 ns/iter |
334.7926929363373 ns/iter |
1.28 |
JSON_Fast_Hash_Helm_Chart_Lock |
104.50804687500259 ns/iter |
76.96814732142596 ns/iter |
1.36 |
JSON_Equality_Helm_Chart_Lock |
213.0688007558465 ns/iter |
218.8042187499839 ns/iter |
0.97 |
JSON_Divisible_By_Decimal |
307.3835773009413 ns/iter |
269.8904743425916 ns/iter |
1.14 |
JSON_String_Equal/10 |
10.411500000000018 ns/iter |
9.666414062500017 ns/iter |
1.08 |
JSON_String_Equal/100 |
11.875249999999735 ns/iter |
13.045951785714344 ns/iter |
0.91 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
2.537086428571505 ns/iter |
1.5514195312499979 ns/iter |
1.64 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
15.107787946428024 ns/iter |
12.492328125000007 ns/iter |
1.21 |
JSON_String_Fast_Hash/10 |
6.637693080357364 ns/iter |
4.975475889941144 ns/iter |
1.33 |
JSON_String_Fast_Hash/100 |
6.717871651785882 ns/iter |
4.056155133928462 ns/iter |
1.66 |
JSON_String_Key_Hash/10 |
5.411791999999878 ns/iter |
3.7496997486053236 ns/iter |
1.44 |
JSON_String_Key_Hash/100 |
11.900921875000137 ns/iter |
8.673103086279546 ns/iter |
1.37 |
JSON_Object_Defines_Miss_Same_Length |
4.718220759981569 ns/iter |
4.8794242198394775 ns/iter |
0.97 |
JSON_Object_Defines_Miss_Too_Small |
4.714144398373818 ns/iter |
5.073383999999805 ns/iter |
0.93 |
JSON_Object_Defines_Miss_Too_Large |
4.748904921314411 ns/iter |
4.927324000000226 ns/iter |
0.96 |
Pointer_Object_Traverse |
70.68849330357071 ns/iter |
42.6442437499972 ns/iter |
1.66 |
Pointer_Object_Try_Traverse |
72.04568750000006 ns/iter |
45.443912317465184 ns/iter |
1.59 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
163.51729910715207 ns/iter |
164.05212036061792 ns/iter |
1.00 |
Pointer_Walker_Schema_ISO_Language |
11699712.49999957 ns/iter |
10402103.124999229 ns/iter |
1.12 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
2533838.5714286054 ns/iter |
2242921.212121363 ns/iter |
1.13 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
3712007.8212288646 ns/iter |
3905851.39664813 ns/iter |
0.95 |
Pointer_Position_Tracker_Get_Deeply_Nested |
590.2783482143142 ns/iter |
552.4101562499288 ns/iter |
1.07 |
JSONPath_Descendant_Filter_Nested |
2403.1479875580144 ns/iter |
1741.139481379695 ns/iter |
1.38 |
URITemplateRouter_Create |
40725.432411257665 ns/iter |
36150.96694701925 ns/iter |
1.13 |
URITemplateRouter_Match |
237.3985714285709 ns/iter |
263.4877550664341 ns/iter |
0.90 |
URITemplateRouter_Match_BasePath |
270.75810137314625 ns/iter |
293.40500743245286 ns/iter |
0.92 |
URITemplateRouterView_Restore |
33391.0326723874 ns/iter |
18592.207966141526 ns/iter |
1.80 |
URITemplateRouterView_Match |
182.02134660904076 ns/iter |
181.15957686336836 ns/iter |
1.00 |
URITemplateRouterView_Match_BasePath |
204.7449999999884 ns/iter |
212.1850624999766 ns/iter |
0.96 |
URITemplateRouterView_Arguments |
546.8599107143035 ns/iter |
457.1760739706366 ns/iter |
1.20 |
JSONL_Parse_Large |
32837009.523808274 ns/iter |
34660420.000000164 ns/iter |
0.95 |
JSONL_Parse_Large_GZIP |
33852290.00000152 ns/iter |
34272238.09523553 ns/iter |
0.99 |
JSONLD_Catalog_Annotation_List_Populate |
3116392.957746433 ns/iter |
2922060.5932204947 ns/iter |
1.07 |
JSONLD_Catalog_Materialize |
8819026.66666671 ns/iter |
6916630.357143357 ns/iter |
1.28 |
HTML_Build_Table_100000 |
92872999.99999733 ns/iter |
98833742.8571445 ns/iter |
0.94 |
HTML_Render_Table_100000 |
7866180.000000138 ns/iter |
12488005.357143704 ns/iter |
0.63 |
GZIP_Compress_ISO_Language_Set_3_Locations |
37024484.21052838 ns/iter |
31930936.363639 ns/iter |
1.16 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
9883632.000000186 ns/iter |
11713094.642857414 ns/iter |
0.84 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2114661.449275485 ns/iter |
1980188.2037531515 ns/iter |
1.07 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
646992.8571428441 ns/iter |
686351.4508928604 ns/iter |
0.94 |
JOSE_VerifySignature_RS256 |
21228.07730253603 ns/iter |
19414.598344627855 ns/iter |
1.09 |
JOSE_VerifySignature_ES512 |
1370670.481927769 ns/iter |
1045495.3125000444 ns/iter |
1.31 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Benchmark (macos/llvm)
Details
| Benchmark suite | Current: 26efeab | Previous: 555819e | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.304712778285275 ns/iter |
1.8764544462607737 ns/iter |
1.23 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.848765875498225 ns/iter |
1.8523876600535336 ns/iter |
1.54 |
Regex_Period_Asterisk |
2.38928639183407 ns/iter |
1.979928752368713 ns/iter |
1.21 |
Regex_Group_Period_Asterisk_Group |
2.0366002620424983 ns/iter |
1.9396399973352507 ns/iter |
1.05 |
Regex_Period_Plus |
2.528991905643417 ns/iter |
2.3118838578917345 ns/iter |
1.09 |
Regex_Period |
3.0331278021571055 ns/iter |
2.2644054622325585 ns/iter |
1.34 |
Regex_Caret_Period_Plus_Dollar |
3.1546209737052004 ns/iter |
2.3860045944539796 ns/iter |
1.32 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
3.917235764210493 ns/iter |
2.227797364641488 ns/iter |
1.76 |
Regex_Caret_Period_Asterisk_Dollar |
3.2697230419317274 ns/iter |
1.8400281751882706 ns/iter |
1.78 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.888823028986874 ns/iter |
2.0185613843550634 ns/iter |
1.43 |
Regex_Caret_X_Hyphen |
9.629321125397016 ns/iter |
7.295261542223797 ns/iter |
1.32 |
Regex_Period_Md_Dollar |
37.22722366918948 ns/iter |
23.64120284044929 ns/iter |
1.57 |
Regex_Caret_Slash_Period_Asterisk |
9.357456888904052 ns/iter |
4.9482427784847465 ns/iter |
1.89 |
Regex_Caret_Period_Range_Dollar |
3.804641786497095 ns/iter |
2.1223790279703882 ns/iter |
1.79 |
Regex_Nested_Backtrack |
43.19241546784077 ns/iter |
32.88852192446522 ns/iter |
1.31 |
JSON_Array_Of_Objects_Unique |
664.175749999913 ns/iter |
403.3651659573707 ns/iter |
1.65 |
JSON_Parse_1 |
6095.209854440123 ns/iter |
3493.6326159078785 ns/iter |
1.74 |
JSON_Parse_Real |
7760.75554728475 ns/iter |
5743.340042833094 ns/iter |
1.35 |
JSON_Parse_Decimal |
8615.845369918756 ns/iter |
6291.313644438914 ns/iter |
1.37 |
JSON_Parse_Schema_ISO_Language |
5198671.012269544 ns/iter |
2219229.164335378 ns/iter |
2.34 |
JSON_Parse_Integer |
7803.847543577255 ns/iter |
3543.023575163489 ns/iter |
2.20 |
JSON_Parse_String_NonSSO_Plain |
7016.547825120208 ns/iter |
3166.763882407422 ns/iter |
2.22 |
JSON_Parse_String_SSO_Plain |
3654.928699276032 ns/iter |
2375.4144746364655 ns/iter |
1.54 |
JSON_Parse_String_Escape_Heavy |
23113.0302577114 ns/iter |
19373.389458152396 ns/iter |
1.19 |
JSON_Parse_Object_Short_Keys |
8379.569952980706 ns/iter |
5923.994363750124 ns/iter |
1.41 |
JSON_Parse_Object_Scalar_Properties |
4270.593399273381 ns/iter |
2792.172313154382 ns/iter |
1.53 |
JSON_Parse_Object_Array_Properties |
5103.427375095589 ns/iter |
3743.210868752348 ns/iter |
1.36 |
JSON_Parse_Object_Object_Properties |
5075.208741001083 ns/iter |
4488.7886193308495 ns/iter |
1.13 |
JSON_Parse_Nested_Containers |
30158.77432526398 ns/iter |
28272.612995384665 ns/iter |
1.07 |
JSON_From_String_Copy |
15.396129543882054 ns/iter |
11.96505995236014 ns/iter |
1.29 |
JSON_From_String_Temporary |
11.034314537981619 ns/iter |
6.715896828475788 ns/iter |
1.64 |
JSON_Number_To_Double |
67.50030668935784 ns/iter |
37.22129735651696 ns/iter |
1.81 |
JSON_Object_At_Last_Key/8 |
8.283741128031314 ns/iter |
4.73089248378541 ns/iter |
1.75 |
JSON_Object_At_Last_Key/32 |
26.158967553050108 ns/iter |
14.079435638681678 ns/iter |
1.86 |
JSON_Object_At_Last_Key/128 |
107.29585802138575 ns/iter |
73.83569085154896 ns/iter |
1.45 |
JSON_Object_At_Last_Key/512 |
264.5160302733481 ns/iter |
207.88735678609112 ns/iter |
1.27 |
JSON_Fast_Hash_Helm_Chart_Lock |
77.79214131596169 ns/iter |
65.08394949580317 ns/iter |
1.20 |
JSON_Equality_Helm_Chart_Lock |
253.227744781955 ns/iter |
192.6724510070779 ns/iter |
1.31 |
JSON_Divisible_By_Decimal |
269.24561374531976 ns/iter |
199.09530457133138 ns/iter |
1.35 |
JSON_String_Equal/10 |
10.344865317486173 ns/iter |
7.1612913959623015 ns/iter |
1.44 |
JSON_String_Equal/100 |
10.641004297393872 ns/iter |
7.587493371745841 ns/iter |
1.40 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.5185993781194328 ns/iter |
0.3698955868657911 ns/iter |
1.40 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
6.4040752593185335 ns/iter |
3.6627113277068073 ns/iter |
1.75 |
JSON_String_Fast_Hash/10 |
4.078051138831214 ns/iter |
2.7587290523442225 ns/iter |
1.48 |
JSON_String_Fast_Hash/100 |
3.3440014185610134 ns/iter |
2.200204528259719 ns/iter |
1.52 |
JSON_String_Key_Hash/10 |
3.1299624725272746 ns/iter |
1.7875733336898645 ns/iter |
1.75 |
JSON_String_Key_Hash/100 |
4.693579798615603 ns/iter |
2.805596526014281 ns/iter |
1.67 |
JSON_Object_Defines_Miss_Same_Length |
3.916591880724645 ns/iter |
3.1364627956815543 ns/iter |
1.25 |
JSON_Object_Defines_Miss_Too_Small |
3.558338797189322 ns/iter |
3.839534529649303 ns/iter |
0.93 |
JSON_Object_Defines_Miss_Too_Large |
3.660847369330269 ns/iter |
2.929311861825142 ns/iter |
1.25 |
Pointer_Object_Traverse |
23.45764026038346 ns/iter |
21.631146989176596 ns/iter |
1.08 |
Pointer_Object_Try_Traverse |
47.31498940884534 ns/iter |
35.52099688537521 ns/iter |
1.33 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
175.7132318044734 ns/iter |
164.80852860068757 ns/iter |
1.07 |
Pointer_Walker_Schema_ISO_Language |
1790624.4429529684 ns/iter |
1698128.9264369227 ns/iter |
1.05 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1096274.8148149666 ns/iter |
963645.4190341033 ns/iter |
1.14 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1499636.4999999215 ns/iter |
1236215.968404396 ns/iter |
1.21 |
Pointer_Position_Tracker_Get_Deeply_Nested |
561.1671555114012 ns/iter |
503.3201117274184 ns/iter |
1.11 |
JSONPath_Descendant_Filter_Nested |
2235.110906330597 ns/iter |
1369.3401778616355 ns/iter |
1.63 |
URITemplateRouter_Create |
23965.920446897082 ns/iter |
26735.343389126 ns/iter |
0.90 |
URITemplateRouter_Match |
219.71908810328117 ns/iter |
216.6225196278499 ns/iter |
1.01 |
URITemplateRouter_Match_BasePath |
241.12537326516923 ns/iter |
264.684934868866 ns/iter |
0.91 |
URITemplateRouterView_Restore |
13849.665379325179 ns/iter |
15439.065988250639 ns/iter |
0.90 |
URITemplateRouterView_Match |
150.69710062385997 ns/iter |
198.14987513449262 ns/iter |
0.76 |
URITemplateRouterView_Match_BasePath |
192.47896360204817 ns/iter |
205.20228851792322 ns/iter |
0.94 |
URITemplateRouterView_Arguments |
647.8928607603848 ns/iter |
707.8763377177683 ns/iter |
0.92 |
JSONL_Parse_Large |
7900890.011630381 ns/iter |
10148534.935484027 ns/iter |
0.78 |
JSONL_Parse_Large_GZIP |
9099615.38461455 ns/iter |
10243555.343750544 ns/iter |
0.89 |
JSONLD_Catalog_Annotation_List_Populate |
651337.468592938 ns/iter |
815454.8026634965 ns/iter |
0.80 |
JSONLD_Catalog_Materialize |
2934029.4210525923 ns/iter |
3740666.884816893 ns/iter |
0.78 |
HTML_Build_Table_100000 |
73649149.99998291 ns/iter |
60020080.07692439 ns/iter |
1.23 |
HTML_Render_Table_100000 |
3203821.261682801 ns/iter |
2771965.924398735 ns/iter |
1.16 |
GZIP_Compress_ISO_Language_Set_3_Locations |
43020565.50000089 ns/iter |
38855109.68421171 ns/iter |
1.11 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
5181347.920001826 ns/iter |
5141677.16030512 ns/iter |
1.01 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2565816.6088434113 ns/iter |
2217620.487261281 ns/iter |
1.16 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
371860.83778718335 ns/iter |
402426.13765176485 ns/iter |
0.92 |
JOSE_VerifySignature_RS256 |
31056.078437626402 ns/iter |
33875.141368764766 ns/iter |
0.92 |
JOSE_VerifySignature_ES512 |
1390771.4723927246 ns/iter |
1420132.0873563867 ns/iter |
0.98 |
This comment was automatically generated by workflow using github-action-benchmark.
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Signed-off-by: Juan Cruz Viotti jv@jviotti.com