-
Notifications
You must be signed in to change notification settings - Fork 8
feat: add mops build
subcommand
#331
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
base: ryan/format
Are you sure you want to change the base?
Conversation
Benchmark Resultsbench/1-buffer-vector-add.bench.mo
|
10 | 10000 | 1000000 | |
---|---|---|---|
Buffer | 9_493 |
5_687_530 |
525_783_824 |
Vector | 13_461 |
4_378_548 |
417_864_434 |
Heap
10 | 10000 | 1000000 | |
---|---|---|---|
Buffer | 272 B |
272 B |
272 B |
Vector | 272 B |
272 B |
272 B |
Garbage Collection
10 | 10000 | 1000000 | |
---|---|---|---|
Buffer | 1.09 KiB |
143.28 KiB |
12.02 MiB |
Vector | 1.09 KiB |
45.65 KiB |
3.86 MiB |
bench/2-vector-buffer-add.bench.mo $({\color{green}-10.20\%})$
Add
Add items one-by-one
Instructions:
Heap:
Stable Memory:
Garbage Collection:
Instructions
10 | 10000 | 1000000 | |
---|---|---|---|
Vector | 13_461 |
4_378_902 |
417_886_028 |
Buffer | 9_493 |
5_686_822 |
525_780_992 |
Heap
10 | 10000 | 1000000 | |
---|---|---|---|
Vector | 272 B |
272 B |
272 B |
Buffer | 272 B |
272 B |
272 B |
Garbage Collection
10 | 10000 | 1000000 | |
---|---|---|---|
Vector | 1.09 KiB |
45.65 KiB |
3.86 MiB |
Buffer | 1.09 KiB |
143.28 KiB |
12.02 MiB |
bench/array.bench.mo $({\color{green}-18.10\%})$
Array
arr arr
Instructions:
Heap:
Stable Memory:
Garbage Collection:
Instructions
100k x1 | reset1 | 100k x3 | reset2 | 100k x4 | reset3 | |
---|---|---|---|---|---|---|
Array | 13_502_032 |
3_271 |
27_003_206 |
3_745 |
54_004_063 |
4_219 |
Heap
100k x1 | reset1 | 100k x3 | reset2 | 100k x4 | reset3 | |
---|---|---|---|---|---|---|
Array | 390.9 KiB |
-390.37 KiB |
390.9 KiB |
-390.37 KiB |
390.9 KiB |
-390.37 KiB |
Garbage Collection
100k x1 | reset1 | 100k x3 | reset2 | 100k x4 | reset3 | |
---|---|---|---|---|---|---|
Array | 360 B |
390.97 KiB |
391 KiB |
390.97 KiB |
1.14 MiB |
390.97 KiB |
bench/removeLast.bench.mo $({\color{green}-10.90\%})$
Remove items using removeLast
Vector and buffer are initialized with 100k items and then 70k items are removed one-by-one.
Instructions:
Heap:
Stable Memory:
Garbage Collection:
Instructions
remove 70k | |
---|---|
Vector | 27_707_652 |
Buffer | 29_236_913 |
Heap
remove 70k | |
---|---|
Vector | -136.8 KiB |
Buffer | -269.76 KiB |
Garbage Collection
remove 70k | |
---|---|
Vector | 139.45 KiB |
Buffer | 540.43 KiB |
bench/stable-memory.bench.mo $({\color{green}-134.72\%})$
Stable Memory and Region
Grow Region and store blobs in it
Instructions:
Heap:
Stable Memory:
Garbage Collection:
Instructions
Region (fill 1/100) | Region (fill 1/50) | StableMemory | |
---|---|---|---|
10 pages | 2_626_957 |
10_496_190 |
2_629 |
100 pages | 52_466_673 |
104_914_290 |
2_634 |
256 pages | 134_273_670 |
268_574_791 |
3_182 |
Heap
Region (fill 1/100) | Region (fill 1/50) | StableMemory | |
---|---|---|---|
10 pages | 272 B |
272 B |
276 B |
100 pages | 272 B |
272 B |
272 B |
256 pages | 272 B |
272 B |
276 B |
Garbage Collection
Region (fill 1/100) | Region (fill 1/50) | StableMemory | |
---|---|---|---|
10 pages | 208.34 KiB |
832.38 KiB |
336 B |
100 pages | 4.06 MiB |
8.13 MiB |
340 B |
256 pages | 10.4 MiB |
20.8 MiB |
340 B |
Stable Memory
Region (fill 1/100) | Region (fill 1/50) | StableMemory | |
---|---|---|---|
10 pages | 8 MiB |
8 MiB |
8 MiB |
100 pages | 8 MiB |
8 MiB |
0 B |
256 pages | 16 MiB |
16 MiB |
16 MiB |
…an/build-command
Progress:
dfx.json
(similar todfx build
)moc
support for canister env vars as specified here)ICP_WASM_OUTPUT_PATH