Skip to content

Commit

Permalink
Don't benchmark EvaluationContext initialization (#202)
Browse files Browse the repository at this point in the history
Signed-off-by: Juan Cruz Viotti <[email protected]>
  • Loading branch information
jviotti authored Nov 21, 2024
1 parent 21b2224 commit 16f9744
Show file tree
Hide file tree
Showing 5 changed files with 69 additions and 23 deletions.
8 changes: 6 additions & 2 deletions benchmark/evaluator_2019_09.cc
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,10 @@ static void Evaluator_2019_09_Unevaluated_Properties(benchmark::State &state) {
schema, sourcemeta::jsontoolkit::default_schema_walker,
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};
sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand All @@ -58,8 +60,10 @@ static void Evaluator_2019_09_OMC_JSON_V2_1(benchmark::State &state) {
schema, sourcemeta::jsontoolkit::default_schema_walker,
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};
sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down
4 changes: 3 additions & 1 deletion benchmark/evaluator_2020_12.cc
Original file line number Diff line number Diff line change
Expand Up @@ -62,8 +62,10 @@ static void Evaluator_2020_12_Dynamic_Ref(benchmark::State &state) {
schema, sourcemeta::jsontoolkit::default_schema_walker,
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};
sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down
68 changes: 51 additions & 17 deletions benchmark/evaluator_draft4.cc
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,10 @@ static void Evaluator_Draft4_Meta_1_No_Callback(benchmark::State &state) {
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};

sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(metaschema_template, schema)};
auto result{
sourcemeta::blaze::evaluate(metaschema_template, schema, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down Expand Up @@ -106,8 +108,10 @@ static void Evaluator_Draft4_Required_Properties(benchmark::State &state) {
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};

sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down Expand Up @@ -158,8 +162,10 @@ static void Evaluator_Draft4_Many_Optional_Properties_Minimal_Match(
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};

sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down Expand Up @@ -210,8 +216,10 @@ static void Evaluator_Draft4_Few_Optional_Properties_Minimal_Match(
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};

sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down Expand Up @@ -289,8 +297,10 @@ static void Evaluator_Draft4_Items_Schema(benchmark::State &state) {
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};

sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down Expand Up @@ -426,8 +436,10 @@ static void Evaluator_Draft4_Nested_Object(benchmark::State &state) {
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};

sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down Expand Up @@ -470,8 +482,10 @@ Evaluator_Draft4_Properties_Triad_Optional(benchmark::State &state) {
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};

sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down Expand Up @@ -515,8 +529,10 @@ Evaluator_Draft4_Properties_Triad_Required(benchmark::State &state) {
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};

sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down Expand Up @@ -555,8 +571,10 @@ static void Evaluator_Draft4_Properties_Triad_Closed(benchmark::State &state) {
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};

sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down Expand Up @@ -602,8 +620,10 @@ static void Evaluator_Draft4_Properties_Closed(benchmark::State &state) {
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};

sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down Expand Up @@ -648,8 +668,10 @@ static void Evaluator_Draft4_Non_Recursive_Ref(benchmark::State &state) {
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};

sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down Expand Up @@ -689,8 +711,10 @@ static void Evaluator_Draft4_Pattern_Properties_True(benchmark::State &state) {
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};

sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down Expand Up @@ -748,8 +772,10 @@ static void Evaluator_Draft4_Ref_To_Single_Property(benchmark::State &state) {
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};

sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down Expand Up @@ -798,8 +824,10 @@ Evaluator_Draft4_Additional_Properties_Type(benchmark::State &state) {
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};

sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down Expand Up @@ -840,8 +868,10 @@ static void Evaluator_Draft4_Nested_Oneof(benchmark::State &state) {
schema, sourcemeta::jsontoolkit::default_schema_walker,
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};
sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down Expand Up @@ -902,8 +932,10 @@ static void Evaluator_Draft4_Long_Enum(benchmark::State &state) {
schema, sourcemeta::jsontoolkit::default_schema_walker,
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};
sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand All @@ -923,8 +955,10 @@ static void Evaluator_Draft4_Type_Object(benchmark::State &state) {
schema, sourcemeta::jsontoolkit::default_schema_walker,
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};
sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down
4 changes: 3 additions & 1 deletion benchmark/evaluator_draft6.cc
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,10 @@ static void Evaluator_Draft6_Property_Names(benchmark::State &state) {
schema, sourcemeta::jsontoolkit::default_schema_walker,
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};
sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down
8 changes: 6 additions & 2 deletions benchmark/evaluator_draft7.cc
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,10 @@ static void Evaluator_Draft7_If_Then_Else(benchmark::State &state) {
schema, sourcemeta::jsontoolkit::default_schema_walker,
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};
sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand All @@ -53,8 +55,10 @@ static void Evaluator_Draft7_Vercel_1(benchmark::State &state) {
schema, sourcemeta::jsontoolkit::default_schema_walker,
sourcemeta::jsontoolkit::official_resolver,
sourcemeta::blaze::default_schema_compiler)};
sourcemeta::blaze::EvaluationContext context;
for (auto _ : state) {
auto result{sourcemeta::blaze::evaluate(schema_template, instance)};
auto result{
sourcemeta::blaze::evaluate(schema_template, instance, context)};
assert(result);
benchmark::DoNotOptimize(result);
}
Expand Down

5 comments on commit 16f9744

@github-actions
Copy link

Choose a reason for hiding this comment

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

Benchmark (macos/llvm)

Benchmark suite Current: 16f9744 Previous: 21b2224 Ratio
Compiler_Draft6_AdaptiveCard 37231452750.000015 ns/iter 32590336957.999966 ns/iter 1.14
Compiler_2019_09_OMC_JSON_V2 7642631583.000025 ns/iter 6740815083.00003 ns/iter 1.13
Evaluator_Draft4_Meta_1_No_Callback 296.3929650773176 ns/iter 273.24636906673425 ns/iter 1.08
Evaluator_Draft4_Required_Properties 585.7929160212107 ns/iter 388.34383967437816 ns/iter 1.51
Evaluator_Draft4_Many_Optional_Properties_Minimal_Match 24.666403406138098 ns/iter 23.72339953986068 ns/iter 1.04
Evaluator_Draft4_Few_Optional_Properties_Minimal_Match 14.650470543992911 ns/iter 14.51875797614672 ns/iter 1.01
Evaluator_Draft4_Items_Schema 795.4848537542521 ns/iter 768.622836181901 ns/iter 1.03
Evaluator_Draft4_Nested_Object 1.6060780259278136 ns/iter 4.098897768283928 ns/iter 0.39
Evaluator_Draft4_Properties_Triad_Optional 1138.4666988772044 ns/iter 1002.0209548721255 ns/iter 1.14
Evaluator_Draft4_Properties_Triad_Closed 799.5393510329767 ns/iter 716.6688446160916 ns/iter 1.12
Evaluator_Draft4_Properties_Triad_Required 1143.888460376355 ns/iter 1063.197289442821 ns/iter 1.08
Evaluator_Draft4_Properties_Closed 105.951748196467 ns/iter 96.69520856846464 ns/iter 1.10
Evaluator_Draft4_Non_Recursive_Ref 12.873556569939865 ns/iter 14.113816568825335 ns/iter 0.91
Evaluator_Draft4_Pattern_Properties_True 1516.1292771390824 ns/iter 1209.3663686491263 ns/iter 1.25
Evaluator_Draft4_Ref_To_Single_Property 17.084054430929047 ns/iter 15.395195672430578 ns/iter 1.11
Evaluator_Draft4_Additional_Properties_Type 24.295870620059105 ns/iter 25.352783392641378 ns/iter 0.96
Evaluator_Draft4_Nested_Oneof 91.93584388860259 ns/iter 95.96090495149755 ns/iter 0.96
Evaluator_Draft4_Long_Enum 21.911566174952114 ns/iter 22.901136555624838 ns/iter 0.96
Evaluator_Draft4_Type_Object 6.633419767634595 ns/iter 8.824303744490177 ns/iter 0.75
Evaluator_Draft6_Property_Names 295.5523514117739 ns/iter 295.50720621371573 ns/iter 1.00
Evaluator_Draft7_If_Then_Else 40.81415207892314 ns/iter 39.131689921418676 ns/iter 1.04
Evaluator_Draft7_Vercel_1 102734.95797078637 ns/iter 93880.55746972948 ns/iter 1.09
Evaluator_2019_09_Unevaluated_Properties 159.97347667115034 ns/iter 219.4557319801684 ns/iter 0.73
Evaluator_2019_09_OMC_JSON_V2_1 8276.957502816686 ns/iter 7026.746161422286 ns/iter 1.18
Evaluator_2020_12_Dynamic_Ref 586.482005057643 ns/iter 706.8834894205391 ns/iter 0.83

This comment was automatically generated by workflow using github-action-benchmark.

@github-actions
Copy link

Choose a reason for hiding this comment

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

Benchmark (linux/llvm)

Benchmark suite Current: 16f9744 Previous: 21b2224 Ratio
Compiler_Draft6_AdaptiveCard 57872197084.999985 ns/iter 57958090809 ns/iter 1.00
Compiler_2019_09_OMC_JSON_V2 11122766262.000027 ns/iter 11006546474.999992 ns/iter 1.01
Evaluator_Draft4_Meta_1_No_Callback 459.62358453499934 ns/iter 493.6494071404948 ns/iter 0.93
Evaluator_Draft4_Required_Properties 952.3574116982912 ns/iter 926.1311993593779 ns/iter 1.03
Evaluator_Draft4_Many_Optional_Properties_Minimal_Match 47.9662348596848 ns/iter 60.9610902964276 ns/iter 0.79
Evaluator_Draft4_Few_Optional_Properties_Minimal_Match 30.63031271065348 ns/iter 41.00600987052514 ns/iter 0.75
Evaluator_Draft4_Items_Schema 1479.5507886928983 ns/iter 1477.6858597084374 ns/iter 1.00
Evaluator_Draft4_Nested_Object 5.5178214080464265 ns/iter 11.454680986890377 ns/iter 0.48
Evaluator_Draft4_Properties_Triad_Optional 1353.9504521863391 ns/iter 1338.8863629462687 ns/iter 1.01
Evaluator_Draft4_Properties_Triad_Closed 1038.7970535576924 ns/iter 1045.516045766335 ns/iter 0.99
Evaluator_Draft4_Properties_Triad_Required 1384.3913004272713 ns/iter 1354.4871277598818 ns/iter 1.02
Evaluator_Draft4_Properties_Closed 162.7838178029617 ns/iter 171.75995077898978 ns/iter 0.95
Evaluator_Draft4_Non_Recursive_Ref 38.65172016609823 ns/iter 44.035435291415304 ns/iter 0.88
Evaluator_Draft4_Pattern_Properties_True 2086.9786169285017 ns/iter 2051.0804311750203 ns/iter 1.02
Evaluator_Draft4_Ref_To_Single_Property 30.666684073415 ns/iter 40.715344225918 ns/iter 0.75
Evaluator_Draft4_Additional_Properties_Type 67.39952060946388 ns/iter 68.40516750257399 ns/iter 0.99
Evaluator_Draft4_Nested_Oneof 173.75177613750625 ns/iter 183.68672921175892 ns/iter 0.95
Evaluator_Draft4_Long_Enum 26.614530323171948 ns/iter 34.39521940019013 ns/iter 0.77
Evaluator_Draft4_Type_Object 16.125062112429664 ns/iter 23.52585059030548 ns/iter 0.69
Evaluator_Draft6_Property_Names 586.298711182637 ns/iter 615.3206741932518 ns/iter 0.95
Evaluator_Draft7_If_Then_Else 80.8411852597202 ns/iter 89.81998916901792 ns/iter 0.90
Evaluator_Draft7_Vercel_1 138901.5941655247 ns/iter 146234.76081730667 ns/iter 0.95
Evaluator_2019_09_Unevaluated_Properties 225.2897258999627 ns/iter 280.7449769248063 ns/iter 0.80
Evaluator_2019_09_OMC_JSON_V2_1 10149.913385480646 ns/iter 10460.225429949061 ns/iter 0.97
Evaluator_2020_12_Dynamic_Ref 1009.3576777827276 ns/iter 1081.156225691408 ns/iter 0.93

This comment was automatically generated by workflow using github-action-benchmark.

@github-actions
Copy link

Choose a reason for hiding this comment

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

Benchmark (linux/gcc)

Benchmark suite Current: 16f9744 Previous: 21b2224 Ratio
Evaluator_2020_12_Dynamic_Ref 996.9004826174308 ns/iter 1193.1475187200938 ns/iter 0.84
Evaluator_2019_09_Unevaluated_Properties 253.36890288661345 ns/iter 332.39443631910194 ns/iter 0.76
Evaluator_2019_09_OMC_JSON_V2_1 12442.274455294912 ns/iter 12759.713958222466 ns/iter 0.98
Evaluator_Draft7_If_Then_Else 65.99194289134826 ns/iter 71.53247253234242 ns/iter 0.92
Evaluator_Draft7_Vercel_1 144685.39987339202 ns/iter 157972.8022363363 ns/iter 0.92
Evaluator_Draft6_Property_Names 1279.0519020223824 ns/iter 1270.185939113111 ns/iter 1.01
Evaluator_Draft4_Meta_1_No_Callback 552.2959914164366 ns/iter 544.0663528275943 ns/iter 1.02
Evaluator_Draft4_Required_Properties 1922.4439833683502 ns/iter 1847.482005178865 ns/iter 1.04
Evaluator_Draft4_Many_Optional_Properties_Minimal_Match 47.611687520708536 ns/iter 52.45259748969614 ns/iter 0.91
Evaluator_Draft4_Few_Optional_Properties_Minimal_Match 41.08256142177323 ns/iter 42.62628027119503 ns/iter 0.96
Evaluator_Draft4_Items_Schema 1248.3045184301723 ns/iter 1356.5130801091213 ns/iter 0.92
Evaluator_Draft4_Nested_Object 3.7915400162095874 ns/iter 6.1519300824997645 ns/iter 0.62
Evaluator_Draft4_Properties_Triad_Optional 1376.4520359908763 ns/iter 1394.2382564236716 ns/iter 0.99
Evaluator_Draft4_Properties_Triad_Closed 1086.5672347494142 ns/iter 1085.1143568928544 ns/iter 1.00
Evaluator_Draft4_Properties_Triad_Required 1429.125354139083 ns/iter 1478.9673535447062 ns/iter 0.97
Evaluator_Draft4_Properties_Closed 208.6734825402532 ns/iter 209.729451261147 ns/iter 0.99
Evaluator_Draft4_Non_Recursive_Ref 58.34239857690855 ns/iter 59.05557830685274 ns/iter 0.99
Evaluator_Draft4_Pattern_Properties_True 2129.2520559857626 ns/iter 2184.536030459414 ns/iter 0.97
Evaluator_Draft4_Ref_To_Single_Property 44.060518804420866 ns/iter 46.9175860905861 ns/iter 0.94
Evaluator_Draft4_Additional_Properties_Type 116.30106505118849 ns/iter 113.55411429381843 ns/iter 1.02
Evaluator_Draft4_Nested_Oneof 149.2339689750351 ns/iter 159.5521726202027 ns/iter 0.94
Evaluator_Draft4_Long_Enum 22.064884592229095 ns/iter 26.121699584936447 ns/iter 0.84
Evaluator_Draft4_Type_Object 13.176250557834372 ns/iter 16.828014674298533 ns/iter 0.78
Compiler_2019_09_OMC_JSON_V2 11590858915.000013 ns/iter 11374399208 ns/iter 1.02
Compiler_Draft6_AdaptiveCard 66205035075.000015 ns/iter 65521135512.99999 ns/iter 1.01

This comment was automatically generated by workflow using github-action-benchmark.

@github-actions
Copy link

Choose a reason for hiding this comment

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

Benchmark (windows/msvc)

Benchmark suite Current: 16f9744 Previous: 21b2224 Ratio
Compiler_Draft6_AdaptiveCard 117694351900.00002 ns/iter 120560053599.99994 ns/iter 0.98
Compiler_2019_09_OMC_JSON_V2 25111846100.00009 ns/iter 25691453400 ns/iter 0.98
Evaluator_Draft4_Meta_1_No_Callback 820.4536830356902 ns/iter 869.1251923548069 ns/iter 0.94
Evaluator_Draft4_Required_Properties 1311.1879191127123 ns/iter 1341.8369642855462 ns/iter 0.98
Evaluator_Draft4_Many_Optional_Properties_Minimal_Match 81.99416294643365 ns/iter 138.4481790871152 ns/iter 0.59
Evaluator_Draft4_Few_Optional_Properties_Minimal_Match 42.01269204879766 ns/iter 92.8229288918248 ns/iter 0.45
Evaluator_Draft4_Items_Schema 2594.23535714315 ns/iter 2677.4912817945474 ns/iter 0.97
Evaluator_Draft4_Nested_Object 2.1556406249999327 ns/iter 55.46691071428102 ns/iter 0.038863542195525985
Evaluator_Draft4_Properties_Triad_Optional 4731.931321274954 ns/iter 4835.92681779111 ns/iter 0.98
Evaluator_Draft4_Properties_Triad_Closed 3812.22544642869 ns/iter 3882.2310267860867 ns/iter 0.98
Evaluator_Draft4_Properties_Triad_Required 4730.61737108757 ns/iter 4827.4800022137615 ns/iter 0.98
Evaluator_Draft4_Properties_Closed 280.58789725580823 ns/iter 345.2700990588468 ns/iter 0.81
Evaluator_Draft4_Non_Recursive_Ref 93.83048688255313 ns/iter 152.17508928567926 ns/iter 0.62
Evaluator_Draft4_Pattern_Properties_True 7534.040178570781 ns/iter 7748.46540178485 ns/iter 0.97
Evaluator_Draft4_Ref_To_Single_Property 44.68296656533049 ns/iter 94.16924579601094 ns/iter 0.47
Evaluator_Draft4_Additional_Properties_Type 176.7402037995828 ns/iter 236.46204950199458 ns/iter 0.75
Evaluator_Draft4_Nested_Oneof 295.81711653825346 ns/iter 369.9740232189761 ns/iter 0.80
Evaluator_Draft4_Long_Enum 58.314982142856515 ns/iter 113.91134374999723 ns/iter 0.51
Evaluator_Draft4_Type_Object 21.401343750000024 ns/iter 77.16737723215365 ns/iter 0.28
Evaluator_Draft6_Property_Names 1042.9732812500702 ns/iter 1124.7812500000366 ns/iter 0.93
Evaluator_Draft7_If_Then_Else 117.41626562498553 ns/iter 180.73871256594364 ns/iter 0.65
Evaluator_Draft7_Vercel_1 236935.4536323773 ns/iter 233703.54871110822 ns/iter 1.01
Evaluator_2019_09_Unevaluated_Properties 433.8115624999972 ns/iter 706.1924107143775 ns/iter 0.61
Evaluator_2019_09_OMC_JSON_V2_1 15390.00223214515 ns/iter 15499.136160716125 ns/iter 0.99
Evaluator_2020_12_Dynamic_Ref 1562.165178571868 ns/iter 2197.7537499999753 ns/iter 0.71

This comment was automatically generated by workflow using github-action-benchmark.

@github-actions
Copy link

Choose a reason for hiding this comment

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

Benchmark (macos/gcc)

Benchmark suite Current: 16f9744 Previous: 21b2224 Ratio
Compiler_Draft6_AdaptiveCard 45626974821.0907 ns/iter 42783633232.1167 ns/iter 1.07
Compiler_2019_09_OMC_JSON_V2 8596388816.833496 ns/iter 7778801202.774048 ns/iter 1.11
Evaluator_Draft4_Meta_1_No_Callback 291.385842303236 ns/iter 288.8627749941998 ns/iter 1.01
Evaluator_Draft4_Required_Properties 481.6893206483322 ns/iter 482.25268834178627 ns/iter 1.00
Evaluator_Draft4_Many_Optional_Properties_Minimal_Match 26.240243853030773 ns/iter 28.582711816967123 ns/iter 0.92
Evaluator_Draft4_Few_Optional_Properties_Minimal_Match 15.098483500838803 ns/iter 17.558398510419373 ns/iter 0.86
Evaluator_Draft4_Items_Schema 910.913200675566 ns/iter 851.801819619314 ns/iter 1.07
Evaluator_Draft4_Nested_Object 1.986061311179066 ns/iter 4.175038538560154 ns/iter 0.48
Evaluator_Draft4_Properties_Triad_Optional 1046.5920532925675 ns/iter 1031.5714150750596 ns/iter 1.01
Evaluator_Draft4_Properties_Triad_Closed 831.8832845100599 ns/iter 829.9953345765814 ns/iter 1.00
Evaluator_Draft4_Properties_Triad_Required 1041.6576329475981 ns/iter 1040.7463490115645 ns/iter 1.00
Evaluator_Draft4_Properties_Closed 111.45911000948891 ns/iter 113.08800131936533 ns/iter 0.99
Evaluator_Draft4_Non_Recursive_Ref 21.13807884084365 ns/iter 22.9558328174598 ns/iter 0.92
Evaluator_Draft4_Pattern_Properties_True 1631.6803170505714 ns/iter 1613.99143391026 ns/iter 1.01
Evaluator_Draft4_Ref_To_Single_Property 14.587453769724089 ns/iter 16.961505737148357 ns/iter 0.86
Evaluator_Draft4_Additional_Properties_Type 34.58570083734953 ns/iter 38.774278949809556 ns/iter 0.89
Evaluator_Draft4_Nested_Oneof 99.86686427414712 ns/iter 101.88961112811432 ns/iter 0.98
Evaluator_Draft4_Long_Enum 12.297421565138528 ns/iter 15.70948712896602 ns/iter 0.78
Evaluator_Draft4_Type_Object 8.491478933211871 ns/iter 10.661000922757953 ns/iter 0.80
Evaluator_Draft6_Property_Names 401.37376762275676 ns/iter 403.6263133756744 ns/iter 0.99
Evaluator_Draft7_If_Then_Else 41.173670875614796 ns/iter 43.535559921703744 ns/iter 0.95
Evaluator_Draft7_Vercel_1 96779.0905018122 ns/iter 95296.8828464278 ns/iter 1.02
Evaluator_2019_09_Unevaluated_Properties 164.32197154808878 ns/iter 236.44210877334768 ns/iter 0.69
Evaluator_2019_09_OMC_JSON_V2_1 7114.12894997059 ns/iter 6205.393647892979 ns/iter 1.15
Evaluator_2020_12_Dynamic_Ref 749.1883845522307 ns/iter 777.0121371059288 ns/iter 0.96

This comment was automatically generated by workflow using github-action-benchmark.

Please sign in to comment.