Skip to content

Commit 21901cf

Browse files
authored
Merge pull request #50 from tari-project/test-perf
perf: optimize wasmer/cranelift in dev profile for faster tests
2 parents dd665b1 + ff7a736 commit 21901cf

File tree

11 files changed

+176
-0
lines changed

11 files changed

+176
-0
lines changed

examples/guessing_game/template/Cargo.toml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,19 @@ lto = true # Enable Link Time Optimization.
1919
codegen-units = 1 # Reduce number of codegen units to increase optimizations.
2020
panic = 'abort' # Abort on panic.
2121
strip = "debuginfo" # Strip debug info.
22+
23+
# Wasmer and Cranelift are extremely slow when compiled in debug mode (~10x slower),
24+
# which makes template tests painfully slow. Optimize these specific crates even in
25+
# dev/test builds.
26+
[profile.dev.package.wasmer]
27+
opt-level = 2
28+
[profile.dev.package.wasmer-compiler]
29+
opt-level = 2
30+
[profile.dev.package.wasmer-compiler-cranelift]
31+
opt-level = 2
32+
[profile.dev.package.cranelift-codegen]
33+
opt-level = 2
34+
[profile.dev.package.cranelift-frontend]
35+
opt-level = 2
36+
[profile.dev.package.cranelift-entity]
37+
opt-level = 2

project_templates/nft_marketplace/templates/auction/Cargo.toml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,22 @@ lto = true # Enable Link Time Optimization.
1717
codegen-units = 1 # Reduce number of codegen units to increase optimizations.
1818
panic = 'abort' # Abort on panic.
1919
strip = "debuginfo" # Strip debug info.
20+
21+
# Wasmer and Cranelift are extremely slow when compiled in debug mode (~10x slower),
22+
# which makes template tests painfully slow. Optimize these specific crates even in
23+
# dev/test builds.
24+
[profile.dev.package.wasmer]
25+
opt-level = 2
26+
[profile.dev.package.wasmer-compiler]
27+
opt-level = 2
28+
[profile.dev.package.wasmer-compiler-cranelift]
29+
opt-level = 2
30+
[profile.dev.package.cranelift-codegen]
31+
opt-level = 2
32+
[profile.dev.package.cranelift-frontend]
33+
opt-level = 2
34+
[profile.dev.package.cranelift-entity]
35+
opt-level = 2
2036
{% endif %}
2137

2238
[lib]

wasm_templates/airdrop/Cargo.toml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,22 @@ lto = true # Enable Link Time Optimization.
1717
codegen-units = 1 # Reduce number of codegen units to increase optimizations.
1818
panic = 'abort' # Abort on panic.
1919
strip = true
20+
21+
# Wasmer and Cranelift are extremely slow when compiled in debug mode (~10x slower),
22+
# which makes template tests painfully slow. Optimize these specific crates even in
23+
# dev/test builds.
24+
[profile.dev.package.wasmer]
25+
opt-level = 2
26+
[profile.dev.package.wasmer-compiler]
27+
opt-level = 2
28+
[profile.dev.package.wasmer-compiler-cranelift]
29+
opt-level = 2
30+
[profile.dev.package.cranelift-codegen]
31+
opt-level = 2
32+
[profile.dev.package.cranelift-frontend]
33+
opt-level = 2
34+
[profile.dev.package.cranelift-entity]
35+
opt-level = 2
2036
{% endif %}
2137

2238
[lib]

wasm_templates/counter/Cargo.toml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,22 @@ lto = true # Enable Link Time Optimization.
1818
codegen-units = 1 # Reduce number of codegen units to increase optimizations.
1919
panic = 'abort' # Abort on panic.
2020
strip = true
21+
22+
# Wasmer and Cranelift are extremely slow when compiled in debug mode (~10x slower),
23+
# which makes template tests painfully slow. Optimize these specific crates even in
24+
# dev/test builds.
25+
[profile.dev.package.wasmer]
26+
opt-level = 2
27+
[profile.dev.package.wasmer-compiler]
28+
opt-level = 2
29+
[profile.dev.package.wasmer-compiler-cranelift]
30+
opt-level = 2
31+
[profile.dev.package.cranelift-codegen]
32+
opt-level = 2
33+
[profile.dev.package.cranelift-frontend]
34+
opt-level = 2
35+
[profile.dev.package.cranelift-entity]
36+
opt-level = 2
2137
{% endif %}
2238

2339
[lib]

wasm_templates/empty/Cargo.toml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,22 @@ lto = true # Enable Link Time Optimization.
1919
codegen-units = 1 # Reduce number of codegen units to increase optimizations.
2020
panic = 'abort' # Abort on panic.
2121
strip = true
22+
23+
# Wasmer and Cranelift are extremely slow when compiled in debug mode (~10x slower),
24+
# which makes template tests painfully slow. Optimize these specific crates even in
25+
# dev/test builds.
26+
[profile.dev.package.wasmer]
27+
opt-level = 2
28+
[profile.dev.package.wasmer-compiler]
29+
opt-level = 2
30+
[profile.dev.package.wasmer-compiler-cranelift]
31+
opt-level = 2
32+
[profile.dev.package.cranelift-codegen]
33+
opt-level = 2
34+
[profile.dev.package.cranelift-frontend]
35+
opt-level = 2
36+
[profile.dev.package.cranelift-entity]
37+
opt-level = 2
2238
{% endif %}
2339

2440
[lib]

wasm_templates/fungible/Cargo.toml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,22 @@ lto = true # Enable Link Time Optimization.
1818
codegen-units = 1 # Reduce number of codegen units to increase optimizations.
1919
panic = 'abort' # Abort on panic.
2020
strip = true
21+
22+
# Wasmer and Cranelift are extremely slow when compiled in debug mode (~10x slower),
23+
# which makes template tests painfully slow. Optimize these specific crates even in
24+
# dev/test builds.
25+
[profile.dev.package.wasmer]
26+
opt-level = 2
27+
[profile.dev.package.wasmer-compiler]
28+
opt-level = 2
29+
[profile.dev.package.wasmer-compiler-cranelift]
30+
opt-level = 2
31+
[profile.dev.package.cranelift-codegen]
32+
opt-level = 2
33+
[profile.dev.package.cranelift-frontend]
34+
opt-level = 2
35+
[profile.dev.package.cranelift-entity]
36+
opt-level = 2
2137
{% endif %}
2238

2339
[lib]

wasm_templates/ico/Cargo.toml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,22 @@ lto = true # Enable Link Time Optimization.
1717
codegen-units = 1 # Reduce number of codegen units to increase optimizations.
1818
panic = 'abort' # Abort on panic.
1919
strip = true
20+
21+
# Wasmer and Cranelift are extremely slow when compiled in debug mode (~10x slower),
22+
# which makes template tests painfully slow. Optimize these specific crates even in
23+
# dev/test builds.
24+
[profile.dev.package.wasmer]
25+
opt-level = 2
26+
[profile.dev.package.wasmer-compiler]
27+
opt-level = 2
28+
[profile.dev.package.wasmer-compiler-cranelift]
29+
opt-level = 2
30+
[profile.dev.package.cranelift-codegen]
31+
opt-level = 2
32+
[profile.dev.package.cranelift-frontend]
33+
opt-level = 2
34+
[profile.dev.package.cranelift-entity]
35+
opt-level = 2
2036
{% endif %}
2137

2238
[lib]

wasm_templates/meme_coin/Cargo.toml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,22 @@ lto = true # Enable Link Time Optimization.
1717
codegen-units = 1 # Reduce number of codegen units to increase optimizations.
1818
panic = 'abort' # Abort on panic.
1919
strip = true
20+
21+
# Wasmer and Cranelift are extremely slow when compiled in debug mode (~10x slower),
22+
# which makes template tests painfully slow. Optimize these specific crates even in
23+
# dev/test builds.
24+
[profile.dev.package.wasmer]
25+
opt-level = 2
26+
[profile.dev.package.wasmer-compiler]
27+
opt-level = 2
28+
[profile.dev.package.wasmer-compiler-cranelift]
29+
opt-level = 2
30+
[profile.dev.package.cranelift-codegen]
31+
opt-level = 2
32+
[profile.dev.package.cranelift-frontend]
33+
opt-level = 2
34+
[profile.dev.package.cranelift-entity]
35+
opt-level = 2
2036
{% endif %}
2137

2238
[lib]

wasm_templates/nft/Cargo.toml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,22 @@ lto = true # Enable Link Time Optimization.
2020
codegen-units = 1 # Reduce number of codegen units to increase optimizations.
2121
panic = 'abort' # Abort on panic.
2222
strip = true
23+
24+
# Wasmer and Cranelift are extremely slow when compiled in debug mode (~10x slower),
25+
# which makes template tests painfully slow. Optimize these specific crates even in
26+
# dev/test builds.
27+
[profile.dev.package.wasmer]
28+
opt-level = 2
29+
[profile.dev.package.wasmer-compiler]
30+
opt-level = 2
31+
[profile.dev.package.wasmer-compiler-cranelift]
32+
opt-level = 2
33+
[profile.dev.package.cranelift-codegen]
34+
opt-level = 2
35+
[profile.dev.package.cranelift-frontend]
36+
opt-level = 2
37+
[profile.dev.package.cranelift-entity]
38+
opt-level = 2
2339
{% endif %}
2440

2541
[lib]

wasm_templates/no_std/Cargo.toml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,22 @@ lto = true # Enable Link Time Optimization.
2121
codegen-units = 1 # Reduce number of codegen units to increase optimizations.
2222
panic = 'abort' # Abort on panic.
2323
strip = true
24+
25+
# Wasmer and Cranelift are extremely slow when compiled in debug mode (~10x slower),
26+
# which makes template tests painfully slow. Optimize these specific crates even in
27+
# dev/test builds.
28+
[profile.dev.package.wasmer]
29+
opt-level = 2
30+
[profile.dev.package.wasmer-compiler]
31+
opt-level = 2
32+
[profile.dev.package.wasmer-compiler-cranelift]
33+
opt-level = 2
34+
[profile.dev.package.cranelift-codegen]
35+
opt-level = 2
36+
[profile.dev.package.cranelift-frontend]
37+
opt-level = 2
38+
[profile.dev.package.cranelift-entity]
39+
opt-level = 2
2440
{% endif %}
2541

2642
[lib]

0 commit comments

Comments
 (0)