Skip to content

Cover Decimal boundary cases and fixed-format dectest rows - #3019

Merged
jviotti merged 1 commit into
mainfrom
harden-decimal
Oct 13, 2026
Merged

jviotti merged 1 commit into
mainfrom
harden-decimal

Conversation

@jviotti

@jviotti jviotti commented Oct 13, 2026 •

Copy link
Copy Markdown
Member

Signed-off-by: Juan Cruz Viotti jv@jviotti.com

View guided diff

Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
@augmentcode

augmentcode Bot commented Oct 13, 2026

Copy link
Copy Markdown
🤖 Augment PR Summary

This test-only PR expands Decimal regression coverage for exponent and representation boundaries.

  • Covers integral rounding carries for positive and negative values.
  • Checks signed-zero addition and quantum preservation across extreme exponents.
  • Verifies tiny values round to zero while retaining their sign.
  • Tests JSON divisibility using equivalent full-digit and exponent-form divisors.
  • Enables context-independent fixed-format IBM copy, comparison, and samequantum files while keeping fixed-format arithmetic excluded.

🤖 Was this summary useful? React with 👍 or 👎

@augmentcode augmentcode Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review completed. No suggestions at this time.

Comment augment review to trigger a new review at any time.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 3 files

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="test/numeric/decimal_ibm_dectest.cc">

<violation number="1" location="test/numeric/decimal_ibm_dectest.cc:630">
P2: This also admits `ddCompareSig` and `dqCompareSig`, but `run_comparison` treats `comparesig` NaN results as unordered boolean comparisons and never checks the expected NaN or `invalid_operation`. Update the harness to validate CompareSignal results before enabling these files.</violation>
</file>

Reply with feedback, questions, or to request a fix.

View guided diff | Re-trigger cubic

// comparing and asking whether two operands share a quantum reach no
// context at all, and those families carry rows no other file does
if (lower.find("copy") != std::string::npos ||
lower.find("compare") != std::string::npos ||

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: This also admits ddCompareSig and dqCompareSig, but run_comparison treats comparesig NaN results as unordered boolean comparisons and never checks the expected NaN or invalid_operation. Update the harness to validate CompareSignal results before enabling these files.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. At test/numeric/decimal_ibm_dectest.cc, line 630:

<comment>This also admits `ddCompareSig` and `dqCompareSig`, but `run_comparison` treats `comparesig` NaN results as unordered boolean comparisons and never checks the expected NaN or `invalid_operation`. Update the harness to validate CompareSignal results before enabling these files.</comment>

<file context>
@@ -622,6 +622,16 @@ static auto should_skip_file(const std::string &filename) -> bool {
+    // comparing and asking whether two operands share a quantum reach no
+    // context at all, and those families carry rows no other file does
+    if (lower.find("copy") != std::string::npos ||
+        lower.find("compare") != std::string::npos ||
+        lower.find("samequantum") != std::string::npos) {
+      return false;
</file context>

@jviotti
jviotti merged commit 2bc7c4a into main Oct 13, 2026
15 checks passed
@github-actions

Copy link
Copy Markdown

Benchmark windows/msvc

Measured against main at 5181fd3.

9 slower, 6 faster, 100 within 5%.

Benchmark main This branch Change
Pointer_Walker_Schema_ISO_Language 7.31 ms 8.46 ms +15.7%
Regex_Period_Md_Dollar 59.14 ns 65.89 ns +11.4%
Pointer_Position_Tracker_Get_Deeply_Nested 471.27 ns 523.59 ns +11.1%
Markdown_To_HTML_Realistic_Document 4.88 ms 5.34 ms +9.5%
Pointer_Object_Traverse 58.13 ns 63.63 ns +9.5%
URITemplateRouterView_Restore 20.04 us 21.46 us +7.1%
Schema_Frame_Deeply_Nested_References 18.50 ms 19.74 ms +6.7%
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 10.97 ns 11.59 ns +5.6%
Schema_Tracker_ISO_Language 8.90 ms 9.37 ms +5.3%
JSON_Fast_Hash_Helm_Chart_Lock 98.06 ns 93.14 ns -5.0%
JSON_Object_Defines_Miss_Same_Length 2.99 ns 2.83 ns -5.3%
JSON_Parse_Object_Scalar_Properties 6.45 us 5.95 us -7.7%
JSON_Object_At_Last_Key_128 81.60 ns 73.88 ns -9.5%
Pointer_Push_Back_Pointer_To_Weak_Pointer 147.77 ns 125.17 ns -15.3%
Regex_Nested_Backtrack 71.77 ns 58.15 ns -19.0%
All 115 benchmarks
Benchmark main This branch Change
Regex_Lower_S_Or_Upper_S_Asterisk 3.99 ns 3.99 ns +0.0%
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 4.04 ns 3.93 ns -2.8%
Regex_Period_Asterisk 4.05 ns 3.92 ns -3.1%
Regex_Group_Period_Asterisk_Group 3.95 ns 3.95 ns -0.1%
Regex_Period_Plus 3.68 ns 3.69 ns +0.4%
Regex_Period 3.67 ns 3.59 ns -2.0%
Regex_Caret_Period_Plus_Dollar 3.64 ns 3.64 ns +0.1%
Regex_Caret_Group_Period_Plus_Group_Dollar 3.66 ns 3.74 ns +2.2%
Regex_Caret_Period_Asterisk_Dollar 3.98 ns 3.97 ns -0.2%
Regex_Caret_Group_Period_Asterisk_Group_Dollar 3.95 ns 3.99 ns +1.0%
Regex_Caret_X_Hyphen 6.28 ns 6.17 ns -1.8%
Regex_Period_Md_Dollar 59.14 ns 65.89 ns +11.4%
Regex_Caret_Slash_Period_Asterisk 5.93 ns 5.84 ns -1.5%
Regex_Caret_Period_Range_Dollar 4.22 ns 4.21 ns -0.2%
Regex_Nested_Backtrack 71.77 ns 58.15 ns -19.0%
JSON_Array_Of_Objects_Unique 468.55 ns 463.78 ns -1.0%
JSON_Array_Of_Integers_Unique_256 5.75 us 5.71 us -0.8%
JSON_Array_Of_Strings_Unique_Colliding_256 218.24 us 210.95 us -3.3%
JSON_Parse_1 7.28 us 7.42 us +2.0%
JSON_Parse_Real 6.16 us 6.20 us +0.7%
JSON_Parse_Real_Inexact 5.71 us 5.67 us -0.8%
JSON_Parse_Decimal 9.53 us 9.71 us +1.9%
JSON_Parse_Schema_ISO_Language 6.62 ms 6.75 ms +1.9%
JSON_Parse_KrakenD 1.92 ms 1.99 ms +4.0%
JSON_Stringify_ISO_Language 7.96 ms 8.30 ms +4.3%
JSON_Prettify_KrakenD 6.18 ms 6.44 ms +4.2%
JSON_Parse_Integer 5.32 us 5.38 us +1.1%
JSON_Parse_String_NonSSO_Plain 6.53 us 6.59 us +1.0%
JSON_Parse_String_SSO_Plain 3.27 us 3.40 us +4.0%
JSON_Parse_String_Escape_Heavy 17.21 us 17.37 us +0.9%
JSON_Parse_Object_Short_Keys 12.19 us 11.79 us -3.3%
JSON_Parse_Object_Scalar_Properties 6.45 us 5.95 us -7.7%
JSON_Parse_Object_Array_Properties 9.69 us 9.46 us -2.4%
JSON_Parse_Object_Object_Properties 9.64 us 9.37 us -2.8%
JSON_Parse_Nested_Containers 67.32 us 67.83 us +0.8%
JSON_Fast_Hash_Helm_Chart_Lock 98.06 ns 93.14 ns -5.0%
JSON_Equality_Helm_Chart_Lock 164.77 ns 160.35 ns -2.7%
JSON_String_Equal_10 7.92 ns 7.96 ns +0.4%
JSON_String_Equal_100 9.00 ns 9.09 ns +1.0%
JSON_String_Equal_Small_By_Perfect_Hash_10 1.97 ns 1.97 ns +0.4%
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 10.97 ns 11.59 ns +5.6%
JSON_String_Fast_Hash_10 5.11 ns 5.07 ns -0.8%
JSON_String_Fast_Hash_100 5.47 ns 5.56 ns +1.8%
JSON_String_Key_Hash_10 3.93 ns 3.92 ns -0.2%
JSON_String_Key_Hash_100 8.79 ns 8.71 ns -0.8%
JSON_Object_Defines_Miss_Same_Length 2.99 ns 2.83 ns -5.3%
JSON_Object_Defines_Miss_Too_Small 3.16 ns 3.10 ns -1.9%
JSON_Object_Defines_Miss_Too_Large 2.91 ns 2.78 ns -4.3%
JSON_From_String_Copy 50.68 ns 49.36 ns -2.6%
JSON_From_String_Temporary 66.10 ns 67.63 ns +2.3%
JSON_Number_To_Double 55.07 ns 55.08 ns +0.0%
JSON_Object_At_Last_Key_8 5.87 ns 6.14 ns +4.7%
JSON_Object_At_Last_Key_32 19.99 ns 19.68 ns -1.6%
JSON_Object_At_Last_Key_128 81.60 ns 73.88 ns -9.5%
JSON_Object_At_Last_Key_512 337.13 ns 343.64 ns +1.9%
JSON_Divisible_By_Decimal 394.68 ns 397.90 ns +0.8%
JSON_PropertySet_Contains 68.69 ns 71.16 ns +3.6%
JSON_PropertySet_Filter_Object_Properties 43.81 ns 45.09 ns +2.9%
JSON_PropertySet_Insert 1.09 us 1.10 us +1.5%
JSON_Stringify_Schema_Web_Of_Things 181.49 us 183.11 us +0.9%
JSON_Prettify_Schema_Web_Of_Things 575.94 us 580.13 us +0.7%
Pointer_Object_Traverse 58.13 ns 63.63 ns +9.5%
Pointer_Object_Try_Traverse 54.03 ns 55.61 ns +2.9%
Pointer_Push_Back_Pointer_To_Weak_Pointer 147.77 ns 125.17 ns -15.3%
Pointer_Walker_Schema_ISO_Language 7.31 ms 8.46 ms +15.7%
Pointer_Untracked_Deeply_Nested 2.00 ms 2.09 ms +4.3%
Pointer_Tracked_Deeply_Nested 3.04 ms 3.08 ms +1.4%
Pointer_Position_Tracker_Get_Deeply_Nested 471.27 ns 523.59 ns +11.1%
Schema_Tracker_ISO_Language 8.90 ms 9.37 ms +5.3%
Schema_Tracker_ISO_Language_To_JSON 55.21 ms 54.21 ms -1.8%
Schema_Frame_WoT_References 4.17 ms 4.20 ms +0.9%
Schema_Frame_OMC_References 18.79 ms 18.04 ms -4.0%
Schema_Frame_OMC_Pointers 33.85 ms 34.52 ms +2.0%
Schema_Frame_OMC_Locations 15.58 ms 16.24 ms +4.2%
Schema_Frame_ISO_Language_Locations 69.68 ms 69.43 ms -0.4%
Schema_Frame_ISO_Language_Root 1.91 us 1.89 us -1.4%
Schema_Frame_KrakenD_References 31.47 ms 32.30 ms +2.7%
Schema_Frame_KrakenD_Reachable 213.33 ms 218.81 ms +2.6%
Schema_Frame_ISO_Language_Locations_To_JSON 146.10 ms 148.04 ms +1.3%
Schema_Frame_Many_Resources_References 290.10 ms 295.07 ms +1.7%
Schema_Frame_Deeply_Nested_References 18.50 ms 19.74 ms +6.7%
Schema_Format_ISO_Language 74.31 ms 72.07 ms -3.0%
Schema_Bundle_Meta_2020_12 1.15 ms 1.13 ms -2.2%
Schema_Bundle_Many_Remotes_With_Fragments 22.62 ms 22.45 ms -0.8%
OpenAPI_Frame_GSMTasks_3_0 313.79 ms 317.44 ms +1.2%
OpenAPI_Format_Synthetic_3_1 104.58 ms 103.64 ms -0.9%
JSONPath_Descendant_Filter_Nested 2.74 us 2.64 us -3.7%
URITemplateRouter_Create 30.14 us 31.01 us +2.9%
URITemplateRouter_Match 173.52 ns 179.07 ns +3.2%
URITemplateRouterView_Restore 20.04 us 21.46 us +7.1%
URITemplateRouterView_Match 163.39 ns 164.35 ns +0.6%
URITemplateRouterView_Arguments 487.62 ns 484.58 ns -0.6%
URITemplateRouter_Match_BasePath 205.13 ns 213.95 ns +4.3%
URITemplateRouterView_Match_BasePath 188.57 ns 189.62 ns +0.6%
JSONL_Parse_Large 26.92 ms 27.15 ms +0.9%
JSONL_Parse_Large_GZIP 25.82 ms 26.35 ms +2.0%
JSONLD_Catalog_Annotation_List_Populate 2.58 ms 2.52 ms -2.2%
JSONLD_Catalog_Materialize 6.92 ms 7.05 ms +2.0%
HTML_Build_Table_100000 58.95 ms 58.09 ms -1.5%
HTML_Render_Table_100000 6.80 ms 6.82 ms +0.3%
Markdown_To_HTML_Realistic_Document 4.88 ms 5.34 ms +9.5%
Markdown_To_HTML_Pathological 16.10 ms 15.86 ms -1.5%
Markdown_To_HTML_Short_Descriptions 601.79 ns 615.16 ns +2.2%
GZIP_Compress_ISO_Language_Set_3_Locations 32.09 ms 32.00 ms -0.3%
GZIP_Decompress_ISO_Language_Set_3_Locations 8.59 ms 8.64 ms +0.5%
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations 10.65 ms 10.60 ms -0.4%
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations 13.27 ms 13.31 ms +0.3%
GZIP_Compress_ISO_Language_Set_3_Schema 2.09 ms 2.06 ms -1.5%
GZIP_Decompress_ISO_Language_Set_3_Schema 471.31 us 482.15 us +2.3%
JOSE_VerifySignature_RS256 19.10 us 18.89 us -1.1%
JOSE_VerifySignature_ES512 1.23 ms 1.20 ms -2.2%
Crypto_CRC32_Large_JSONL 93.71 us 94.59 us +0.9%
Crypto_AES_GCM_Encrypt_128_1KB 1.93 us 1.95 us +0.9%
Crypto_AES_GCM_Decrypt_128_1KB 1.96 us 1.99 us +1.9%
Crypto_AES_GCM_Encrypt_256_1KB 1.99 us 2.08 us +4.6%

@jviotti
jviotti deleted the harden-decimal branch October 13, 2026 19:44
@github-actions

Copy link
Copy Markdown

Benchmark linux/llvm

Measured against main at 5181fd3.

10 slower, 12 faster, 93 within 5%.

Benchmark main This branch Change
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 10.58 ns 14.93 ns +41.1%
JSON_String_Key_Hash_100 6.54 ns 9.07 ns +38.7%
Pointer_Push_Back_Pointer_To_Weak_Pointer 145.22 ns 201.15 ns +38.5%
JSON_String_Key_Hash_10 2.18 ns 2.75 ns +26.0%
JSON_String_Equal_100 6.26 ns 7.78 ns +24.3%
Regex_Caret_X_Hyphen 5.30 ns 6.54 ns +23.5%
JSON_Number_To_Double 12.78 ns 14.95 ns +17.0%
JSON_String_Equal_10 6.23 ns 7.16 ns +14.9%
JSON_Equality_Helm_Chart_Lock 160.78 ns 179.01 ns +11.3%
JSON_From_String_Copy 10.69 ns 11.26 ns +5.3%
Schema_Frame_OMC_Pointers 17.86 ms 16.96 ms -5.0%
Regex_Caret_Slash_Period_Asterisk 6.23 ns 5.91 ns -5.1%
Schema_Frame_Many_Resources_References 113.85 ms 107.72 ms -5.4%
Pointer_Position_Tracker_Get_Deeply_Nested 631.21 ns 596.02 ns -5.6%
Regex_Caret_Group_Period_Plus_Group_Dollar 2.49 ns 2.22 ns -10.7%
Regex_Caret_Period_Plus_Dollar 2.49 ns 2.22 ns -10.8%
Regex_Period_Plus 2.80 ns 2.49 ns -11.1%
Regex_Period 2.80 ns 2.49 ns -11.2%
JSON_Array_Of_Integers_Unique_256 5.09 us 4.47 us -12.1%
Regex_Caret_Period_Asterisk_Dollar 3.42 ns 2.49 ns -27.2%
Regex_Caret_Group_Period_Asterisk_Group_Dollar 3.42 ns 2.49 ns -27.3%
Regex_Caret_Period_Range_Dollar 4.36 ns 3.12 ns -28.6%
All 115 benchmarks
Benchmark main This branch Change
Regex_Lower_S_Or_Upper_S_Asterisk 2.18 ns 2.21 ns +1.5%
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.18 ns 2.19 ns +0.5%
Regex_Period_Asterisk 2.18 ns 2.20 ns +0.9%
Regex_Group_Period_Asterisk_Group 2.18 ns 2.18 ns +0.2%
Regex_Period_Plus 2.80 ns 2.49 ns -11.1%
Regex_Period 2.80 ns 2.49 ns -11.2%
Regex_Caret_Period_Plus_Dollar 2.49 ns 2.22 ns -10.8%
Regex_Caret_Group_Period_Plus_Group_Dollar 2.49 ns 2.22 ns -10.7%
Regex_Caret_Period_Asterisk_Dollar 3.42 ns 2.49 ns -27.2%
Regex_Caret_Group_Period_Asterisk_Group_Dollar 3.42 ns 2.49 ns -27.3%
Regex_Caret_X_Hyphen 5.30 ns 6.54 ns +23.5%
Regex_Period_Md_Dollar 27.24 ns 27.33 ns +0.3%
Regex_Caret_Slash_Period_Asterisk 6.23 ns 5.91 ns -5.1%
Regex_Caret_Period_Range_Dollar 4.36 ns 3.12 ns -28.6%
Regex_Nested_Backtrack 38.59 ns 38.65 ns +0.2%
JSON_Array_Of_Objects_Unique 390.21 ns 386.20 ns -1.0%
JSON_Array_Of_Integers_Unique_256 5.09 us 4.47 us -12.1%
JSON_Array_Of_Strings_Unique_Colliding_256 205.69 us 205.54 us -0.1%
JSON_Parse_1 4.59 us 4.50 us -1.8%
JSON_Parse_Real 4.48 us 4.50 us +0.6%
JSON_Parse_Real_Inexact 4.22 us 4.31 us +2.1%
JSON_Parse_Decimal 7.19 us 7.40 us +3.0%
JSON_Parse_Schema_ISO_Language 3.33 ms 3.34 ms +0.3%
JSON_Parse_KrakenD 1.11 ms 1.10 ms -1.0%
JSON_Stringify_ISO_Language 2.49 ms 2.48 ms -0.4%
JSON_Prettify_KrakenD 2.06 ms 2.06 ms +0.1%
JSON_Parse_Integer 3.65 us 3.64 us -0.1%
JSON_Parse_String_NonSSO_Plain 3.29 us 3.28 us -0.4%
JSON_Parse_String_SSO_Plain 2.86 us 2.89 us +1.0%
JSON_Parse_String_Escape_Heavy 12.48 us 12.49 us +0.1%
JSON_Parse_Object_Short_Keys 8.02 us 7.82 us -2.5%
JSON_Parse_Object_Scalar_Properties 4.09 us 3.97 us -2.9%
JSON_Parse_Object_Array_Properties 5.34 us 5.47 us +2.4%
JSON_Parse_Object_Object_Properties 5.27 us 5.43 us +3.0%
JSON_Parse_Nested_Containers 34.35 us 34.02 us -1.0%
JSON_Fast_Hash_Helm_Chart_Lock 53.52 ns 53.51 ns -0.0%
JSON_Equality_Helm_Chart_Lock 160.78 ns 179.01 ns +11.3%
JSON_String_Equal_10 6.23 ns 7.16 ns +14.9%
JSON_String_Equal_100 6.26 ns 7.78 ns +24.3%
JSON_String_Equal_Small_By_Perfect_Hash_10 0.94 ns 0.94 ns -0.2%
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 10.58 ns 14.93 ns +41.1%
JSON_String_Fast_Hash_10 2.18 ns 2.18 ns +0.0%
JSON_String_Fast_Hash_100 2.18 ns 2.18 ns +0.1%
JSON_String_Key_Hash_10 2.18 ns 2.75 ns +26.0%
JSON_String_Key_Hash_100 6.54 ns 9.07 ns +38.7%
JSON_Object_Defines_Miss_Same_Length 2.95 ns 2.97 ns +1.0%
JSON_Object_Defines_Miss_Too_Small 3.42 ns 3.42 ns -0.1%
JSON_Object_Defines_Miss_Too_Large 2.75 ns 2.72 ns -0.9%
JSON_From_String_Copy 10.69 ns 11.26 ns +5.3%
JSON_From_String_Temporary 10.06 ns 10.18 ns +1.2%
JSON_Number_To_Double 12.78 ns 14.95 ns +17.0%
JSON_Object_At_Last_Key_8 5.85 ns 5.81 ns -0.7%
JSON_Object_At_Last_Key_32 12.17 ns 12.31 ns +1.2%
JSON_Object_At_Last_Key_128 48.58 ns 48.53 ns -0.1%
JSON_Object_At_Last_Key_512 383.72 ns 381.93 ns -0.5%
JSON_Divisible_By_Decimal 298.68 ns 292.04 ns -2.2%
JSON_PropertySet_Contains 50.73 ns 50.66 ns -0.1%
JSON_PropertySet_Filter_Object_Properties 51.11 ns 51.10 ns -0.0%
JSON_PropertySet_Insert 568.22 ns 581.32 ns +2.3%
JSON_Stringify_Schema_Web_Of_Things 61.60 us 61.48 us -0.2%
JSON_Prettify_Schema_Web_Of_Things 174.95 us 175.24 us +0.2%
Pointer_Object_Traverse 28.37 ns 28.40 ns +0.1%
Pointer_Object_Try_Traverse 33.61 ns 33.60 ns -0.0%
Pointer_Push_Back_Pointer_To_Weak_Pointer 145.22 ns 201.15 ns +38.5%
Pointer_Walker_Schema_ISO_Language 1.52 ms 1.53 ms +0.8%
Pointer_Untracked_Deeply_Nested 1.23 ms 1.23 ms -0.2%
Pointer_Tracked_Deeply_Nested 1.59 ms 1.60 ms +0.6%
Pointer_Position_Tracker_Get_Deeply_Nested 631.21 ns 596.02 ns -5.6%
Schema_Tracker_ISO_Language 4.36 ms 4.38 ms +0.5%
Schema_Tracker_ISO_Language_To_JSON 16.04 ms 16.24 ms +1.3%
Schema_Frame_WoT_References 2.06 ms 2.05 ms -0.5%
Schema_Frame_OMC_References 9.27 ms 9.11 ms -1.7%
Schema_Frame_OMC_Pointers 17.86 ms 16.96 ms -5.0%
Schema_Frame_OMC_Locations 7.88 ms 7.88 ms -0.0%
Schema_Frame_ISO_Language_Locations 42.16 ms 42.34 ms +0.4%
Schema_Frame_ISO_Language_Root 334.22 ns 329.03 ns -1.6%
Schema_Frame_KrakenD_References 15.34 ms 14.97 ms -2.4%
Schema_Frame_KrakenD_Reachable 150.59 ms 151.98 ms +0.9%
Schema_Frame_ISO_Language_Locations_To_JSON 30.44 ms 30.30 ms -0.5%
Schema_Frame_Many_Resources_References 113.85 ms 107.72 ms -5.4%
Schema_Frame_Deeply_Nested_References 10.71 ms 10.71 ms +0.0%
Schema_Format_ISO_Language 46.58 ms 46.04 ms -1.2%
Schema_Bundle_Meta_2020_12 584.79 us 586.68 us +0.3%
Schema_Bundle_Many_Remotes_With_Fragments 6.52 ms 6.56 ms +0.6%
OpenAPI_Frame_GSMTasks_3_0 157.80 ms 156.79 ms -0.6%
OpenAPI_Format_Synthetic_3_1 50.08 ms 50.79 ms +1.4%
JSONPath_Descendant_Filter_Nested 1.84 us 1.85 us +0.4%
URITemplateRouter_Create 22.93 us 22.83 us -0.5%
URITemplateRouter_Match 175.86 ns 173.97 ns -1.1%
URITemplateRouterView_Restore 8.58 us 8.41 us -1.9%
URITemplateRouterView_Match 143.98 ns 144.25 ns +0.2%
URITemplateRouterView_Arguments 446.02 ns 425.96 ns -4.5%
URITemplateRouter_Match_BasePath 199.76 ns 198.99 ns -0.4%
URITemplateRouterView_Match_BasePath 164.32 ns 164.32 ns -0.0%
JSONL_Parse_Large 9.37 ms 9.61 ms +2.6%
JSONL_Parse_Large_GZIP 9.56 ms 9.83 ms +2.8%
JSONLD_Catalog_Annotation_List_Populate 611.79 us 613.29 us +0.2%
JSONLD_Catalog_Materialize 3.46 ms 3.49 ms +0.9%
HTML_Build_Table_100000 36.99 ms 37.44 ms +1.2%
HTML_Render_Table_100000 1.76 ms 1.79 ms +1.5%
Markdown_To_HTML_Realistic_Document 4.05 ms 4.09 ms +1.0%
Markdown_To_HTML_Pathological 13.57 ms 13.58 ms +0.0%
Markdown_To_HTML_Short_Descriptions 572.74 ns 573.71 ns +0.2%
GZIP_Compress_ISO_Language_Set_3_Locations 37.39 ms 37.41 ms +0.1%
GZIP_Decompress_ISO_Language_Set_3_Locations 5.11 ms 5.12 ms +0.2%
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations 7.09 ms 7.09 ms -0.0%
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations 9.17 ms 9.11 ms -0.7%
GZIP_Compress_ISO_Language_Set_3_Schema 2.23 ms 2.23 ms +0.0%
GZIP_Decompress_ISO_Language_Set_3_Schema 424.41 us 427.98 us +0.8%
JOSE_VerifySignature_RS256 48.35 us 48.52 us +0.3%
JOSE_VerifySignature_ES512 1.74 ms 1.74 ms -0.2%
Crypto_CRC32_Large_JSONL 101.72 us 101.85 us +0.1%
Crypto_AES_GCM_Encrypt_128_1KB 32.43 us 32.49 us +0.2%
Crypto_AES_GCM_Decrypt_128_1KB 32.40 us 32.54 us +0.4%
Crypto_AES_GCM_Encrypt_256_1KB 39.18 us 39.28 us +0.3%

@github-actions

Copy link
Copy Markdown

Benchmark linux/gcc

Measured against main at 5181fd3.

2 slower, 2 faster, 111 within 5%.

Benchmark main This branch Change
Pointer_Push_Back_Pointer_To_Weak_Pointer 130.12 ns 138.89 ns +6.7%
Schema_Frame_OMC_Pointers 18.93 ms 20.04 ms +5.9%
JSON_Fast_Hash_Helm_Chart_Lock 91.60 ns 72.07 ns -21.3%
Regex_Caret_Period_Range_Dollar 3.89 ns 2.96 ns -24.0%
All 115 benchmarks
Benchmark main This branch Change
Crypto_CRC32_Large_JSONL 101.62 us 101.56 us -0.1%
Crypto_AES_GCM_Encrypt_128_1KB 1.27 us 1.26 us -0.5%
Crypto_AES_GCM_Decrypt_128_1KB 1.24 us 1.24 us +0.0%
Crypto_AES_GCM_Encrypt_256_1KB 1.31 us 1.30 us -0.7%
JOSE_VerifySignature_RS256 22.30 us 22.24 us -0.3%
JOSE_VerifySignature_ES512 577.91 us 578.25 us +0.1%
GZIP_Compress_ISO_Language_Set_3_Locations 30.12 ms 30.15 ms +0.1%
GZIP_Decompress_ISO_Language_Set_3_Locations 5.26 ms 5.26 ms -0.1%
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations 7.29 ms 7.29 ms -0.0%
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations 9.94 ms 9.89 ms -0.5%
GZIP_Compress_ISO_Language_Set_3_Schema 2.05 ms 2.06 ms +0.4%
GZIP_Decompress_ISO_Language_Set_3_Schema 427.57 us 427.13 us -0.1%
Markdown_To_HTML_Realistic_Document 5.13 ms 5.11 ms -0.3%
Markdown_To_HTML_Pathological 13.42 ms 13.36 ms -0.5%
Markdown_To_HTML_Short_Descriptions 694.67 ns 696.31 ns +0.2%
HTML_Build_Table_100000 39.69 ms 39.43 ms -0.7%
HTML_Render_Table_100000 1.82 ms 1.79 ms -1.7%
JSONLD_Catalog_Annotation_List_Populate 730.20 us 724.63 us -0.8%
JSONLD_Catalog_Materialize 3.71 ms 3.75 ms +0.9%
JSONL_Parse_Large 11.01 ms 10.95 ms -0.6%
JSONL_Parse_Large_GZIP 11.12 ms 11.11 ms -0.1%
URITemplateRouter_Create 21.51 us 21.75 us +1.1%
URITemplateRouter_Match 155.28 ns 155.49 ns +0.1%
URITemplateRouterView_Restore 8.37 us 8.46 us +1.1%
URITemplateRouterView_Match 129.96 ns 130.21 ns +0.2%
URITemplateRouterView_Arguments 473.61 ns 474.88 ns +0.3%
URITemplateRouter_Match_BasePath 182.06 ns 183.38 ns +0.7%
URITemplateRouterView_Match_BasePath 146.42 ns 147.60 ns +0.8%
JSONPath_Descendant_Filter_Nested 1.99 us 1.98 us -0.2%
OpenAPI_Frame_GSMTasks_3_0 158.34 ms 161.07 ms +1.7%
OpenAPI_Format_Synthetic_3_1 55.22 ms 56.37 ms +2.1%
Schema_Frame_WoT_References 2.26 ms 2.27 ms +0.4%
Schema_Frame_OMC_References 10.22 ms 10.52 ms +2.9%
Schema_Frame_OMC_Pointers 18.93 ms 20.04 ms +5.9%
Schema_Frame_OMC_Locations 9.04 ms 8.73 ms -3.4%
Schema_Frame_ISO_Language_Locations 45.35 ms 45.35 ms +0.0%
Schema_Frame_ISO_Language_Root 364.47 ns 362.09 ns -0.7%
Schema_Frame_KrakenD_References 17.79 ms 17.75 ms -0.2%
Schema_Frame_KrakenD_Reachable 161.46 ms 163.30 ms +1.1%
Schema_Frame_ISO_Language_Locations_To_JSON 33.95 ms 34.31 ms +1.1%
Schema_Frame_Many_Resources_References 127.69 ms 129.97 ms +1.8%
Schema_Frame_Deeply_Nested_References 11.64 ms 12.04 ms +3.4%
Schema_Format_ISO_Language 50.69 ms 52.47 ms +3.5%
Schema_Bundle_Meta_2020_12 677.95 us 683.97 us +0.9%
Schema_Bundle_Many_Remotes_With_Fragments 7.28 ms 7.39 ms +1.5%
Pointer_Object_Traverse 23.25 ns 23.42 ns +0.7%
Pointer_Object_Try_Traverse 27.65 ns 27.58 ns -0.2%
Pointer_Push_Back_Pointer_To_Weak_Pointer 130.12 ns 138.89 ns +6.7%
Pointer_Walker_Schema_ISO_Language 1.53 ms 1.54 ms +0.1%
Pointer_Untracked_Deeply_Nested 1.46 ms 1.46 ms +0.1%
Pointer_Tracked_Deeply_Nested 2.14 ms 2.13 ms -0.6%
Pointer_Position_Tracker_Get_Deeply_Nested 597.67 ns 613.95 ns +2.7%
Schema_Tracker_ISO_Language 4.99 ms 4.98 ms -0.2%
Schema_Tracker_ISO_Language_To_JSON 16.71 ms 16.70 ms -0.1%
JSON_Array_Of_Objects_Unique 442.65 ns 444.43 ns +0.4%
JSON_Array_Of_Integers_Unique_256 4.19 us 4.20 us +0.1%
JSON_Array_Of_Strings_Unique_Colliding_256 189.58 us 189.44 us -0.1%
JSON_Parse_1 5.85 us 5.76 us -1.7%
JSON_Parse_Real 5.18 us 5.39 us +4.2%
JSON_Parse_Real_Inexact 5.57 us 5.54 us -0.5%
JSON_Parse_Decimal 9.89 us 9.89 us +0.0%
JSON_Parse_Schema_ISO_Language 3.77 ms 3.84 ms +1.8%
JSON_Parse_KrakenD 1.43 ms 1.43 ms -0.2%
JSON_Stringify_ISO_Language 2.57 ms 2.60 ms +1.3%
JSON_Prettify_KrakenD 2.06 ms 2.07 ms +0.8%
JSON_Parse_Integer 4.25 us 4.25 us +0.0%
JSON_Parse_String_NonSSO_Plain 4.00 us 4.00 us +0.1%
JSON_Parse_String_SSO_Plain 3.20 us 3.26 us +1.8%
JSON_Parse_String_Escape_Heavy 17.71 us 17.61 us -0.6%
JSON_Parse_Object_Short_Keys 10.81 us 10.81 us +0.0%
JSON_Parse_Object_Scalar_Properties 5.55 us 5.50 us -1.0%
JSON_Parse_Object_Array_Properties 7.18 us 7.10 us -1.1%
JSON_Parse_Object_Object_Properties 7.00 us 6.92 us -1.2%
JSON_Parse_Nested_Containers 43.28 us 43.51 us +0.5%
JSON_Fast_Hash_Helm_Chart_Lock 91.60 ns 72.07 ns -21.3%
JSON_Equality_Helm_Chart_Lock 162.06 ns 162.18 ns +0.1%
JSON_String_Equal_10 5.41 ns 5.41 ns -0.0%
JSON_String_Equal_100 6.03 ns 6.04 ns +0.1%
JSON_String_Equal_Small_By_Perfect_Hash_10 0.75 ns 0.75 ns +0.1%
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 13.52 ns 13.55 ns +0.2%
JSON_String_Fast_Hash_10 2.86 ns 2.86 ns +0.0%
JSON_String_Fast_Hash_100 2.86 ns 2.86 ns +0.1%
JSON_String_Key_Hash_10 2.53 ns 2.53 ns +0.0%
JSON_String_Key_Hash_100 13.38 ns 13.39 ns +0.1%
JSON_Object_Defines_Miss_Same_Length 3.11 ns 3.11 ns +0.0%
JSON_Object_Defines_Miss_Too_Small 2.80 ns 2.80 ns +0.1%
JSON_Object_Defines_Miss_Too_Large 3.11 ns 3.11 ns +0.0%
JSON_From_String_Copy 9.10 ns 9.39 ns +3.2%
JSON_From_String_Temporary 8.31 ns 8.43 ns +1.4%
JSON_Number_To_Double 26.47 ns 26.35 ns -0.4%
JSON_Object_At_Last_Key_8 5.92 ns 5.92 ns +0.0%
JSON_Object_At_Last_Key_32 21.84 ns 21.82 ns -0.1%
JSON_Object_At_Last_Key_128 87.27 ns 87.28 ns +0.0%
JSON_Object_At_Last_Key_512 396.69 ns 396.69 ns -0.0%
JSON_Divisible_By_Decimal 379.51 ns 378.13 ns -0.4%
JSON_PropertySet_Contains 48.31 ns 48.36 ns +0.1%
JSON_PropertySet_Filter_Object_Properties 36.10 ns 36.14 ns +0.1%
JSON_PropertySet_Insert 498.54 ns 489.11 ns -1.9%
JSON_Stringify_Schema_Web_Of_Things 63.16 us 62.33 us -1.3%
JSON_Prettify_Schema_Web_Of_Things 172.94 us 173.54 us +0.3%
Regex_Lower_S_Or_Upper_S_Asterisk 2.10 ns 2.10 ns +0.0%
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.02 ns 2.02 ns +0.1%
Regex_Period_Asterisk 2.10 ns 2.10 ns -0.1%
Regex_Group_Period_Asterisk_Group 2.10 ns 2.10 ns +0.1%
Regex_Period_Plus 2.10 ns 2.10 ns +0.1%
Regex_Period 2.02 ns 2.02 ns +0.0%
Regex_Caret_Period_Plus_Dollar 2.10 ns 2.10 ns +0.0%
Regex_Caret_Group_Period_Plus_Group_Dollar 2.10 ns 2.10 ns -0.0%
Regex_Caret_Period_Asterisk_Dollar 2.10 ns 2.10 ns +0.0%
Regex_Caret_Group_Period_Asterisk_Group_Dollar 2.02 ns 2.02 ns -0.1%
Regex_Caret_X_Hyphen 6.78 ns 6.77 ns -0.1%
Regex_Period_Md_Dollar 30.41 ns 31.56 ns +3.8%
Regex_Caret_Slash_Period_Asterisk 7.39 ns 7.08 ns -4.2%
Regex_Caret_Period_Range_Dollar 3.89 ns 2.96 ns -24.0%
Regex_Nested_Backtrack 39.54 ns 40.83 ns +3.3%

@github-actions

Copy link
Copy Markdown

Benchmark macos/llvm

Measured against main at 5181fd3.

23 slower, 55 faster, 37 within 5%.

Benchmark main This branch Change
JSON_Parse_Nested_Containers 27.61 us 37.41 us +35.5%
Pointer_Push_Back_Pointer_To_Weak_Pointer 245.31 ns 320.37 ns +30.6%
Pointer_Object_Try_Traverse 49.66 ns 63.57 ns +28.0%
JSON_Parse_Object_Object_Properties 4.19 us 5.11 us +22.0%
JSON_Object_At_Last_Key_8 5.70 ns 6.77 ns +18.8%
GZIP_Decompress_ISO_Language_Set_3_Locations 3.66 ms 4.34 ms +18.6%
JSON_Parse_Schema_ISO_Language 2.94 ms 3.47 ms +18.2%
Schema_Frame_KrakenD_Reachable 321.42 ms 376.69 ms +17.2%
Crypto_AES_GCM_Decrypt_128_1KB 4.30 us 4.99 us +16.1%
JSON_Object_At_Last_Key_128 73.38 ns 84.78 ns +15.5%
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations 5.03 ms 5.80 ms +15.3%
JSON_Object_At_Last_Key_32 18.25 ns 20.84 ns +14.2%
Schema_Frame_ISO_Language_Locations_To_JSON 37.34 ms 42.27 ms +13.2%
JSON_Object_Defines_Miss_Too_Large 3.38 ns 3.82 ns +12.9%
JSON_String_Fast_Hash_10 3.07 ns 3.46 ns +12.7%
Schema_Tracker_ISO_Language 5.02 ms 5.55 ms +10.4%
JSON_Number_To_Double 14.30 ns 15.63 ns +9.3%
JSON_Parse_Decimal 7.47 us 8.12 us +8.8%
JSON_Object_Defines_Miss_Too_Small 3.83 ns 4.14 ns +8.2%
Schema_Tracker_ISO_Language_To_JSON 18.50 ms 19.99 ms +8.0%
Pointer_Tracked_Deeply_Nested 1.92 ms 2.06 ms +7.5%
JSON_String_Equal_100 9.24 ns 9.76 ns +5.6%
URITemplateRouterView_Match_BasePath 187.16 ns 196.58 ns +5.0%
JSON_Parse_String_SSO_Plain 2.24 us 2.12 us -5.4%
JSON_Parse_Real_Inexact 4.45 us 4.20 us -5.6%
Pointer_Object_Traverse 33.59 ns 31.28 ns -6.9%
JSONL_Parse_Large 9.93 ms 9.22 ms -7.1%
Pointer_Untracked_Deeply_Nested 1.61 ms 1.49 ms -7.5%
JSON_Equality_Helm_Chart_Lock 233.51 ns 215.54 ns -7.7%
JSON_Parse_Object_Array_Properties 4.35 us 4.01 us -7.7%
OpenAPI_Frame_GSMTasks_3_0 214.89 ms 197.28 ms -8.2%
Markdown_To_HTML_Realistic_Document 4.78 ms 4.39 ms -8.2%
Pointer_Walker_Schema_ISO_Language 2.56 ms 2.35 ms -8.2%
Regex_Nested_Backtrack 43.46 ns 39.75 ns -8.5%
GZIP_Compress_ISO_Language_Set_3_Schema 2.44 ms 2.23 ms -8.6%
Regex_Lower_S_Or_Upper_S_Asterisk 2.38 ns 2.17 ns -8.8%
JSON_String_Equal_Small_By_Perfect_Hash_10 0.42 ns 0.38 ns -8.8%
URITemplateRouter_Match_BasePath 272.57 ns 247.34 ns -9.3%
JOSE_VerifySignature_RS256 32.78 us 29.61 us -9.7%
Regex_Caret_Period_Plus_Dollar 2.42 ns 2.19 ns -9.7%
Schema_Frame_OMC_Locations 13.90 ms 12.41 ms -10.7%
Crypto_AES_GCM_Encrypt_128_1KB 5.41 us 4.83 us -10.8%
OpenAPI_Format_Synthetic_3_1 73.45 ms 65.29 ms -11.1%
Schema_Bundle_Many_Remotes_With_Fragments 9.99 ms 8.75 ms -12.3%
Regex_Caret_Slash_Period_Asterisk 6.54 ns 5.72 ns -12.4%
Schema_Frame_Deeply_Nested_References 23.89 ms 20.92 ms -12.4%
JSON_Prettify_Schema_Web_Of_Things 287.86 us 250.04 us -13.1%
JSON_String_Fast_Hash_100 3.24 ns 2.81 ns -13.4%
URITemplateRouter_Create 31.05 us 26.89 us -13.4%
Crypto_CRC32_Large_JSONL 32.25 us 27.87 us -13.6%
JSON_PropertySet_Insert 537.51 ns 462.13 ns -14.0%
Regex_Period_Plus 2.41 ns 2.07 ns -14.1%
JSONPath_Descendant_Filter_Nested 2.41 us 2.07 us -14.2%
JSON_Prettify_KrakenD 2.17 ms 1.84 ms -15.2%
Schema_Frame_WoT_References 3.52 ms 2.98 ms -15.4%
Schema_Bundle_Meta_2020_12 835.78 us 706.11 us -15.5%
Regex_Caret_Period_Range_Dollar 3.09 ns 2.59 ns -16.3%
JSON_Stringify_Schema_Web_Of_Things 100.39 us 83.75 us -16.6%
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 4.99 ns 4.16 ns -16.6%
Regex_Group_Period_Asterisk_Group 2.47 ns 2.06 ns -16.7%
Regex_Caret_Period_Asterisk_Dollar 2.49 ns 2.07 ns -16.7%
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations 7.76 ms 6.46 ms -16.8%
HTML_Build_Table_100000 36.93 ms 30.64 ms -17.0%
Regex_Caret_Group_Period_Asterisk_Group_Dollar 2.56 ns 2.13 ns -17.1%
JOSE_VerifySignature_ES512 1.38 ms 1.14 ms -17.5%
JSON_Array_Of_Objects_Unique 525.51 ns 432.17 ns -17.8%
JSON_Parse_Object_Scalar_Properties 3.45 us 2.78 us -19.5%
Schema_Format_ISO_Language 45.84 ms 36.31 ms -20.8%
JSON_Stringify_ISO_Language 3.11 ms 2.45 ms -21.1%
URITemplateRouterView_Restore 17.83 us 13.77 us -22.8%
JSON_Parse_KrakenD 1.23 ms 934.99 us -24.1%
JSONLD_Catalog_Materialize 4.09 ms 3.02 ms -26.4%
JSON_Array_Of_Strings_Unique_Colliding_256 236.85 us 173.94 us -26.6%
JSON_Parse_1 5.60 us 3.94 us -29.6%
Markdown_To_HTML_Short_Descriptions 531.73 ns 360.25 ns -32.2%
Regex_Period_Md_Dollar 33.01 ns 21.22 ns -35.7%
JSONL_Parse_Large_GZIP 12.13 ms 7.72 ms -36.3%
JSON_Array_Of_Integers_Unique_256 8.53 us 4.92 us -42.3%
All 115 benchmarks
Benchmark main This branch Change
Regex_Lower_S_Or_Upper_S_Asterisk 2.38 ns 2.17 ns -8.8%
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.28 ns 2.24 ns -1.9%
Regex_Period_Asterisk 1.97 ns 1.94 ns -1.4%
Regex_Group_Period_Asterisk_Group 2.47 ns 2.06 ns -16.7%
Regex_Period_Plus 2.41 ns 2.07 ns -14.1%
Regex_Period 2.20 ns 2.27 ns +3.4%
Regex_Caret_Period_Plus_Dollar 2.42 ns 2.19 ns -9.7%
Regex_Caret_Group_Period_Plus_Group_Dollar 2.38 ns 2.44 ns +2.6%
Regex_Caret_Period_Asterisk_Dollar 2.49 ns 2.07 ns -16.7%
Regex_Caret_Group_Period_Asterisk_Group_Dollar 2.56 ns 2.13 ns -17.1%
Regex_Caret_X_Hyphen 8.06 ns 8.30 ns +2.9%
Regex_Period_Md_Dollar 33.01 ns 21.22 ns -35.7%
Regex_Caret_Slash_Period_Asterisk 6.54 ns 5.72 ns -12.4%
Regex_Caret_Period_Range_Dollar 3.09 ns 2.59 ns -16.3%
Regex_Nested_Backtrack 43.46 ns 39.75 ns -8.5%
JSON_Array_Of_Objects_Unique 525.51 ns 432.17 ns -17.8%
JSON_Array_Of_Integers_Unique_256 8.53 us 4.92 us -42.3%
JSON_Array_Of_Strings_Unique_Colliding_256 236.85 us 173.94 us -26.6%
JSON_Parse_1 5.60 us 3.94 us -29.6%
JSON_Parse_Real 4.71 us 4.66 us -1.0%
JSON_Parse_Real_Inexact 4.45 us 4.20 us -5.6%
JSON_Parse_Decimal 7.47 us 8.12 us +8.8%
JSON_Parse_Schema_ISO_Language 2.94 ms 3.47 ms +18.2%
JSON_Parse_KrakenD 1.23 ms 934.99 us -24.1%
JSON_Stringify_ISO_Language 3.11 ms 2.45 ms -21.1%
JSON_Prettify_KrakenD 2.17 ms 1.84 ms -15.2%
JSON_Parse_Integer 2.88 us 2.88 us -0.2%
JSON_Parse_String_NonSSO_Plain 3.60 us 3.46 us -4.1%
JSON_Parse_String_SSO_Plain 2.24 us 2.12 us -5.4%
JSON_Parse_String_Escape_Heavy 21.06 us 20.08 us -4.7%
JSON_Parse_Object_Short_Keys 5.82 us 5.66 us -2.6%
JSON_Parse_Object_Scalar_Properties 3.45 us 2.78 us -19.5%
JSON_Parse_Object_Array_Properties 4.35 us 4.01 us -7.7%
JSON_Parse_Object_Object_Properties 4.19 us 5.11 us +22.0%
JSON_Parse_Nested_Containers 27.61 us 37.41 us +35.5%
JSON_Fast_Hash_Helm_Chart_Lock 84.01 ns 83.40 ns -0.7%
JSON_Equality_Helm_Chart_Lock 233.51 ns 215.54 ns -7.7%
JSON_String_Equal_10 9.34 ns 9.09 ns -2.7%
JSON_String_Equal_100 9.24 ns 9.76 ns +5.6%
JSON_String_Equal_Small_By_Perfect_Hash_10 0.42 ns 0.38 ns -8.8%
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 4.99 ns 4.16 ns -16.6%
JSON_String_Fast_Hash_10 3.07 ns 3.46 ns +12.7%
JSON_String_Fast_Hash_100 3.24 ns 2.81 ns -13.4%
JSON_String_Key_Hash_10 2.18 ns 2.16 ns -1.0%
JSON_String_Key_Hash_100 3.09 ns 3.05 ns -1.3%
JSON_Object_Defines_Miss_Same_Length 3.51 ns 3.62 ns +3.1%
JSON_Object_Defines_Miss_Too_Small 3.83 ns 4.14 ns +8.2%
JSON_Object_Defines_Miss_Too_Large 3.38 ns 3.82 ns +12.9%
JSON_From_String_Copy 16.11 ns 15.42 ns -4.3%
JSON_From_String_Temporary 10.00 ns 10.14 ns +1.3%
JSON_Number_To_Double 14.30 ns 15.63 ns +9.3%
JSON_Object_At_Last_Key_8 5.70 ns 6.77 ns +18.8%
JSON_Object_At_Last_Key_32 18.25 ns 20.84 ns +14.2%
JSON_Object_At_Last_Key_128 73.38 ns 84.78 ns +15.5%
JSON_Object_At_Last_Key_512 306.25 ns 300.72 ns -1.8%
JSON_Divisible_By_Decimal 371.20 ns 389.34 ns +4.9%
JSON_PropertySet_Contains 70.61 ns 73.38 ns +3.9%
JSON_PropertySet_Filter_Object_Properties 65.03 ns 62.51 ns -3.9%
JSON_PropertySet_Insert 537.51 ns 462.13 ns -14.0%
JSON_Stringify_Schema_Web_Of_Things 100.39 us 83.75 us -16.6%
JSON_Prettify_Schema_Web_Of_Things 287.86 us 250.04 us -13.1%
Pointer_Object_Traverse 33.59 ns 31.28 ns -6.9%
Pointer_Object_Try_Traverse 49.66 ns 63.57 ns +28.0%
Pointer_Push_Back_Pointer_To_Weak_Pointer 245.31 ns 320.37 ns +30.6%
Pointer_Walker_Schema_ISO_Language 2.56 ms 2.35 ms -8.2%
Pointer_Untracked_Deeply_Nested 1.61 ms 1.49 ms -7.5%
Pointer_Tracked_Deeply_Nested 1.92 ms 2.06 ms +7.5%
Pointer_Position_Tracker_Get_Deeply_Nested 552.14 ns 559.66 ns +1.4%
Schema_Tracker_ISO_Language 5.02 ms 5.55 ms +10.4%
Schema_Tracker_ISO_Language_To_JSON 18.50 ms 19.99 ms +8.0%
Schema_Frame_WoT_References 3.52 ms 2.98 ms -15.4%
Schema_Frame_OMC_References 15.98 ms 16.20 ms +1.4%
Schema_Frame_OMC_Pointers 28.53 ms 28.23 ms -1.1%
Schema_Frame_OMC_Locations 13.90 ms 12.41 ms -10.7%
Schema_Frame_ISO_Language_Locations 41.03 ms 42.22 ms +2.9%
Schema_Frame_ISO_Language_Root 257.66 ns 258.97 ns +0.5%
Schema_Frame_KrakenD_References 27.16 ms 26.26 ms -3.3%
Schema_Frame_KrakenD_Reachable 321.42 ms 376.69 ms +17.2%
Schema_Frame_ISO_Language_Locations_To_JSON 37.34 ms 42.27 ms +13.2%
Schema_Frame_Many_Resources_References 174.10 ms 173.52 ms -0.3%
Schema_Frame_Deeply_Nested_References 23.89 ms 20.92 ms -12.4%
Schema_Format_ISO_Language 45.84 ms 36.31 ms -20.8%
Schema_Bundle_Meta_2020_12 835.78 us 706.11 us -15.5%
Schema_Bundle_Many_Remotes_With_Fragments 9.99 ms 8.75 ms -12.3%
OpenAPI_Frame_GSMTasks_3_0 214.89 ms 197.28 ms -8.2%
OpenAPI_Format_Synthetic_3_1 73.45 ms 65.29 ms -11.1%
JSONPath_Descendant_Filter_Nested 2.41 us 2.07 us -14.2%
URITemplateRouter_Create 31.05 us 26.89 us -13.4%
URITemplateRouter_Match 263.41 ns 253.36 ns -3.8%
URITemplateRouterView_Restore 17.83 us 13.77 us -22.8%
URITemplateRouterView_Match 166.14 ns 170.57 ns +2.7%
URITemplateRouterView_Arguments 713.32 ns 685.83 ns -3.9%
URITemplateRouter_Match_BasePath 272.57 ns 247.34 ns -9.3%
URITemplateRouterView_Match_BasePath 187.16 ns 196.58 ns +5.0%
JSONL_Parse_Large 9.93 ms 9.22 ms -7.1%
JSONL_Parse_Large_GZIP 12.13 ms 7.72 ms -36.3%
JSONLD_Catalog_Annotation_List_Populate 815.92 us 792.14 us -2.9%
JSONLD_Catalog_Materialize 4.09 ms 3.02 ms -26.4%
HTML_Build_Table_100000 36.93 ms 30.64 ms -17.0%
HTML_Render_Table_100000 2.19 ms 2.19 ms +0.1%
Markdown_To_HTML_Realistic_Document 4.78 ms 4.39 ms -8.2%
Markdown_To_HTML_Pathological 14.68 ms 14.04 ms -4.4%
Markdown_To_HTML_Short_Descriptions 531.73 ns 360.25 ns -32.2%
GZIP_Compress_ISO_Language_Set_3_Locations 38.78 ms 37.91 ms -2.2%
GZIP_Decompress_ISO_Language_Set_3_Locations 3.66 ms 4.34 ms +18.6%
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations 5.03 ms 5.80 ms +15.3%
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations 7.76 ms 6.46 ms -16.8%
GZIP_Compress_ISO_Language_Set_3_Schema 2.44 ms 2.23 ms -8.6%
GZIP_Decompress_ISO_Language_Set_3_Schema 420.46 us 413.83 us -1.6%
JOSE_VerifySignature_RS256 32.78 us 29.61 us -9.7%
JOSE_VerifySignature_ES512 1.38 ms 1.14 ms -17.5%
Crypto_CRC32_Large_JSONL 32.25 us 27.87 us -13.6%
Crypto_AES_GCM_Encrypt_128_1KB 5.41 us 4.83 us -10.8%
Crypto_AES_GCM_Decrypt_128_1KB 4.30 us 4.99 us +16.1%
Crypto_AES_GCM_Encrypt_256_1KB 4.54 us 4.72 us +4.1%

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant