Implement a canonical_decomposition Unicode helper#2431
Conversation
🤖 Augment PR SummarySummary: Adds a new Unicode helper to fetch a codepoint’s (non-recursive) canonical decomposition as a stable Changes:
Technical Notes: Decomposition data is stored as a compact packed (length+offset) entry per codepoint with page-table deduplication, returning a view into static storage for the program lifetime. 🤖 Was this summary useful? React with 👍 or 👎 |
There was a problem hiding this comment.
Benchmark (macos/llvm)
Details
| Benchmark suite | Current: 15141f2 | Previous: 34aaf42 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
1.9951613275691893 ns/iter |
2.015404070601422 ns/iter |
0.99 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.6241808882135178 ns/iter |
1.6733021658577518 ns/iter |
0.97 |
Regex_Period_Asterisk |
1.6981316904552592 ns/iter |
1.7430201504761764 ns/iter |
0.97 |
Regex_Group_Period_Asterisk_Group |
1.7026295896011907 ns/iter |
1.676928103898694 ns/iter |
1.02 |
Regex_Period_Plus |
2.0283431680275887 ns/iter |
2.036722050117288 ns/iter |
1.00 |
Regex_Period |
2.166840174683681 ns/iter |
2.0031644564651785 ns/iter |
1.08 |
Regex_Caret_Period_Plus_Dollar |
2.016772795255842 ns/iter |
2.0071483705122146 ns/iter |
1.00 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.080207358461709 ns/iter |
2.0316623320679557 ns/iter |
1.02 |
Regex_Caret_Period_Asterisk_Dollar |
1.7501844103142519 ns/iter |
1.641974619876991 ns/iter |
1.07 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.8084903758652857 ns/iter |
1.6949674675057504 ns/iter |
1.07 |
Regex_Caret_X_Hyphen |
6.015341397708351 ns/iter |
5.940912246483082 ns/iter |
1.01 |
Regex_Period_Md_Dollar |
19.884493183584656 ns/iter |
16.239740032166424 ns/iter |
1.22 |
Regex_Caret_Slash_Period_Asterisk |
7.472810313830937 ns/iter |
8.023387347090946 ns/iter |
0.93 |
Regex_Caret_Period_Range_Dollar |
1.5987583163069823 ns/iter |
1.6774691319703472 ns/iter |
0.95 |
Regex_Nested_Backtrack |
23.526041554668208 ns/iter |
24.666615026730817 ns/iter |
0.95 |
JSON_Array_Of_Objects_Unique |
395.94869354559063 ns/iter |
411.7977410463283 ns/iter |
0.96 |
JSON_Parse_1 |
3648.996622344662 ns/iter |
3931.465042164926 ns/iter |
0.93 |
JSON_Parse_Real |
5960.316875975064 ns/iter |
6195.790571690038 ns/iter |
0.96 |
JSON_Parse_Decimal |
7599.51328834422 ns/iter |
8054.806417488824 ns/iter |
0.94 |
JSON_Parse_Schema_ISO_Language |
2593443.617100551 ns/iter |
2890635.5085471924 ns/iter |
0.90 |
JSON_Fast_Hash_Helm_Chart_Lock |
54.23514166541274 ns/iter |
57.77418700423594 ns/iter |
0.94 |
JSON_Equality_Helm_Chart_Lock |
123.52676795854939 ns/iter |
133.77942099669124 ns/iter |
0.92 |
JSON_Divisible_By_Decimal |
161.84452112890443 ns/iter |
167.0517532634962 ns/iter |
0.97 |
JSON_String_Equal/10 |
6.447689960257783 ns/iter |
6.791364545344627 ns/iter |
0.95 |
JSON_String_Equal/100 |
6.4018472143585425 ns/iter |
6.426778040372567 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.7578691329126244 ns/iter |
0.745839705560343 ns/iter |
1.02 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
3.287493784068819 ns/iter |
3.3302660899369285 ns/iter |
0.99 |
JSON_String_Fast_Hash/10 |
2.258600912103879 ns/iter |
2.2749144583377823 ns/iter |
0.99 |
JSON_String_Fast_Hash/100 |
1.9172987836887394 ns/iter |
2.0377962212866 ns/iter |
0.94 |
JSON_String_Key_Hash/10 |
1.2594991358454084 ns/iter |
1.346218129224088 ns/iter |
0.94 |
JSON_String_Key_Hash/100 |
2.0891284703635593 ns/iter |
2.111272696455072 ns/iter |
0.99 |
JSON_Object_Defines_Miss_Same_Length |
2.195242630019452 ns/iter |
2.360349048974053 ns/iter |
0.93 |
JSON_Object_Defines_Miss_Too_Small |
2.19286833032047 ns/iter |
2.348470976952758 ns/iter |
0.93 |
JSON_Object_Defines_Miss_Too_Large |
2.1934049447310096 ns/iter |
2.375928670654803 ns/iter |
0.92 |
Pointer_Object_Traverse |
13.389269406033288 ns/iter |
13.520664512305908 ns/iter |
0.99 |
Pointer_Object_Try_Traverse |
17.911584052575225 ns/iter |
19.304405281867062 ns/iter |
0.93 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
144.85583061544986 ns/iter |
153.92188429430786 ns/iter |
0.94 |
Pointer_Walker_Schema_ISO_Language |
3993090.815384466 ns/iter |
4316204.505747156 ns/iter |
0.93 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
908920.4119850643 ns/iter |
1051080.8237951144 ns/iter |
0.86 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1123972.127986391 ns/iter |
1279195.7982608436 ns/iter |
0.88 |
Pointer_Position_Tracker_Get_Deeply_Nested |
325.786149727991 ns/iter |
354.392526010201 ns/iter |
0.92 |
URITemplateRouter_Create |
21182.03271996217 ns/iter |
22084.5433717797 ns/iter |
0.96 |
URITemplateRouter_Match |
151.65956684510533 ns/iter |
164.24413381300494 ns/iter |
0.92 |
URITemplateRouter_Match_BasePath |
191.4934235502854 ns/iter |
186.6910522366328 ns/iter |
1.03 |
URITemplateRouterView_Restore |
8728.890285486767 ns/iter |
9300.954983399031 ns/iter |
0.94 |
URITemplateRouterView_Match |
121.65766443584437 ns/iter |
130.42821700380247 ns/iter |
0.93 |
URITemplateRouterView_Match_BasePath |
136.65378404257123 ns/iter |
145.1091451974123 ns/iter |
0.94 |
URITemplateRouterView_Arguments |
375.50257351052505 ns/iter |
407.44087603850085 ns/iter |
0.92 |
JSONL_Parse_Large |
11253685.841269983 ns/iter |
11612096.745763002 ns/iter |
0.97 |
JSONL_Parse_Large_GZIP |
12453494.157895014 ns/iter |
13347250.000000106 ns/iter |
0.93 |
HTML_Build_Table_100000 |
58983374.99999943 ns/iter |
64212370.33335577 ns/iter |
0.92 |
HTML_Render_Table_100000 |
2842952.2515527923 ns/iter |
3164331.756302434 ns/iter |
0.90 |
GZIP_Compress_ISO_Language_Set_3_Locations |
25704967.59259371 ns/iter |
27898090.291661978 ns/iter |
0.92 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4465728.897435803 ns/iter |
5228231.702701762 ns/iter |
0.85 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1409767.7499999008 ns/iter |
1515523.20833341 ns/iter |
0.93 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
264410.6329629663 ns/iter |
279213.07284770627 ns/iter |
0.95 |
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: 15141f2 | Previous: 34aaf42 | Ratio |
|---|---|---|---|
GZIP_Compress_ISO_Language_Set_3_Locations |
41689032.64706066 ns/iter |
38864782.2777778 ns/iter |
1.07 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4532572.974193456 ns/iter |
4628479.026489955 ns/iter |
0.98 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2341823.7643098263 ns/iter |
2082007.7492537654 ns/iter |
1.12 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
294409.8345070521 ns/iter |
394206.05762710836 ns/iter |
0.75 |
HTML_Build_Table_100000 |
70942602.20000024 ns/iter |
58907368.08332994 ns/iter |
1.20 |
HTML_Render_Table_100000 |
2174825.20615389 ns/iter |
1824407.5910289958 ns/iter |
1.19 |
JSONL_Parse_Large |
12066087.293102955 ns/iter |
12677630.40000008 ns/iter |
0.95 |
JSONL_Parse_Large_GZIP |
13449973.96153885 ns/iter |
13884842.725489903 ns/iter |
0.97 |
URITemplateRouter_Create |
30086.58577906956 ns/iter |
30816.78615080139 ns/iter |
0.98 |
URITemplateRouter_Match |
176.47399181264853 ns/iter |
174.51157363406176 ns/iter |
1.01 |
URITemplateRouter_Match_BasePath |
206.46651311847648 ns/iter |
198.59757157546576 ns/iter |
1.04 |
URITemplateRouterView_Restore |
8629.969620409604 ns/iter |
7742.765142508131 ns/iter |
1.11 |
URITemplateRouterView_Match |
131.43904116226835 ns/iter |
140.59993679831857 ns/iter |
0.93 |
URITemplateRouterView_Match_BasePath |
155.77424703959161 ns/iter |
161.27852470063084 ns/iter |
0.97 |
URITemplateRouterView_Arguments |
457.9340002815763 ns/iter |
491.5550231788312 ns/iter |
0.93 |
Pointer_Object_Traverse |
27.482593448570835 ns/iter |
26.594318239594212 ns/iter |
1.03 |
Pointer_Object_Try_Traverse |
22.130204664929657 ns/iter |
22.452926442287986 ns/iter |
0.99 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
150.65258932863892 ns/iter |
157.57648111454705 ns/iter |
0.96 |
Pointer_Walker_Schema_ISO_Language |
3461048.067307524 ns/iter |
3268673.6226415774 ns/iter |
1.06 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1551333.9094922638 ns/iter |
1601148.694954205 ns/iter |
0.97 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1717840.37254896 ns/iter |
1812795.1731265746 ns/iter |
0.95 |
Pointer_Position_Tracker_Get_Deeply_Nested |
572.5807931729091 ns/iter |
559.7862318933531 ns/iter |
1.02 |
JSON_Array_Of_Objects_Unique |
434.62304298744465 ns/iter |
415.9294043151167 ns/iter |
1.04 |
JSON_Parse_1 |
7871.451046212837 ns/iter |
8168.218335301968 ns/iter |
0.96 |
JSON_Parse_Real |
11823.130600620123 ns/iter |
12230.258475014743 ns/iter |
0.97 |
JSON_Parse_Decimal |
16606.660927308632 ns/iter |
17884.528944004367 ns/iter |
0.93 |
JSON_Parse_Schema_ISO_Language |
4594599.16993447 ns/iter |
4648866.699999795 ns/iter |
0.99 |
JSON_Fast_Hash_Helm_Chart_Lock |
63.82031389616179 ns/iter |
71.63840457070681 ns/iter |
0.89 |
JSON_Equality_Helm_Chart_Lock |
167.1145217726482 ns/iter |
151.05089232566777 ns/iter |
1.11 |
JSON_Divisible_By_Decimal |
229.1305523782496 ns/iter |
239.2940401120863 ns/iter |
0.96 |
JSON_String_Equal/10 |
5.793283192838073 ns/iter |
5.729719246162577 ns/iter |
1.01 |
JSON_String_Equal/100 |
6.6250199897258435 ns/iter |
6.540822276473385 ns/iter |
1.01 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.7123165326586697 ns/iter |
0.6236621106885242 ns/iter |
1.14 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
22.030323220265174 ns/iter |
25.209662925380957 ns/iter |
0.87 |
JSON_String_Fast_Hash/10 |
1.770512738235837 ns/iter |
1.5562441377560323 ns/iter |
1.14 |
JSON_String_Fast_Hash/100 |
1.7602615610386056 ns/iter |
1.557780227692358 ns/iter |
1.13 |
JSON_String_Key_Hash/10 |
1.0856941971585932 ns/iter |
1.2463074630151498 ns/iter |
0.87 |
JSON_String_Key_Hash/100 |
15.082772718404788 ns/iter |
12.438995331234219 ns/iter |
1.21 |
JSON_Object_Defines_Miss_Same_Length |
3.869944389515343 ns/iter |
3.423503433143671 ns/iter |
1.13 |
JSON_Object_Defines_Miss_Too_Small |
3.521150042303189 ns/iter |
3.1183798199938737 ns/iter |
1.13 |
JSON_Object_Defines_Miss_Too_Large |
4.2400382959942755 ns/iter |
3.7395606926091354 ns/iter |
1.13 |
Regex_Lower_S_Or_Upper_S_Asterisk |
0.7037450468420576 ns/iter |
0.6226677457025072 ns/iter |
1.13 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
0.7042377025784348 ns/iter |
0.6228361250909996 ns/iter |
1.13 |
Regex_Period_Asterisk |
1.0558248597620303 ns/iter |
0.9342106885186939 ns/iter |
1.13 |
Regex_Group_Period_Asterisk_Group |
1.0556331952899007 ns/iter |
0.9337839321180059 ns/iter |
1.13 |
Regex_Period_Plus |
0.7042255369709887 ns/iter |
0.6227471554477948 ns/iter |
1.13 |
Regex_Period |
0.7033473667934838 ns/iter |
0.6225039041674212 ns/iter |
1.13 |
Regex_Caret_Period_Plus_Dollar |
1.0555572589229107 ns/iter |
0.9350953851702016 ns/iter |
1.13 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
1.055329868046366 ns/iter |
0.9379392073294155 ns/iter |
1.13 |
Regex_Caret_Period_Asterisk_Dollar |
0.7034256457979582 ns/iter |
0.6227232734745292 ns/iter |
1.13 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
0.7033394295699087 ns/iter |
0.6226052568850392 ns/iter |
1.13 |
Regex_Caret_X_Hyphen |
3.5187037617978416 ns/iter |
4.050956211364134 ns/iter |
0.87 |
Regex_Period_Md_Dollar |
34.87034981687018 ns/iter |
30.81870904230188 ns/iter |
1.13 |
Regex_Caret_Slash_Period_Asterisk |
4.643005179156377 ns/iter |
4.6688534518999 ns/iter |
0.99 |
Regex_Caret_Period_Range_Dollar |
0.8394629537148927 ns/iter |
0.7792691276052113 ns/iter |
1.08 |
Regex_Nested_Backtrack |
45.804881261968795 ns/iter |
38.94860405419013 ns/iter |
1.18 |
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: 15141f2 | Previous: 34aaf42 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.2016415460166576 ns/iter |
2.4638336237410576 ns/iter |
0.89 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.181887395725688 ns/iter |
2.4663536634604015 ns/iter |
0.88 |
Regex_Period_Asterisk |
2.1787954810947308 ns/iter |
2.4629030256573996 ns/iter |
0.88 |
Regex_Group_Period_Asterisk_Group |
2.2085162850744036 ns/iter |
2.463727879203569 ns/iter |
0.90 |
Regex_Period_Plus |
2.490905866335293 ns/iter |
3.5167535669039545 ns/iter |
0.71 |
Regex_Period |
2.80191744632997 ns/iter |
3.8700109668725258 ns/iter |
0.72 |
Regex_Caret_Period_Plus_Dollar |
2.4894330835016136 ns/iter |
3.5159414883416513 ns/iter |
0.71 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.802301125206631 ns/iter |
3.868252565348381 ns/iter |
0.72 |
Regex_Caret_Period_Asterisk_Dollar |
3.11111645968079 ns/iter |
2.462365701570194 ns/iter |
1.26 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
3.4260324394846444 ns/iter |
2.8139753386996564 ns/iter |
1.22 |
Regex_Caret_X_Hyphen |
6.5444930652591085 ns/iter |
7.034370012268271 ns/iter |
0.93 |
Regex_Period_Md_Dollar |
27.6969672131649 ns/iter |
26.973919511120997 ns/iter |
1.03 |
Regex_Caret_Slash_Period_Asterisk |
6.846147147244532 ns/iter |
7.38502214578492 ns/iter |
0.93 |
Regex_Caret_Period_Range_Dollar |
4.046385889448298 ns/iter |
4.220750175463874 ns/iter |
0.96 |
Regex_Nested_Backtrack |
37.07293503064315 ns/iter |
36.60527041647199 ns/iter |
1.01 |
JSON_Array_Of_Objects_Unique |
417.76789337183783 ns/iter |
439.7142279550653 ns/iter |
0.95 |
JSON_Parse_1 |
6011.389355556986 ns/iter |
5849.886472059759 ns/iter |
1.03 |
JSON_Parse_Real |
10518.4159393069 ns/iter |
10445.789389186264 ns/iter |
1.01 |
JSON_Parse_Decimal |
11198.041866948528 ns/iter |
11468.401964285542 ns/iter |
0.98 |
JSON_Parse_Schema_ISO_Language |
3596247.056410471 ns/iter |
3690792.163157958 ns/iter |
0.97 |
JSON_Fast_Hash_Helm_Chart_Lock |
61.07926484130379 ns/iter |
73.51126263762835 ns/iter |
0.83 |
JSON_Equality_Helm_Chart_Lock |
161.70090233690425 ns/iter |
169.65415791089745 ns/iter |
0.95 |
JSON_Divisible_By_Decimal |
244.42997544285805 ns/iter |
244.86389864971184 ns/iter |
1.00 |
JSON_String_Equal/10 |
6.229428445667026 ns/iter |
5.991775394140684 ns/iter |
1.04 |
JSON_String_Equal/100 |
6.858017847560895 ns/iter |
6.690403384229683 ns/iter |
1.03 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.9372837702438307 ns/iter |
1.0551512847080624 ns/iter |
0.89 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
14.899267272986087 ns/iter |
12.350462461835118 ns/iter |
1.21 |
JSON_String_Fast_Hash/10 |
2.800768707929317 ns/iter |
2.8166616099196906 ns/iter |
0.99 |
JSON_String_Fast_Hash/100 |
2.803014124839705 ns/iter |
2.814633365570097 ns/iter |
1.00 |
JSON_String_Key_Hash/10 |
2.682908593923241 ns/iter |
2.462540922012255 ns/iter |
1.09 |
JSON_String_Key_Hash/100 |
9.019999131775165 ns/iter |
8.087459220638259 ns/iter |
1.12 |
JSON_Object_Defines_Miss_Same_Length |
3.7425746816852192 ns/iter |
4.220281160336834 ns/iter |
0.89 |
JSON_Object_Defines_Miss_Too_Small |
3.7397443279018217 ns/iter |
4.22185011403151 ns/iter |
0.89 |
JSON_Object_Defines_Miss_Too_Large |
3.7387250847009295 ns/iter |
4.221858300371276 ns/iter |
0.89 |
Pointer_Object_Traverse |
24.16950359552267 ns/iter |
27.22302401931262 ns/iter |
0.89 |
Pointer_Object_Try_Traverse |
26.074533560158734 ns/iter |
30.193071242080006 ns/iter |
0.86 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
227.97356064415365 ns/iter |
198.35296699125306 ns/iter |
1.15 |
Pointer_Walker_Schema_ISO_Language |
2991309.0000000894 ns/iter |
3157823.0807176805 ns/iter |
0.95 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1418404.620967783 ns/iter |
1428474.5413223708 ns/iter |
0.99 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1943544.1960785044 ns/iter |
1774544.2222221904 ns/iter |
1.10 |
Pointer_Position_Tracker_Get_Deeply_Nested |
631.3081231952582 ns/iter |
711.084226267753 ns/iter |
0.89 |
URITemplateRouter_Create |
32170.554526697848 ns/iter |
30500.123802091053 ns/iter |
1.05 |
URITemplateRouter_Match |
177.40484368672952 ns/iter |
182.37465112644279 ns/iter |
0.97 |
URITemplateRouter_Match_BasePath |
205.46604649451166 ns/iter |
220.40620515376344 ns/iter |
0.93 |
URITemplateRouterView_Restore |
7689.374543958749 ns/iter |
8709.839989239823 ns/iter |
0.88 |
URITemplateRouterView_Match |
145.3681309704864 ns/iter |
142.88015033791757 ns/iter |
1.02 |
URITemplateRouterView_Match_BasePath |
163.16021259413347 ns/iter |
164.06502625435766 ns/iter |
0.99 |
URITemplateRouterView_Arguments |
456.71445521269965 ns/iter |
468.317100555556 ns/iter |
0.98 |
JSONL_Parse_Large |
10835116.000000866 ns/iter |
9956251.542856924 ns/iter |
1.09 |
JSONL_Parse_Large_GZIP |
12027637.99999855 ns/iter |
11272418.064516116 ns/iter |
1.07 |
HTML_Build_Table_100000 |
66900338.90909448 ns/iter |
84437400.24999613 ns/iter |
0.79 |
HTML_Render_Table_100000 |
5315585.395348619 ns/iter |
5118168.20000006 ns/iter |
1.04 |
GZIP_Compress_ISO_Language_Set_3_Locations |
34626686.0500009 ns/iter |
36359866.526317164 ns/iter |
0.95 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4585762.868420542 ns/iter |
4654099.119205656 ns/iter |
0.99 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1910601.861035371 ns/iter |
2114196.196969708 ns/iter |
0.90 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
372514.709351757 ns/iter |
289523.38838173327 ns/iter |
1.29 |
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: 15141f2 | Previous: 34aaf42 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
8.874867187500206 ns/iter |
7.556757812499727 ns/iter |
1.17 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
8.848618303571547 ns/iter |
7.505568749999319 ns/iter |
1.18 |
Regex_Period_Asterisk |
8.867892857143797 ns/iter |
7.506770089285655 ns/iter |
1.18 |
Regex_Group_Period_Asterisk_Group |
8.869570942547472 ns/iter |
7.508362723213884 ns/iter |
1.18 |
Regex_Period_Plus |
11.284090625000687 ns/iter |
9.711862456642885 ns/iter |
1.16 |
Regex_Period |
11.360749999999697 ns/iter |
9.675583885375598 ns/iter |
1.17 |
Regex_Caret_Period_Plus_Dollar |
13.5918171874998 ns/iter |
9.712307812499432 ns/iter |
1.40 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
11.550955357143216 ns/iter |
9.721990135170026 ns/iter |
1.19 |
Regex_Caret_Period_Asterisk_Dollar |
8.876440848214326 ns/iter |
7.628424107143213 ns/iter |
1.16 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
8.99209151785715 ns/iter |
7.546667410714493 ns/iter |
1.19 |
Regex_Caret_X_Hyphen |
13.750567572540124 ns/iter |
11.609578125000297 ns/iter |
1.18 |
Regex_Period_Md_Dollar |
40.45679563112219 ns/iter |
38.39912388393176 ns/iter |
1.05 |
Regex_Caret_Slash_Period_Asterisk |
13.114625000000046 ns/iter |
11.305556249999071 ns/iter |
1.16 |
Regex_Caret_Period_Range_Dollar |
11.292779687499532 ns/iter |
9.690320046026631 ns/iter |
1.17 |
Regex_Nested_Backtrack |
50.279520000003686 ns/iter |
48.191374900504904 ns/iter |
1.04 |
JSON_Array_Of_Objects_Unique |
505.7141071428565 ns/iter |
481.87778613343704 ns/iter |
1.05 |
JSON_Parse_1 |
7983.87834821414 ns/iter |
8398.064732143392 ns/iter |
0.95 |
JSON_Parse_Real |
14003.654224757202 ns/iter |
15880.779017857705 ns/iter |
0.88 |
JSON_Parse_Decimal |
14523.919642857358 ns/iter |
15953.063078549661 ns/iter |
0.91 |
JSON_Parse_Schema_ISO_Language |
6810077.678571654 ns/iter |
5911978.999999974 ns/iter |
1.15 |
JSON_Fast_Hash_Helm_Chart_Lock |
70.93301339285826 ns/iter |
67.59868303570623 ns/iter |
1.05 |
JSON_Equality_Helm_Chart_Lock |
274.5748671685257 ns/iter |
259.24921428570866 ns/iter |
1.06 |
JSON_Divisible_By_Decimal |
266.62153274014497 ns/iter |
251.06649999997896 ns/iter |
1.06 |
JSON_String_Equal/10 |
12.105823606671429 ns/iter |
13.062875000000775 ns/iter |
0.93 |
JSON_String_Equal/100 |
13.245121428570071 ns/iter |
13.271016071430251 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
1.9251593749999072 ns/iter |
1.8894253137653771 ns/iter |
1.02 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
11.380704687500298 ns/iter |
12.910380357143124 ns/iter |
0.88 |
JSON_String_Fast_Hash/10 |
4.3966649310734 ns/iter |
3.7753376718299143 ns/iter |
1.16 |
JSON_String_Fast_Hash/100 |
4.243709163686718 ns/iter |
3.8158671360429413 ns/iter |
1.11 |
JSON_String_Key_Hash/10 |
4.255618257028978 ns/iter |
3.7622619584071 ns/iter |
1.13 |
JSON_String_Key_Hash/100 |
16.968445198872097 ns/iter |
14.441673149814045 ns/iter |
1.17 |
JSON_Object_Defines_Miss_Same_Length |
3.9494580427668677 ns/iter |
3.767383570584741 ns/iter |
1.05 |
JSON_Object_Defines_Miss_Too_Small |
4.001759248217514 ns/iter |
3.770665736607194 ns/iter |
1.06 |
JSON_Object_Defines_Miss_Too_Large |
5.033986607142334 ns/iter |
5.033411607142974 ns/iter |
1.00 |
Pointer_Object_Traverse |
42.12507351925593 ns/iter |
39.563822544641525 ns/iter |
1.06 |
Pointer_Object_Try_Traverse |
53.4431799999993 ns/iter |
52.170669999998154 ns/iter |
1.02 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
153.8806471481839 ns/iter |
165.3926562499868 ns/iter |
0.93 |
Pointer_Walker_Schema_ISO_Language |
15637437.99999884 ns/iter |
11532396.42857175 ns/iter |
1.36 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
2049848.4949830922 ns/iter |
1984043.928571363 ns/iter |
1.03 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
3148832.5892853807 ns/iter |
3137611.1607147753 ns/iter |
1.00 |
Pointer_Position_Tracker_Get_Deeply_Nested |
668.7883621481385 ns/iter |
621.0687385563201 ns/iter |
1.08 |
URITemplateRouter_Create |
36981.22354957755 ns/iter |
39986.95023303119 ns/iter |
0.92 |
URITemplateRouter_Match |
211.06168749998488 ns/iter |
211.0104481691899 ns/iter |
1.00 |
URITemplateRouter_Match_BasePath |
245.6794642856965 ns/iter |
240.99700435300431 ns/iter |
1.02 |
URITemplateRouterView_Restore |
23949.29520875868 ns/iter |
32076.09821428394 ns/iter |
0.75 |
URITemplateRouterView_Match |
158.03535714284627 ns/iter |
157.25758928571818 ns/iter |
1.00 |
URITemplateRouterView_Match_BasePath |
181.84991802231255 ns/iter |
179.63227095752313 ns/iter |
1.01 |
URITemplateRouterView_Arguments |
443.05787500000804 ns/iter |
447.9554358154678 ns/iter |
0.99 |
JSONL_Parse_Large |
26494819.230772637 ns/iter |
30148950.000002135 ns/iter |
0.88 |
JSONL_Parse_Large_GZIP |
26170015.38461549 ns/iter |
29988079.999998264 ns/iter |
0.87 |
HTML_Build_Table_100000 |
93320311.11110458 ns/iter |
86540357.14286172 ns/iter |
1.08 |
HTML_Render_Table_100000 |
8597725.333332468 ns/iter |
7833207.7777771605 ns/iter |
1.10 |
GZIP_Compress_ISO_Language_Set_3_Locations |
44209537.49999512 ns/iter |
40834464.70588115 ns/iter |
1.08 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
12006624.99999997 ns/iter |
10707415.624999328 ns/iter |
1.12 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2567033.3333334667 ns/iter |
2287602.6755853905 ns/iter |
1.12 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
695390.066964333 ns/iter |
655319.7544642484 ns/iter |
1.06 |
This comment was automatically generated by workflow using github-action-benchmark.
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
c65b222 to
15141f2
Compare
Signed-off-by: Juan Cruz Viotti jv@jviotti.com