Speed up CRC-32 computation - #2828
Conversation
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
🤖 Augment PR SummarySummary: This PR accelerates CRC-32 calculation while preserving the existing public API. Changes:
🤖 Was this summary useful? React with 👍 or 👎 |
There was a problem hiding this comment.
1 issue found across 1 file
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="src/core/crypto/crypto_crc32.cc">
<violation number="1" location="src/core/crypto/crypto_crc32.cc:632">
P1: On Clang AArch64, `vmull_high_p64` can fail to produce the required `pmull2` operation, corrupting CRCs for inputs of at least 64 bytes. Reuse the existing `clmul_high` workaround or emit `pmull2` explicitly for the high-half multiply.</violation>
</file>
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
| vmull_p64(vgetq_lane_p64(vreinterpretq_p64_u8(source), 0), | ||
| vgetq_lane_p64(multipliers, 0)))}; | ||
| const Crc32Vector high{vreinterpretq_u8_p128( | ||
| vmull_high_p64(vreinterpretq_p64_u8(source), multipliers))}; |
There was a problem hiding this comment.
P1: On Clang AArch64, vmull_high_p64 can fail to produce the required pmull2 operation, corrupting CRCs for inputs of at least 64 bytes. Reuse the existing clmul_high workaround or emit pmull2 explicitly for the high-half multiply.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At src/core/crypto/crypto_crc32.cc, line 632:
<comment>On Clang AArch64, `vmull_high_p64` can fail to produce the required `pmull2` operation, corrupting CRCs for inputs of at least 64 bytes. Reuse the existing `clmul_high` workaround or emit `pmull2` explicitly for the high-half multiply.</comment>
<file context>
@@ -466,6 +559,247 @@ constexpr std::array<std::array<std::uint32_t, 256>, 8> CRC32_TABLES{
+ vmull_p64(vgetq_lane_p64(vreinterpretq_p64_u8(source), 0),
+ vgetq_lane_p64(multipliers, 0)))};
+ const Crc32Vector high{vreinterpretq_u8_p128(
+ vmull_high_p64(vreinterpretq_p64_u8(source), multipliers))};
+ return veorq_u8(veorq_u8(low, high), destination);
+}
</file context>
There was a problem hiding this comment.
Benchmark (windows/msvc)
Details
| Benchmark suite | Current: 6e15510 | Previous: 3762bda | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
5.0289089285711395 ns/iter |
5.182879464285861 ns/iter |
0.97 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
4.985074999999597 ns/iter |
5.144791000000168 ns/iter |
0.97 |
Regex_Period_Asterisk |
4.963001785714231 ns/iter |
5.201686607143025 ns/iter |
0.95 |
Regex_Group_Period_Asterisk_Group |
4.956711094856614 ns/iter |
5.257411000000047 ns/iter |
0.94 |
Regex_Period_Plus |
4.893796216280825 ns/iter |
5.133780999999544 ns/iter |
0.95 |
Regex_Period |
4.658401139432648 ns/iter |
5.2793969999999035 ns/iter |
0.88 |
Regex_Caret_Period_Plus_Dollar |
4.613020992439781 ns/iter |
5.142744000000334 ns/iter |
0.90 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
4.605171438850931 ns/iter |
5.1450562500003265 ns/iter |
0.90 |
Regex_Caret_Period_Asterisk_Dollar |
5.035862000000293 ns/iter |
5.163517000000297 ns/iter |
0.98 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
5.001942999999756 ns/iter |
5.183199107143314 ns/iter |
0.97 |
Regex_Caret_X_Hyphen |
7.876196428571498 ns/iter |
8.217665178571792 ns/iter |
0.96 |
Regex_Period_Md_Dollar |
67.38742000000002 ns/iter |
47.773166244938515 ns/iter |
1.41 |
Regex_Caret_Slash_Period_Asterisk |
7.486081473213931 ns/iter |
7.920875000000065 ns/iter |
0.95 |
Regex_Caret_Period_Range_Dollar |
5.313417857142914 ns/iter |
5.74358124999971 ns/iter |
0.93 |
Regex_Nested_Backtrack |
90.80079505353648 ns/iter |
59.482499999999405 ns/iter |
1.53 |
JSON_Array_Of_Objects_Unique |
650.8347321428687 ns/iter |
578.4784821428397 ns/iter |
1.13 |
JSON_Parse_1 |
9601.87499162954 ns/iter |
9310.378078669273 ns/iter |
1.03 |
JSON_Parse_Real |
16597.714047191286 ns/iter |
15994.28571428569 ns/iter |
1.04 |
JSON_Parse_Decimal |
11266.959375000773 ns/iter |
11821.639062500111 ns/iter |
0.95 |
JSON_Parse_Schema_ISO_Language |
8250293.3333336795 ns/iter |
7843098.888888435 ns/iter |
1.05 |
JSON_Parse_Integer |
6005.459000000428 ns/iter |
6389.548214285311 ns/iter |
0.94 |
JSON_Parse_String_NonSSO_Plain |
7825.525669643087 ns/iter |
8101.604910714575 ns/iter |
0.97 |
JSON_Parse_String_SSO_Plain |
3815.9001116071827 ns/iter |
3793.372209821249 ns/iter |
1.01 |
JSON_Parse_String_Escape_Heavy |
21829.165625000256 ns/iter |
21791.31249999955 ns/iter |
1.00 |
JSON_Parse_Object_Short_Keys |
17777.41071428553 ns/iter |
13307.775000000227 ns/iter |
1.34 |
JSON_Parse_Object_Scalar_Properties |
7270.676339285385 ns/iter |
6746.647321428664 ns/iter |
1.08 |
JSON_Parse_Object_Array_Properties |
13589.926785714722 ns/iter |
11619.243750000229 ns/iter |
1.17 |
JSON_Parse_Object_Object_Properties |
14100.487499999099 ns/iter |
11799.417187500438 ns/iter |
1.20 |
JSON_Parse_Nested_Containers |
88818.34374999898 ns/iter |
80964.17410714223 ns/iter |
1.10 |
JSON_From_String_Copy |
66.05405357143061 ns/iter |
63.74560714285897 ns/iter |
1.04 |
JSON_From_String_Temporary |
88.79362103599243 ns/iter |
59.01545535714092 ns/iter |
1.50 |
JSON_Number_To_Double |
137.61378571428753 ns/iter |
118.73732142856649 ns/iter |
1.16 |
JSON_Object_At_Last_Key/8 |
8.262492820257119 ns/iter |
7.731799107143342 ns/iter |
1.07 |
JSON_Object_At_Last_Key/32 |
26.587663274161926 ns/iter |
24.468070039419793 ns/iter |
1.09 |
JSON_Object_At_Last_Key/128 |
112.52174497670741 ns/iter |
89.9540513392884 ns/iter |
1.25 |
JSON_Object_At_Last_Key/512 |
597.3953999999821 ns/iter |
423.906125000002 ns/iter |
1.41 |
JSON_Fast_Hash_Helm_Chart_Lock |
140.75647809122557 ns/iter |
102.29015168347954 ns/iter |
1.38 |
JSON_Equality_Helm_Chart_Lock |
211.25750619387125 ns/iter |
218.28284374999285 ns/iter |
0.97 |
JSON_Divisible_By_Decimal |
342.54759954507006 ns/iter |
310.3946104470183 ns/iter |
1.10 |
JSON_String_Equal/10 |
10.877500000000317 ns/iter |
10.89847812500011 ns/iter |
1.00 |
JSON_String_Equal/100 |
11.759755357142053 ns/iter |
11.920914285714243 ns/iter |
0.99 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
2.232186874999975 ns/iter |
2.5126500870423687 ns/iter |
0.89 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
14.015884758856817 ns/iter |
14.199856409822429 ns/iter |
0.99 |
JSON_String_Fast_Hash/10 |
6.482618749999907 ns/iter |
6.716601562500075 ns/iter |
0.97 |
JSON_String_Fast_Hash/100 |
6.810392857142895 ns/iter |
6.602101785714202 ns/iter |
1.03 |
JSON_String_Key_Hash/10 |
5.001861000000076 ns/iter |
5.341637500000067 ns/iter |
0.94 |
JSON_String_Key_Hash/100 |
11.023240624999708 ns/iter |
11.893990625000406 ns/iter |
0.93 |
JSON_Object_Defines_Miss_Same_Length |
4.0493431249998935 ns/iter |
4.092599069808426 ns/iter |
0.99 |
JSON_Object_Defines_Miss_Too_Small |
4.128720065121141 ns/iter |
4.408946373102955 ns/iter |
0.94 |
JSON_Object_Defines_Miss_Too_Large |
3.96037109375001 ns/iter |
4.083241337463136 ns/iter |
0.97 |
Pointer_Object_Traverse |
82.91862499999881 ns/iter |
71.40166071428565 ns/iter |
1.16 |
Pointer_Object_Try_Traverse |
70.82489285714644 ns/iter |
70.74935267857059 ns/iter |
1.00 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
184.0372396461851 ns/iter |
191.4686343094454 ns/iter |
0.96 |
Pointer_Walker_Schema_ISO_Language |
12266583.928570593 ns/iter |
11137143.750000078 ns/iter |
1.10 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
2416289.772727275 ns/iter |
2459713.2575757653 ns/iter |
0.98 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
3613188.2051283633 ns/iter |
3725692.5133690364 ns/iter |
0.97 |
Pointer_Position_Tracker_Get_Deeply_Nested |
582.513058035694 ns/iter |
515.5211452229256 ns/iter |
1.13 |
Schema_Tracker_ISO_Language |
11317899.99999988 ns/iter |
11180117.187499227 ns/iter |
1.01 |
Schema_Tracker_ISO_Language_To_JSON |
67936772.7272713 ns/iter |
66207218.181819946 ns/iter |
1.03 |
Schema_Frame_WoT_References |
5618594.00000003 ns/iter |
5566255.357142629 ns/iter |
1.01 |
Schema_Frame_OMC_References |
27148512.00000112 ns/iter |
24224523.333333537 ns/iter |
1.12 |
Schema_Frame_OMC_Pointers |
51470200.0000036 ns/iter |
44788066.66666818 ns/iter |
1.15 |
Schema_Frame_OMC_Locations |
22310015.6250009 ns/iter |
19952052.941176016 ns/iter |
1.12 |
Schema_Frame_ISO_Language_Locations |
96811628.57142615 ns/iter |
83523733.33333516 ns/iter |
1.16 |
Schema_Frame_ISO_Language_Root |
2621.2303010293913 ns/iter |
2160.5006249998837 ns/iter |
1.21 |
Schema_Frame_KrakenD_References |
46554920.000001706 ns/iter |
40947388.2352947 ns/iter |
1.14 |
Schema_Frame_KrakenD_Reachable |
245985800.00002813 ns/iter |
262354666.66666222 ns/iter |
0.94 |
Schema_Frame_ISO_Language_Locations_To_JSON |
183708625.0000084 ns/iter |
166144875.00000054 ns/iter |
1.11 |
Schema_Frame_Many_Resources_References |
685978500.0000329 ns/iter |
730482699.9999819 ns/iter |
0.94 |
Schema_Frame_Deeply_Nested_References |
22690140.624998633 ns/iter |
23076818.181819323 ns/iter |
0.98 |
JSONPath_Descendant_Filter_Nested |
2359.0701349663927 ns/iter |
2398.9058047926455 ns/iter |
0.98 |
URITemplateRouter_Create |
39154.268973216684 ns/iter |
42258.337853309 ns/iter |
0.93 |
URITemplateRouter_Match |
219.95093928133687 ns/iter |
233.92735112417157 ns/iter |
0.94 |
URITemplateRouter_Match_BasePath |
251.10820858168148 ns/iter |
266.3011792991437 ns/iter |
0.94 |
URITemplateRouterView_Restore |
25573.3009524519 ns/iter |
33490.52641447639 ns/iter |
0.76 |
URITemplateRouterView_Match |
171.77097802037548 ns/iter |
177.43511902467606 ns/iter |
0.97 |
URITemplateRouterView_Match_BasePath |
197.15616307337592 ns/iter |
204.56928125000215 ns/iter |
0.96 |
URITemplateRouterView_Arguments |
587.0983035714111 ns/iter |
544.0120535714093 ns/iter |
1.08 |
JSONL_Parse_Large |
33013740.000001233 ns/iter |
33422433.33333358 ns/iter |
0.99 |
JSONL_Parse_Large_GZIP |
32626399.99999941 ns/iter |
33546252.631577104 ns/iter |
0.97 |
JSONLD_Catalog_Annotation_List_Populate |
3213758.9285716116 ns/iter |
3066504.237288223 ns/iter |
1.05 |
JSONLD_Catalog_Materialize |
10973709.374999529 ns/iter |
8994317.777777877 ns/iter |
1.22 |
HTML_Build_Table_100000 |
103052542.85714228 ns/iter |
92592428.57142779 ns/iter |
1.11 |
HTML_Render_Table_100000 |
8123985.555555338 ns/iter |
7840072.222222717 ns/iter |
1.04 |
GZIP_Compress_ISO_Language_Set_3_Locations |
38173861.11111255 ns/iter |
35755521.0526327 ns/iter |
1.07 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
10857856.250000352 ns/iter |
10010711.999999937 ns/iter |
1.08 |
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations |
13843471.428572228 ns/iter |
12529994.642857136 ns/iter |
1.10 |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
31602568.18181944 ns/iter |
43506681.250001125 ns/iter |
0.73 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2320252.1428570678 ns/iter |
2121417.6811593897 ns/iter |
1.09 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
644175.357142832 ns/iter |
626801.6999999873 ns/iter |
1.03 |
JOSE_VerifySignature_RS256 |
23826.47857142826 ns/iter |
21384.71875000114 ns/iter |
1.11 |
JOSE_VerifySignature_ES512 |
1557667.0682730353 ns/iter |
1371400.8032128692 ns/iter |
1.14 |
CRYPTO_CRC32_Large_JSONL |
116400.69642857449 ns/iter |
775796.3169642754 ns/iter |
0.15 |
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: 6e15510 | Previous: 3762bda | Ratio |
|---|---|---|---|
CRYPTO_CRC32_Large_JSONL |
39535.21340613963 ns/iter |
499653.74835886894 ns/iter |
0.07912522128773072 |
JOSE_VerifySignature_RS256 |
16021.283641283728 ns/iter |
18974.731020109524 ns/iter |
0.84 |
JOSE_VerifySignature_ES512 |
418825.64489793085 ns/iter |
503603.24928157683 ns/iter |
0.83 |
GZIP_Compress_ISO_Language_Set_3_Locations |
24553984.9999992 ns/iter |
30124750.13043592 ns/iter |
0.82 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
3131053.210762222 ns/iter |
2816169.957031267 ns/iter |
1.11 |
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations |
4157181.2814372145 ns/iter |
4067386.918604878 ns/iter |
1.02 |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
10961686.781250535 ns/iter |
22490233.48386917 ns/iter |
0.49 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1441144.031809226 ns/iter |
1753310.824561449 ns/iter |
0.82 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
262065.40279350788 ns/iter |
206949.03130044765 ns/iter |
1.27 |
HTML_Build_Table_100000 |
45068843.91666687 ns/iter |
49804274.46153394 ns/iter |
0.90 |
HTML_Render_Table_100000 |
2853717.04115244 ns/iter |
2034118.8770492063 ns/iter |
1.40 |
JSONLD_Catalog_Annotation_List_Populate |
535619.9593869811 ns/iter |
536674.2968868492 ns/iter |
1.00 |
JSONLD_Catalog_Materialize |
2434746.1114981417 ns/iter |
2685460.5096526323 ns/iter |
0.91 |
JSONL_Parse_Large |
6289247.374999617 ns/iter |
7449808.765957331 ns/iter |
0.84 |
JSONL_Parse_Large_GZIP |
6760862.932692428 ns/iter |
8545008.891565798 ns/iter |
0.79 |
URITemplateRouter_Create |
11534.18216627534 ns/iter |
14890.899815338336 ns/iter |
0.77 |
URITemplateRouter_Match |
101.7628434047802 ns/iter |
109.79211836307424 ns/iter |
0.93 |
URITemplateRouter_Match_BasePath |
113.92900469554658 ns/iter |
130.34541691483054 ns/iter |
0.87 |
URITemplateRouterView_Restore |
2407.939125706561 ns/iter |
7582.089948794027 ns/iter |
0.32 |
URITemplateRouterView_Match |
80.88655588287126 ns/iter |
93.57911883533595 ns/iter |
0.86 |
URITemplateRouterView_Match_BasePath |
89.82629688903704 ns/iter |
105.6157645885014 ns/iter |
0.85 |
URITemplateRouterView_Arguments |
361.3344367787011 ns/iter |
354.3833133636879 ns/iter |
1.02 |
JSONPath_Descendant_Filter_Nested |
1029.9368353258662 ns/iter |
1415.4989989348855 ns/iter |
0.73 |
Schema_Frame_WoT_References |
1549480.8098434247 ns/iter |
1778267.8447837946 ns/iter |
0.87 |
Schema_Frame_OMC_References |
6815167.754901794 ns/iter |
8159107.298850139 ns/iter |
0.84 |
Schema_Frame_OMC_Pointers |
12750219.125000026 ns/iter |
15317607.326086665 ns/iter |
0.83 |
Schema_Frame_OMC_Locations |
6068411.572649481 ns/iter |
6960505.049019672 ns/iter |
0.87 |
Schema_Frame_ISO_Language_Locations |
27087358.416667465 ns/iter |
34364562.619045846 ns/iter |
0.79 |
Schema_Frame_ISO_Language_Root |
166.22765456952428 ns/iter |
204.7325506009024 ns/iter |
0.81 |
Schema_Frame_KrakenD_References |
11154302.836065408 ns/iter |
12676517.88888905 ns/iter |
0.88 |
Schema_Frame_KrakenD_Reachable |
85508188.99998881 ns/iter |
84844196.22219422 ns/iter |
1.01 |
Schema_Frame_ISO_Language_Locations_To_JSON |
22800583.1142858 ns/iter |
27654126.458330095 ns/iter |
0.82 |
Schema_Frame_Many_Resources_References |
112777757.66667257 ns/iter |
113015931.00000674 ns/iter |
1.00 |
Schema_Frame_Deeply_Nested_References |
7894995.820224773 ns/iter |
8817157.00000001 ns/iter |
0.90 |
Pointer_Object_Traverse |
15.737775631931894 ns/iter |
19.155589144151477 ns/iter |
0.82 |
Pointer_Object_Try_Traverse |
18.658856021468523 ns/iter |
20.239123578899182 ns/iter |
0.92 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
98.45252298085553 ns/iter |
104.44460497928276 ns/iter |
0.94 |
Pointer_Walker_Schema_ISO_Language |
1515077.7685775761 ns/iter |
1067071.8670788927 ns/iter |
1.42 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
891949.801556433 ns/iter |
976107.4597221864 ns/iter |
0.91 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1335768.8025361926 ns/iter |
1370700.2712871965 ns/iter |
0.97 |
Pointer_Position_Tracker_Get_Deeply_Nested |
513.4754179999845 ns/iter |
516.3506435384232 ns/iter |
0.99 |
Schema_Tracker_ISO_Language |
3530934.6530611115 ns/iter |
3847716.3387979786 ns/iter |
0.92 |
Schema_Tracker_ISO_Language_To_JSON |
11008655.984374726 ns/iter |
11971669.52542213 ns/iter |
0.92 |
JSON_Array_Of_Objects_Unique |
250.72498889467016 ns/iter |
356.1698537339895 ns/iter |
0.70 |
JSON_Parse_1 |
3601.6910408678787 ns/iter |
3999.3761784398803 ns/iter |
0.90 |
JSON_Parse_Real |
3755.6025214990195 ns/iter |
4180.645734213762 ns/iter |
0.90 |
JSON_Parse_Decimal |
6426.454794672489 ns/iter |
6839.806101813607 ns/iter |
0.94 |
JSON_Parse_Schema_ISO_Language |
2741300.2119999416 ns/iter |
2857808.295081694 ns/iter |
0.96 |
JSON_Parse_Integer |
2388.1706597995444 ns/iter |
2856.253228198465 ns/iter |
0.84 |
JSON_Parse_String_NonSSO_Plain |
2068.7551045644054 ns/iter |
2752.5819885089068 ns/iter |
0.75 |
JSON_Parse_String_SSO_Plain |
1947.680815373536 ns/iter |
2193.5633748494142 ns/iter |
0.89 |
JSON_Parse_String_Escape_Heavy |
11294.924696470229 ns/iter |
12922.46494166201 ns/iter |
0.87 |
JSON_Parse_Object_Short_Keys |
5825.6453008880835 ns/iter |
8527.180298413854 ns/iter |
0.68 |
JSON_Parse_Object_Scalar_Properties |
2973.767975841023 ns/iter |
4300.896604881807 ns/iter |
0.69 |
JSON_Parse_Object_Array_Properties |
4059.7790239100013 ns/iter |
5194.25355162148 ns/iter |
0.78 |
JSON_Parse_Object_Object_Properties |
4134.03465958822 ns/iter |
5096.4194972257055 ns/iter |
0.81 |
JSON_Parse_Nested_Containers |
25164.632945198773 ns/iter |
31204.042554137275 ns/iter |
0.81 |
JSON_From_String_Copy |
5.457336257513021 ns/iter |
8.128687402965294 ns/iter |
0.67 |
JSON_From_String_Temporary |
4.400929472025985 ns/iter |
6.267042168689348 ns/iter |
0.70 |
JSON_Number_To_Double |
17.313824812623533 ns/iter |
16.140403473981742 ns/iter |
1.07 |
JSON_Object_At_Last_Key/8 |
5.221427074216962 ns/iter |
4.915658070849637 ns/iter |
1.06 |
JSON_Object_At_Last_Key/32 |
21.911433306342676 ns/iter |
18.285700727741663 ns/iter |
1.20 |
JSON_Object_At_Last_Key/128 |
53.89273010000011 ns/iter |
70.67872780844947 ns/iter |
0.76 |
JSON_Object_At_Last_Key/512 |
175.98326463183514 ns/iter |
294.03523646519426 ns/iter |
0.60 |
JSON_Fast_Hash_Helm_Chart_Lock |
45.106204240857025 ns/iter |
74.77448061131656 ns/iter |
0.60 |
JSON_Equality_Helm_Chart_Lock |
101.51881595693044 ns/iter |
122.10784181945934 ns/iter |
0.83 |
JSON_Divisible_By_Decimal |
204.43753766047976 ns/iter |
201.26806725007762 ns/iter |
1.02 |
JSON_String_Equal/10 |
4.077079076858343 ns/iter |
4.457234971827489 ns/iter |
0.91 |
JSON_String_Equal/100 |
5.104220112818891 ns/iter |
5.257108973243561 ns/iter |
0.97 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.7672792228951641 ns/iter |
0.5530734394494343 ns/iter |
1.39 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
13.289217222908535 ns/iter |
17.14061404963113 ns/iter |
0.78 |
JSON_String_Fast_Hash/10 |
1.7703034028269093 ns/iter |
2.4725832533191343 ns/iter |
0.72 |
JSON_String_Fast_Hash/100 |
1.876711092117212 ns/iter |
2.476490382856097 ns/iter |
0.76 |
JSON_String_Key_Hash/10 |
0.6221076684554839 ns/iter |
0.8424869807142179 ns/iter |
0.74 |
JSON_String_Key_Hash/100 |
9.878449445856067 ns/iter |
11.44706211509094 ns/iter |
0.86 |
JSON_Object_Defines_Miss_Same_Length |
2.1171357107311826 ns/iter |
2.4584718552617746 ns/iter |
0.86 |
JSON_Object_Defines_Miss_Too_Small |
2.1152536799539523 ns/iter |
2.456289862614307 ns/iter |
0.86 |
JSON_Object_Defines_Miss_Too_Large |
2.034039900380982 ns/iter |
2.455153741880343 ns/iter |
0.83 |
Regex_Lower_S_Or_Upper_S_Asterisk |
1.578858981984941 ns/iter |
1.8422336973230768 ns/iter |
0.86 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.5625656145134337 ns/iter |
1.8425080837364236 ns/iter |
0.85 |
Regex_Period_Asterisk |
1.7499343573164294 ns/iter |
1.7758532031204404 ns/iter |
0.99 |
Regex_Group_Period_Asterisk_Group |
1.6210296971905735 ns/iter |
1.7741435974108595 ns/iter |
0.91 |
Regex_Period_Plus |
1.564237888836403 ns/iter |
1.8418962908594538 ns/iter |
0.85 |
Regex_Period |
1.5620030409211476 ns/iter |
1.8416716605739267 ns/iter |
0.85 |
Regex_Caret_Period_Plus_Dollar |
1.6245482136057994 ns/iter |
1.7737548869289061 ns/iter |
0.92 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
1.5890668006941915 ns/iter |
1.7744811725438907 ns/iter |
0.90 |
Regex_Caret_Period_Asterisk_Dollar |
1.5650227066965228 ns/iter |
1.841712239367325 ns/iter |
0.85 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.5663716043725309 ns/iter |
1.8419992157101241 ns/iter |
0.85 |
Regex_Caret_X_Hyphen |
3.757286911697566 ns/iter |
5.866773573862065 ns/iter |
0.64 |
Regex_Period_Md_Dollar |
14.766036027272778 ns/iter |
40.12197936394302 ns/iter |
0.37 |
Regex_Caret_Slash_Period_Asterisk |
3.707004298469276 ns/iter |
7.025813381968999 ns/iter |
0.53 |
Regex_Caret_Period_Range_Dollar |
1.801156430517377 ns/iter |
3.210996813106787 ns/iter |
0.56 |
Regex_Nested_Backtrack |
26.084719829929284 ns/iter |
40.660527622389765 ns/iter |
0.64 |
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: 6e15510 | Previous: 3762bda | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.2775974720777348 ns/iter |
1.4388628617671257 ns/iter |
1.58 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.0450862317364704 ns/iter |
1.4412316364572986 ns/iter |
1.42 |
Regex_Period_Asterisk |
2.0760590790785 ns/iter |
1.4386524382326624 ns/iter |
1.44 |
Regex_Group_Period_Asterisk_Group |
2.348039188919329 ns/iter |
1.438512926168468 ns/iter |
1.63 |
Regex_Period_Plus |
2.450036529537234 ns/iter |
1.7297182042623709 ns/iter |
1.42 |
Regex_Period |
2.3700925110254545 ns/iter |
1.7281072937390436 ns/iter |
1.37 |
Regex_Caret_Period_Plus_Dollar |
2.725943579828526 ns/iter |
1.7255008755404817 ns/iter |
1.58 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.615695545339739 ns/iter |
1.7532435020865065 ns/iter |
1.49 |
Regex_Caret_Period_Asterisk_Dollar |
2.345745030294808 ns/iter |
1.4368010034923495 ns/iter |
1.63 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.405295146009728 ns/iter |
1.8034871583821643 ns/iter |
1.33 |
Regex_Caret_X_Hyphen |
7.204384546467422 ns/iter |
5.233702841315789 ns/iter |
1.38 |
Regex_Period_Md_Dollar |
28.197408024654205 ns/iter |
14.619075361748598 ns/iter |
1.93 |
Regex_Caret_Slash_Period_Asterisk |
5.940338362626113 ns/iter |
3.839480730912139 ns/iter |
1.55 |
Regex_Caret_Period_Range_Dollar |
2.5739063980273125 ns/iter |
2.0232437552092937 ns/iter |
1.27 |
Regex_Nested_Backtrack |
37.104549788679776 ns/iter |
27.901258784649205 ns/iter |
1.33 |
JSON_Array_Of_Objects_Unique |
495.6384695325157 ns/iter |
347.409990763793 ns/iter |
1.43 |
JSON_Parse_1 |
4047.8262110604824 ns/iter |
3186.774895169611 ns/iter |
1.27 |
JSON_Parse_Real |
6238.361348675617 ns/iter |
5115.255950356025 ns/iter |
1.22 |
JSON_Parse_Decimal |
6136.417574988076 ns/iter |
5622.082752648705 ns/iter |
1.09 |
JSON_Parse_Schema_ISO_Language |
2459845.878136085 ns/iter |
2262386.846405504 ns/iter |
1.09 |
JSON_Parse_Integer |
3761.615272567363 ns/iter |
3193.794995214438 ns/iter |
1.18 |
JSON_Parse_String_NonSSO_Plain |
3602.722779692542 ns/iter |
2961.4118201505744 ns/iter |
1.22 |
JSON_Parse_String_SSO_Plain |
2058.3543005199326 ns/iter |
1663.7023456603558 ns/iter |
1.24 |
JSON_Parse_String_Escape_Heavy |
21015.961848366147 ns/iter |
17454.88395401491 ns/iter |
1.20 |
JSON_Parse_Object_Short_Keys |
6950.410984535504 ns/iter |
5531.463446185877 ns/iter |
1.26 |
JSON_Parse_Object_Scalar_Properties |
3758.3318759068106 ns/iter |
2907.466841541792 ns/iter |
1.29 |
JSON_Parse_Object_Array_Properties |
4232.198237937366 ns/iter |
3647.077805478687 ns/iter |
1.16 |
JSON_Parse_Object_Object_Properties |
4132.145266208955 ns/iter |
3722.5344912274054 ns/iter |
1.11 |
JSON_Parse_Nested_Containers |
28817.232606602345 ns/iter |
23612.296760210313 ns/iter |
1.22 |
JSON_From_String_Copy |
13.281966277520793 ns/iter |
16.10894278700282 ns/iter |
0.82 |
JSON_From_String_Temporary |
7.0132725204362325 ns/iter |
5.297415936309199 ns/iter |
1.32 |
JSON_Number_To_Double |
37.71871715689708 ns/iter |
33.75930050676905 ns/iter |
1.12 |
JSON_Object_At_Last_Key/8 |
4.938800414913143 ns/iter |
4.026985953443284 ns/iter |
1.23 |
JSON_Object_At_Last_Key/32 |
15.826247825768162 ns/iter |
12.480799281530743 ns/iter |
1.27 |
JSON_Object_At_Last_Key/128 |
69.76971201190347 ns/iter |
55.78997353030243 ns/iter |
1.25 |
JSON_Object_At_Last_Key/512 |
220.12171840926118 ns/iter |
192.90572011612812 ns/iter |
1.14 |
JSON_Fast_Hash_Helm_Chart_Lock |
73.63103341361965 ns/iter |
61.43277851071499 ns/iter |
1.20 |
JSON_Equality_Helm_Chart_Lock |
216.55651769814511 ns/iter |
156.37526135021136 ns/iter |
1.38 |
JSON_Divisible_By_Decimal |
243.17471178651584 ns/iter |
181.16833292549916 ns/iter |
1.34 |
JSON_String_Equal/10 |
8.225125249710121 ns/iter |
7.404134433842143 ns/iter |
1.11 |
JSON_String_Equal/100 |
8.39810658363699 ns/iter |
6.8118634269186416 ns/iter |
1.23 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.4305236546584907 ns/iter |
0.3394237216760458 ns/iter |
1.27 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
4.115904960735161 ns/iter |
3.1347857394688776 ns/iter |
1.31 |
JSON_String_Fast_Hash/10 |
2.830529024566191 ns/iter |
2.449779682295907 ns/iter |
1.16 |
JSON_String_Fast_Hash/100 |
2.531898281868694 ns/iter |
2.021700642345407 ns/iter |
1.25 |
JSON_String_Key_Hash/10 |
1.9866338016996201 ns/iter |
1.524875579337234 ns/iter |
1.30 |
JSON_String_Key_Hash/100 |
2.2795484535882093 ns/iter |
2.080207807292964 ns/iter |
1.10 |
JSON_Object_Defines_Miss_Same_Length |
3.1331707509339775 ns/iter |
2.857136248328209 ns/iter |
1.10 |
JSON_Object_Defines_Miss_Too_Small |
3.4561586428506432 ns/iter |
2.82138946727033 ns/iter |
1.22 |
JSON_Object_Defines_Miss_Too_Large |
3.179892917342363 ns/iter |
2.7820125096043444 ns/iter |
1.14 |
Pointer_Object_Traverse |
23.89870752714193 ns/iter |
19.430840934617652 ns/iter |
1.23 |
Pointer_Object_Try_Traverse |
44.34747923034379 ns/iter |
34.40467850443483 ns/iter |
1.29 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
173.20639825278712 ns/iter |
139.09092932282726 ns/iter |
1.25 |
Pointer_Walker_Schema_ISO_Language |
2108266.248803536 ns/iter |
1153016.8247619646 ns/iter |
1.83 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1096810.4681405122 ns/iter |
865704.4419161972 ns/iter |
1.27 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1206580.4777779265 ns/iter |
1099005.3846154087 ns/iter |
1.10 |
Pointer_Position_Tracker_Get_Deeply_Nested |
461.53738026680924 ns/iter |
351.581598720213 ns/iter |
1.31 |
Schema_Tracker_ISO_Language |
3547339.9725273396 ns/iter |
2845050.96280981 ns/iter |
1.25 |
Schema_Tracker_ISO_Language_To_JSON |
13034634.573767137 ns/iter |
11174680.774192233 ns/iter |
1.17 |
Schema_Frame_WoT_References |
3430201.3888895274 ns/iter |
2160856.0254777144 ns/iter |
1.59 |
Schema_Frame_OMC_References |
15029279.179998413 ns/iter |
9723069.253520638 ns/iter |
1.55 |
Schema_Frame_OMC_Pointers |
26690978.26087043 ns/iter |
19114724.108107653 ns/iter |
1.40 |
Schema_Frame_OMC_Locations |
12768260.83999822 ns/iter |
8061596.449437367 ns/iter |
1.58 |
Schema_Frame_ISO_Language_Locations |
29069139.47826386 ns/iter |
20602613.636363074 ns/iter |
1.41 |
Schema_Frame_ISO_Language_Root |
171.18487393866758 ns/iter |
98.74457847656146 ns/iter |
1.73 |
Schema_Frame_KrakenD_References |
24117349.999999404 ns/iter |
12739507.446428075 ns/iter |
1.89 |
Schema_Frame_KrakenD_Reachable |
258003791.33321866 ns/iter |
136389600.20005018 ns/iter |
1.89 |
Schema_Frame_ISO_Language_Locations_To_JSON |
42673713.866664305 ns/iter |
21495616.151514005 ns/iter |
1.99 |
Schema_Frame_Many_Resources_References |
178313104.24998036 ns/iter |
97155381.00000945 ns/iter |
1.84 |
Schema_Frame_Deeply_Nested_References |
18161743.20930089 ns/iter |
11407133.453124274 ns/iter |
1.59 |
JSONPath_Descendant_Filter_Nested |
1761.5338417320654 ns/iter |
1124.8777048221125 ns/iter |
1.57 |
URITemplateRouter_Create |
24666.93083797127 ns/iter |
17736.446975840874 ns/iter |
1.39 |
URITemplateRouter_Match |
223.12311628106954 ns/iter |
157.31273899252875 ns/iter |
1.42 |
URITemplateRouter_Match_BasePath |
247.34847560453488 ns/iter |
182.98552149741317 ns/iter |
1.35 |
URITemplateRouterView_Restore |
14225.782346142838 ns/iter |
9219.955562666984 ns/iter |
1.54 |
URITemplateRouterView_Match |
159.86942034245158 ns/iter |
124.7649776416995 ns/iter |
1.28 |
URITemplateRouterView_Match_BasePath |
184.03005186339084 ns/iter |
149.63884870552212 ns/iter |
1.23 |
URITemplateRouterView_Arguments |
650.3721866241298 ns/iter |
526.0956111485909 ns/iter |
1.24 |
JSONL_Parse_Large |
7300204.427082236 ns/iter |
7408072.800000667 ns/iter |
0.99 |
JSONL_Parse_Large_GZIP |
9082362.705128571 ns/iter |
7999205.724999569 ns/iter |
1.14 |
JSONLD_Catalog_Annotation_List_Populate |
765399.127748619 ns/iter |
431721.04561607353 ns/iter |
1.77 |
JSONLD_Catalog_Materialize |
3125402.24175901 ns/iter |
1943129.971591033 ns/iter |
1.61 |
HTML_Build_Table_100000 |
57422041.666662455 ns/iter |
34893682.57143204 ns/iter |
1.65 |
HTML_Render_Table_100000 |
1892772.0529244803 ns/iter |
902526.1964769763 ns/iter |
2.10 |
GZIP_Compress_ISO_Language_Set_3_Locations |
32726740.913047884 ns/iter |
24367084.821428925 ns/iter |
1.34 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4246033.147728151 ns/iter |
3074108.9467212865 ns/iter |
1.38 |
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations |
6318732.487395645 ns/iter |
4103310.876623503 ns/iter |
1.54 |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
20542172.29729639 ns/iter |
17677383.789472707 ns/iter |
1.16 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1865599.5378786302 ns/iter |
1523987.1591837313 ns/iter |
1.22 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
395165.881826803 ns/iter |
283756.2667432131 ns/iter |
1.39 |
JOSE_VerifySignature_RS256 |
29467.62132237775 ns/iter |
23547.501341496256 ns/iter |
1.25 |
JOSE_VerifySignature_ES512 |
1304033.3067995866 ns/iter |
813471.3941520507 ns/iter |
1.60 |
CRYPTO_CRC32_Large_JSONL |
28080.930025886173 ns/iter |
166148.16239116574 ns/iter |
0.17 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Benchmark (linux/llvm)
Details
| Benchmark suite | Current: 6e15510 | Previous: 1693c07 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
1.910800912457564 ns/iter |
2.208652913495102 ns/iter |
0.87 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.9096009301521428 ns/iter |
2.19237597311329 ns/iter |
0.87 |
Regex_Period_Asterisk |
1.909438746019653 ns/iter |
2.190872308290862 ns/iter |
0.87 |
Regex_Group_Period_Asterisk_Group |
1.9092630830626542 ns/iter |
2.184801745617032 ns/iter |
0.87 |
Regex_Period_Plus |
2.9993807014766336 ns/iter |
2.8024781613097436 ns/iter |
1.07 |
Regex_Period |
3.001657624143176 ns/iter |
2.801147052423257 ns/iter |
1.07 |
Regex_Caret_Period_Plus_Dollar |
2.9990901023729237 ns/iter |
2.803299520445005 ns/iter |
1.07 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.9994681561771874 ns/iter |
2.8023405161868835 ns/iter |
1.07 |
Regex_Caret_Period_Asterisk_Dollar |
1.9131133128652338 ns/iter |
3.116645179352523 ns/iter |
0.61 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.9094141293709737 ns/iter |
3.111632804095733 ns/iter |
0.61 |
Regex_Caret_X_Hyphen |
4.152586193839739 ns/iter |
6.542211897228424 ns/iter |
0.63 |
Regex_Period_Md_Dollar |
20.34982178621736 ns/iter |
27.175000394256198 ns/iter |
0.75 |
Regex_Caret_Slash_Period_Asterisk |
5.181483604548004 ns/iter |
6.847914073753908 ns/iter |
0.76 |
Regex_Caret_Period_Range_Dollar |
1.9117891156083537 ns/iter |
3.7340372822747407 ns/iter |
0.51 |
Regex_Nested_Backtrack |
30.069669109482767 ns/iter |
38.2511646476452 ns/iter |
0.79 |
JSON_Array_Of_Objects_Unique |
339.08320144841184 ns/iter |
433.42992263592737 ns/iter |
0.78 |
JSON_Parse_1 |
3511.5347066905692 ns/iter |
4593.6767089337345 ns/iter |
0.76 |
JSON_Parse_Real |
3980.6932639850684 ns/iter |
5225.4177081158205 ns/iter |
0.76 |
JSON_Parse_Decimal |
6069.411278241519 ns/iter |
7862.267707595382 ns/iter |
0.77 |
JSON_Parse_Schema_ISO_Language |
2740679.3937008544 ns/iter |
3328178.3142856946 ns/iter |
0.82 |
JSON_Parse_Integer |
3066.5396061194 ns/iter |
3748.2626548880794 ns/iter |
0.82 |
JSON_Parse_String_NonSSO_Plain |
2410.9599164068973 ns/iter |
3187.904812843965 ns/iter |
0.76 |
JSON_Parse_String_SSO_Plain |
2320.0886027882434 ns/iter |
2735.1629315566465 ns/iter |
0.85 |
JSON_Parse_String_Escape_Heavy |
9719.347971149136 ns/iter |
12223.242821756106 ns/iter |
0.80 |
JSON_Parse_Object_Short_Keys |
6472.697043217384 ns/iter |
7724.709938388027 ns/iter |
0.84 |
JSON_Parse_Object_Scalar_Properties |
3301.0052142349273 ns/iter |
3932.8573910696077 ns/iter |
0.84 |
JSON_Parse_Object_Array_Properties |
4461.003434009274 ns/iter |
5717.044352309691 ns/iter |
0.78 |
JSON_Parse_Object_Object_Properties |
4268.072985369931 ns/iter |
5810.932830432954 ns/iter |
0.73 |
JSON_Parse_Nested_Containers |
28068.850904528845 ns/iter |
35490.19830517031 ns/iter |
0.79 |
JSON_From_String_Copy |
11.35335835736098 ns/iter |
11.937363028284066 ns/iter |
0.95 |
JSON_From_String_Temporary |
9.204294207985411 ns/iter |
10.112495319201363 ns/iter |
0.91 |
JSON_Number_To_Double |
17.394548514349466 ns/iter |
22.193143610885105 ns/iter |
0.78 |
JSON_Object_At_Last_Key/8 |
5.169036451083488 ns/iter |
5.916392340560973 ns/iter |
0.87 |
JSON_Object_At_Last_Key/32 |
18.292927150714107 ns/iter |
21.48911479567474 ns/iter |
0.85 |
JSON_Object_At_Last_Key/128 |
70.71492980026461 ns/iter |
87.77647279166021 ns/iter |
0.81 |
JSON_Object_At_Last_Key/512 |
296.3151337759654 ns/iter |
403.03492102836174 ns/iter |
0.74 |
JSON_Fast_Hash_Helm_Chart_Lock |
56.158246136340175 ns/iter |
59.80317395482813 ns/iter |
0.94 |
JSON_Equality_Helm_Chart_Lock |
133.33327374107148 ns/iter |
169.0953291265978 ns/iter |
0.79 |
JSON_Divisible_By_Decimal |
186.85923749982737 ns/iter |
236.9665202633584 ns/iter |
0.79 |
JSON_String_Equal/10 |
4.371612524902947 ns/iter |
5.925065354173133 ns/iter |
0.74 |
JSON_String_Equal/100 |
5.184288963249535 ns/iter |
6.549291716100397 ns/iter |
0.79 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.8183101188629587 ns/iter |
0.9360700174827221 ns/iter |
0.87 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
9.623402649575901 ns/iter |
10.272789803713328 ns/iter |
0.94 |
JSON_String_Fast_Hash/10 |
1.9099881376553982 ns/iter |
2.491398019298289 ns/iter |
0.77 |
JSON_String_Fast_Hash/100 |
1.9116505415735097 ns/iter |
2.4930894421491123 ns/iter |
0.77 |
JSON_String_Key_Hash/10 |
2.1824720012306233 ns/iter |
2.4946015485010826 ns/iter |
0.87 |
JSON_String_Key_Hash/100 |
6.000492500104434 ns/iter |
6.540089815013838 ns/iter |
0.92 |
JSON_Object_Defines_Miss_Same_Length |
2.269486265736194 ns/iter |
2.7287864471957746 ns/iter |
0.83 |
JSON_Object_Defines_Miss_Too_Small |
2.311477764959076 ns/iter |
2.7140742050616162 ns/iter |
0.85 |
JSON_Object_Defines_Miss_Too_Large |
2.52988286960598 ns/iter |
3.194647918670777 ns/iter |
0.79 |
Pointer_Object_Traverse |
24.056610286057374 ns/iter |
29.387918577624514 ns/iter |
0.82 |
Pointer_Object_Try_Traverse |
25.33473199307198 ns/iter |
30.338378208850973 ns/iter |
0.84 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
124.30574462689616 ns/iter |
145.5833468144632 ns/iter |
0.85 |
Pointer_Walker_Schema_ISO_Language |
1348546.6795132235 ns/iter |
1546858.7192982154 ns/iter |
0.87 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
999545.5179340095 ns/iter |
1243757.5926573284 ns/iter |
0.80 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1280661.3992674453 ns/iter |
1664966.4700239839 ns/iter |
0.77 |
Pointer_Position_Tracker_Get_Deeply_Nested |
527.6993625822489 ns/iter |
608.6614153667599 ns/iter |
0.87 |
Schema_Tracker_ISO_Language |
3809886.2108110576 ns/iter |
4559370.1298701735 ns/iter |
0.84 |
Schema_Tracker_ISO_Language_To_JSON |
13365398.249999972 ns/iter |
16583900.348837364 ns/iter |
0.81 |
Schema_Frame_WoT_References |
1711727.8068460112 ns/iter |
2360288.5050167306 ns/iter |
0.73 |
Schema_Frame_OMC_References |
9246223.539473943 ns/iter |
9517559.219178075 ns/iter |
0.97 |
Schema_Frame_OMC_Pointers |
17198833.58536591 ns/iter |
18117601.00000015 ns/iter |
0.95 |
Schema_Frame_OMC_Locations |
7815029.056818514 ns/iter |
8221952.270588082 ns/iter |
0.95 |
Schema_Frame_ISO_Language_Locations |
35806326.052633464 ns/iter |
42063180.874999166 ns/iter |
0.85 |
Schema_Frame_ISO_Language_Root |
216.32744413835536 ns/iter |
295.49061167759015 ns/iter |
0.73 |
Schema_Frame_KrakenD_References |
14924307.51063887 ns/iter |
15480841.434782261 ns/iter |
0.96 |
Schema_Frame_KrakenD_Reachable |
92247564.9999959 ns/iter |
134864530.79998454 ns/iter |
0.68 |
Schema_Frame_ISO_Language_Locations_To_JSON |
27840204.20000161 ns/iter |
31931598.304348208 ns/iter |
0.87 |
Schema_Frame_Many_Resources_References |
121632961.33333765 ns/iter |
136171206.19999808 ns/iter |
0.89 |
Schema_Frame_Deeply_Nested_References |
9467468.123287521 ns/iter |
11117973.984374974 ns/iter |
0.85 |
JSONPath_Descendant_Filter_Nested |
1190.1680380242233 ns/iter |
1565.0693624076305 ns/iter |
0.76 |
URITemplateRouter_Create |
15848.85416994322 ns/iter |
23217.448581502376 ns/iter |
0.68 |
URITemplateRouter_Match |
130.08226687289292 ns/iter |
178.20999534417263 ns/iter |
0.73 |
URITemplateRouter_Match_BasePath |
158.789859846601 ns/iter |
206.58970470290598 ns/iter |
0.77 |
URITemplateRouterView_Restore |
7764.09951967208 ns/iter |
8488.643693360495 ns/iter |
0.91 |
URITemplateRouterView_Match |
128.02217435224514 ns/iter |
161.9953465050232 ns/iter |
0.79 |
URITemplateRouterView_Match_BasePath |
146.04839132960007 ns/iter |
185.84649774235808 ns/iter |
0.79 |
URITemplateRouterView_Arguments |
347.97414692256126 ns/iter |
431.60608359260334 ns/iter |
0.81 |
JSONL_Parse_Large |
7177481.632652995 ns/iter |
9446078.864865083 ns/iter |
0.76 |
JSONL_Parse_Large_GZIP |
7887810.704545472 ns/iter |
10454528.850746373 ns/iter |
0.75 |
JSONLD_Catalog_Annotation_List_Populate |
453660.42428199603 ns/iter |
597137.8479184418 ns/iter |
0.76 |
JSONLD_Catalog_Materialize |
2792728.296442743 ns/iter |
3608053.8969071144 ns/iter |
0.77 |
HTML_Build_Table_100000 |
51787376.38461738 ns/iter |
57031245.72727347 ns/iter |
0.91 |
HTML_Render_Table_100000 |
2165008.2356323297 ns/iter |
1876500.2921053576 ns/iter |
1.15 |
GZIP_Compress_ISO_Language_Set_3_Locations |
27387616.076923065 ns/iter |
32423412.454544507 ns/iter |
0.84 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
3334116.1100478265 ns/iter |
4250969.048484876 ns/iter |
0.78 |
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations |
4669538.174496683 ns/iter |
6253103.999999913 ns/iter |
0.75 |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
17073305.73170738 ns/iter |
19984933.771427546 ns/iter |
0.85 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1620333.2909930653 ns/iter |
1857289.1193633012 ns/iter |
0.87 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
215067.23247233292 ns/iter |
359531.6855378346 ns/iter |
0.60 |
JOSE_VerifySignature_RS256 |
40265.97958830791 ns/iter |
48375.68598066277 ns/iter |
0.83 |
JOSE_VerifySignature_ES512 |
1509601.701943877 ns/iter |
1729612.9262898567 ns/iter |
0.87 |
CRYPTO_CRC32_Large_JSONL |
88856.655674848 ns/iter |
101782.88521486199 ns/iter |
0.87 |
This comment was automatically generated by workflow using github-action-benchmark.
Signed-off-by: Juan Cruz Viotti jv@jviotti.com