Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor Rust bindgen with the new config #546

Merged
merged 25 commits into from
May 3, 2024
Merged

Conversation

chenyan-dfinity
Copy link
Contributor

@chenyan-dfinity chenyan-dfinity commented Apr 28, 2024

TODO

  • Generate use_type tests. How to handle recursive types?
  • Threading state through nominalize.
  • When the path starts with method, duplicate type definition when necessary.
  • Number label renaming

Copy link

github-actions bot commented Apr 28, 2024

Name Max Mem (Kb) Encode Decode
blob 4_224 20_458_812 ($\textcolor{green}{-0.00\%}$) 12_083_520
btreemap 75_456 4_814_023_979 ($\textcolor{red}{0.00\%}$) 15_380_030_621
nns 192 2_172_806 ($\textcolor{red}{1.28\%}$) 12_209_855 ($\textcolor{red}{0.13\%}$)
nns_list_proposal 1_920 6_626_277 ($\textcolor{red}{0.49\%}$) 182_353_368 ($\textcolor{green}{-0.02\%}$)
option_list 576 7_436_043 ($\textcolor{green}{-0.00\%}$) 31_705_099
text 6_336 28_844_735 ($\textcolor{green}{-0.00\%}$) 17_839_178
variant_list 128 7_431_973 ($\textcolor{red}{0.00\%}$) 23_873_932
vec_int16 16_704 168_581_831 ($\textcolor{green}{-0.00\%}$) 1_031_829_277
  • Parser cost: 18_353_375 ($\textcolor{red}{0.01\%}$)
  • Extra args: 3_348_203 ($\textcolor{green}{-0.00\%}$)
Click to see raw report

---------------------------------------------------

Benchmark: blob
  total:
    instructions: 32.54 M (-0.00%) (change within noise threshold)
    heap_increase: 66 pages (no change)
    stable_memory_increase: 0 pages (no change)

  1. Encoding (scope):
    instructions: 20.46 M (-0.00%) (change within noise threshold)
    heap_increase: 66 pages (no change)
    stable_memory_increase: 0 pages (no change)

  2. Decoding (scope):
    instructions: 12.08 M (no change)
    heap_increase: 0 pages (no change)
    stable_memory_increase: 0 pages (no change)

---------------------------------------------------

Benchmark: text
  total:
    instructions: 46.69 M (-0.00%) (change within noise threshold)
    heap_increase: 99 pages (no change)
    stable_memory_increase: 0 pages (no change)

  1. Encoding (scope):
    instructions: 28.84 M (-0.00%) (change within noise threshold)
    heap_increase: 99 pages (no change)
    stable_memory_increase: 0 pages (no change)

  2. Decoding (scope):
    instructions: 17.84 M (no change)
    heap_increase: 0 pages (no change)
    stable_memory_increase: 0 pages (no change)

---------------------------------------------------

Benchmark: vec_int16
  total:
    instructions: 1.20 B (-0.00%) (change within noise threshold)
    heap_increase: 261 pages (no change)
    stable_memory_increase: 0 pages (no change)

  1. Encoding (scope):
    instructions: 168.58 M (-0.00%) (change within noise threshold)
    heap_increase: 261 pages (no change)
    stable_memory_increase: 0 pages (no change)

  2. Decoding (scope):
    instructions: 1.03 B (no change)
    heap_increase: 0 pages (no change)
    stable_memory_increase: 0 pages (no change)

---------------------------------------------------

Benchmark: btreemap
  total:
    instructions: 20.19 B (0.00%) (change within noise threshold)
    heap_increase: 1179 pages (no change)
    stable_memory_increase: 0 pages (no change)

  1. Encoding (scope):
    instructions: 4.81 B (0.00%) (change within noise threshold)
    heap_increase: 257 pages (no change)
    stable_memory_increase: 0 pages (no change)

  2. Decoding (scope):
    instructions: 15.38 B (no change)
    heap_increase: 922 pages (no change)
    stable_memory_increase: 0 pages (no change)

---------------------------------------------------

Benchmark: option_list
  total:
    instructions: 39.14 M (-0.00%) (change within noise threshold)
    heap_increase: 9 pages (no change)
    stable_memory_increase: 0 pages (no change)

  1. Encoding (scope):
    instructions: 7.44 M (-0.00%) (change within noise threshold)
    heap_increase: 0 pages (no change)
    stable_memory_increase: 0 pages (no change)

  2. Decoding (scope):
    instructions: 31.71 M (no change)
    heap_increase: 9 pages (no change)
    stable_memory_increase: 0 pages (no change)

---------------------------------------------------

Benchmark: variant_list
  total:
    instructions: 31.31 M (0.00%) (change within noise threshold)
    heap_increase: 2 pages (no change)
    stable_memory_increase: 0 pages (no change)

  1. Encoding (scope):
    instructions: 7.43 M (0.00%) (change within noise threshold)
    heap_increase: 0 pages (no change)
    stable_memory_increase: 0 pages (no change)

  2. Decoding (scope):
    instructions: 23.87 M (no change)
    heap_increase: 2 pages (no change)
    stable_memory_increase: 0 pages (no change)

---------------------------------------------------

Benchmark: nns
  total:
    instructions: 33.48 M (0.14%) (change within noise threshold)
    heap_increase: 3 pages (no change)
    stable_memory_increase: 0 pages (no change)

  0. Parsing (scope):
    instructions: 18.35 M (0.01%) (change within noise threshold)
    heap_increase: 3 pages (no change)
    stable_memory_increase: 0 pages (no change)

  1. Encoding (scope):
    instructions: 2.17 M (1.28%) (change within noise threshold)
    heap_increase: 0 pages (no change)
    stable_memory_increase: 0 pages (no change)

  2. Decoding (scope):
    instructions: 12.21 M (0.13%) (change within noise threshold)
    heap_increase: 0 pages (no change)
    stable_memory_increase: 0 pages (no change)

---------------------------------------------------

Benchmark: nns_list_proposal
  total:
    instructions: 188.98 M (-0.00%) (change within noise threshold)
    heap_increase: 30 pages (no change)
    stable_memory_increase: 0 pages (no change)

  1. Encoding (scope):
    instructions: 6.63 M (0.49%) (change within noise threshold)
    heap_increase: 5 pages (no change)
    stable_memory_increase: 0 pages (no change)

  2. Decoding (scope):
    instructions: 182.35 M (-0.02%) (change within noise threshold)
    heap_increase: 25 pages (no change)
    stable_memory_increase: 0 pages (no change)

---------------------------------------------------

Benchmark: extra_args
  total:
    instructions: 3.35 M (-0.00%) (change within noise threshold)
    heap_increase: 0 pages (no change)
    stable_memory_increase: 0 pages (no change)

---------------------------------------------------
Successfully persisted results to canbench_results.yml

@chenyan-dfinity chenyan-dfinity merged commit 49d62b3 into configs May 3, 2024
3 checks passed
@chenyan-dfinity chenyan-dfinity deleted the rust-bindgen branch May 3, 2024 16:37
chenyan-dfinity added a commit that referenced this pull request May 3, 2024
* replace dhall with toml

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* random works

* test

* fix

* fix

* Refactor Rust bindgen with the new config (#546)

* checkpoint

* checkpoint

* connect with didc and test

* checkpoint

* vis

* vis

* checkpoint

* fix merging semantics

* checkpoint

* fix

* fix

* fix root config fallback

* checkpoint

* add unmatched config

* fix attr

* handlebar

* update test, diff is only space and newline

* forget to commit test

* move pp_actor inside impl

* fix

* refactor

* init args

* add test

* add_config

* clippy

* changelog and bump version
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