With cargo new pd && cd pd && cargo add pulldown-cmark && cargo check, it tooks ~10 minutes for finishing checking crate pulldown-cmark.
Test Code
[neutron@3060 pd]$ cargo clean && cargo check --timings && mv target/cargo-timings/cargo-timing.html ./cargo-timing-native.html
Removed 69 files, 10.1MiB total
Compiling pulldown-cmark v0.13.0
Checking unicode-width v0.1.14
Checking unicase v2.8.1
Checking bitflags v2.9.0
Checking pulldown-cmark-escape v0.11.0
Checking memchr v2.7.4
Checking getopts v0.2.21
Checking pd v0.1.0 (/me/pd)
Timing report saved to /me/pd/target/cargo-timings/cargo-timing-20250306T125131Z.html
Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.18s
[neutron@3060 pd]$ vi ~/.cargo/config.toml # adding -Zpolonius
[neutron@3060 pd]$ cargo clean && cargo check --timings && mv target/cargo-timings/cargo-timing.html ./cargo-timing-polonius.html
Removed 69 files, 10.1MiB total
Checking unicode-width v0.1.14
Compiling pulldown-cmark v0.13.0
Checking bitflags v2.9.0
Checking memchr v2.7.4
Checking pulldown-cmark-escape v0.11.0
Checking unicase v2.8.1
Checking getopts v0.2.21
Checking pd v0.1.0 (/me/pd)
Timing report saved to /me/pd/target/cargo-timings/cargo-timing-20250306T125213Z.html
Finished `dev` profile [unoptimized + debuginfo] target(s) in 10m 12s
Compiled file and System Informations:
[neutron@3060 pd]$ rustc --version
rustc 1.87.0-nightly (f4a216d28 2025-03-02)
[neutron@3060 pd]$ cat Cargo.toml
[package]
name = "pd"
version = "0.1.0"
edition = "2024"
publish = ["crates-io"]
[dependencies]
pulldown-cmark = "0.13.0"
[neutron@3060 pd]$ cat ~/.cargo/config.toml
[cargo-new]
vcs = "none"
[registry]
default = 'crates-io'
token = '(...Omit...)'
[source.crates-io]
replace-with = 'ustc'
[source.ustc]
registry = "sparse+https://mirrors.ustc.edu.cn/crates.io-index/"
[source.tuna]
registry = "sparse+https://mirrors.tuna.tsinghua.edu.cn/crates.io-index/"
[http]
#multiplexing = false
[net]
retry = 5 # network retries
#git-fetch-with-cli = true
[profile.release]
opt-level = 3
strip = true
codegen-units = 1
[profile.lto]
inherits = "release"
lto = true
[profile.thin]
inherits = "lto"
lto = "thin"
[alias]
rr = "run --release"
rl = "run --profile lto"
rt = "run --profile thin"
br = "build --release"
bl = "build --profile lto"
bt = "build --profile thin"
p = "publish --registry crates-io"
[target.'cfg(all())']
rustflags = ["-C", "link-arg=-fuse-ld=mold", "-C", "target-cpu=native", "-Zpolonius"]
[term]
color = 'auto'
progress.when = 'auto'
progress.width = 160
Native result (generating by cargo check --timings)
|
Unit |
Total |
Codegen |
Features |
| 1. |
pulldown-cmark v0.13.0 lib (check) |
0.7s |
0.0s (2%) |
default, getopts, html, pulldown-cmark-escape |
| 2. |
memchr v2.7.4 lib (check) |
0.3s |
0.0s (3%) |
alloc, default, std |
| 3. |
unicode-width v0.1.14 lib (check) |
0.2s |
0.0s (4%) |
cjk, default |
| 4. |
unicase v2.8.1 lib (check) |
0.1s |
0.0s (5%) |
|
| 5. |
bitflags v2.9.0 lib (check) |
0.1s |
0.0s (6%) |
|
| 6. |
getopts v0.2.21 lib (check) |
0.1s |
0.0s (6%) |
|
| 7. |
pulldown-cmark v0.13.0 build script |
0.1s |
|
default, getopts, html, pulldown-cmark-escape |
| 8. |
pulldown-cmark-escape v0.11.0 lib (check) |
0.1s |
0.0s (13%) |
|
| 9. |
pd v0.1.0 bin "pd" (check) |
0.0s |
0.0s (22%) |
|
| 10. |
pulldown-cmark v0.13.0 build script (run) |
0.0s |
|
default, getopts, html, pulldown-cmark-escape |
pulldown-cmark result
|
Unit |
Total |
Codegen |
Features |
| 1. |
pulldown-cmark v0.13.0 lib (check) |
609.7s |
0.0s (0%) |
default, getopts, html, pulldown-cmark-escape |
| 2. |
memchr v2.7.4 lib (check) |
2.5s |
0.0s (1%) |
alloc, default, std |
| 3. |
unicase v2.8.1 lib (check) |
2.3s |
0.0s (0%) |
|
| 4. |
unicode-width v0.1.14 lib (check) |
1.6s |
0.0s (0%) |
cjk, default |
| 5. |
getopts v0.2.21 lib (check) |
0.9s |
0.0s (1%) |
|
| 6. |
bitflags v2.9.0 lib (check) |
0.2s |
0.0s (3%) |
|
| 7. |
pulldown-cmark-escape v0.11.0 lib (check) |
0.1s |
0.0s (4%) |
|
| 8. |
pulldown-cmark v0.13.0 build script |
0.1s |
|
default, getopts, html, pulldown-cmark-escape |
| 9. |
pd v0.1.0 bin "pd" (check) |
0.0s |
0.0s (21%) |
|
| 10. |
pulldown-cmark v0.13.0 build script (run) |
0.0s |
|
default, getopts, html, pulldown-cmark-escape |
With
cargo new pd && cd pd && cargo add pulldown-cmark && cargo check, it tooks ~10 minutes for finishing checking cratepulldown-cmark.Test Code
Compiled file and System Informations:
Native result (generating by
cargo check --timings)pulldown-cmark result