Commit d9e1e04
authored
chore: reduce allocation of Num (#655)
Motivation:
Reduce the Num allocations
```
基准测试对比: 改进前 (HEAD~1) vs 改进后 (HEAD)
====================================================================================================
Benchmark Before (ms/op) After (ms/op) Change
----------------------------------------------------------------------------------------------------
assertions.jsonnet 1.019 0.575 -43.6%
bench.01.jsonnet 0.123 0.132 +7.3%
bench.02.jsonnet 48.347 48.581 +0.5%
bench.03.jsonnet 16.147 15.447 -4.3%
bench.04.jsonnet 39.434 45.222 +14.7%
bench.06.jsonnet 0.657 0.680 +3.5%
bench.07.jsonnet 4.543 3.900 -14.2%
bench.08.jsonnet 0.133 0.109 -18.0%
bench.09.jsonnet 0.112 0.130 +16.1%
gen_big_object.jsonnet 1.755 1.480 -15.7%
large_string_join.jsonnet 6.659 6.705 +0.7%
large_string_template.jsonnet 3.407 3.356 -1.5%
realistic1.jsonnet 3.843 3.762 -2.1%
realistic2.jsonnet 129.287 106.573 -17.6%
base64.jsonnet 1.188 2.184 +83.8%
base64Decode.jsonnet 1.333 0.828 -37.9%
base64DecodeBytes.jsonnet 12.453 10.628 -14.7%
base64_byte_array.jsonnet 1.896 2.084 +9.9%
comparison.jsonnet 29.518 34.007 +15.2%
comparison2.jsonnet 80.905 81.289 +0.5%
escapeStringJson.jsonnet 0.089 0.082 -7.9%
foldl.jsonnet 12.170 11.003 -9.6%
lstripChars.jsonnet 0.958 0.867 -9.5%
manifestJsonEx.jsonnet 0.178 0.187 +5.1%
manifestTomlEx.jsonnet 0.177 0.230 +29.9%
manifestYamlDoc.jsonnet 0.138 0.196 +42.0%
member.jsonnet 1.055 1.092 +3.5%
parseInt.jsonnet 0.118 0.103 -12.7%
reverse.jsonnet 12.214 11.873 -2.8%
rstripChars.jsonnet 0.873 0.821 -6.0%
stripChars.jsonnet 1.080 0.812 -24.8%
substr.jsonnet 0.276 0.262 -5.1%
setDiff.jsonnet 0.740 0.694 -6.2%
setInter.jsonnet 0.653 0.614 -6.0%
setUnion.jsonnet 1.106 1.028 -7.1%
----------------------------------------------------------------------------------------------------
TOTAL 414.584 397.536 -4.1%
====================================================================================================
```1 parent d015059 commit d9e1e04
12 files changed
Lines changed: 400 additions & 229 deletions
File tree
- sjsonnet
- src/sjsonnet
- test/resources/go_test_suite
Large diffs are not rendered by default.
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
172 | 172 | | |
173 | 173 | | |
174 | 174 | | |
175 | | - | |
176 | | - | |
| 175 | + | |
| 176 | + | |
177 | 177 | | |
178 | 178 | | |
179 | 179 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
0 commit comments