Skip to content

Instantly share code, notes, and snippets.

@hoodie
Last active February 15, 2018 20:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save hoodie/605c34e7a7303209bf6d5ff50dc839d6 to your computer and use it in GitHub Desktop.
Save hoodie/605c34e7a7303209bf6d5ff50dc839d6 to your computer and use it in GitHub Desktop.
comparing rustc 1.23 and 1.24 buildtimes building asciii

this build and rebuilds a rust project with rustc 1.23 and 1.24

./build_times.sh > buildtime.log 2>&1

rg secs buildtime.log
105:    Finished dev [unoptimized + debuginfo] target(s) in 59.57 secs
113:    Finished dev [unoptimized + debuginfo] target(s) in 15.35 secs
216:    Finished release [optimized] target(s) in 197.70 secs
224:    Finished release [optimized] target(s) in 111.56 secs
333:    Finished dev [unoptimized + debuginfo] target(s) in 62.95 secs
341:    Finished dev [unoptimized + debuginfo] target(s) in 8.21 secs
444:    Finished release [optimized] target(s) in 272.41 secs
452:    Finished release [optimized] target(s) in 181.70 secs
+ rustup override set 1.23.0
info: using existing install for '1.23.0-x86_64-apple-darwin'
info: override toolchain for '/Users/hendrik/code/rust/asciii' set to '1.23.0-x86_64-apple-darwin'
1.23.0-x86_64-apple-darwin unchanged - rustc 1.23.0 (766bd11c8 2018-01-01)
+ cargo clean
real 0m0.335s
user 0m0.091s
sys 0m0.170s
+ cargo build
Compiling utf8-ranges v1.0.0
Compiling scopeguard v0.3.3
Compiling libc v0.2.34
Compiling lazy_static v0.2.11
Compiling linked-hash-map v0.5.0
Compiling cc v1.0.3
Compiling open v1.2.1
Compiling void v1.0.2
Compiling either v1.4.0
Compiling num-traits v0.1.41
Compiling ansi_term v0.10.2
Compiling quote v0.3.15
Compiling quick-error v1.2.1
Compiling cfg-if v0.1.2
Compiling bitflags v1.0.1
Compiling log v0.3.8
Compiling encode_unicode v0.3.1
Compiling pest v0.3.3
Compiling unidecode v0.2.0
Compiling same-file v0.1.3
Compiling pkg-config v0.3.9
Compiling regex-syntax v0.4.1
Compiling lazy_static v1.0.0
Compiling serde v1.0.24
Compiling maplit v1.0.0
Compiling term v0.4.6
Compiling semver-parser v0.7.0
Compiling unicode-width v0.1.4
Compiling bitflags v0.9.1
Compiling unicode-xid v0.0.4
Compiling dtoa v0.4.2
Compiling rustc-demangle v0.1.5
Compiling percent-encoding v1.0.1
Compiling unicode-normalization v0.1.5
Compiling rayon-core v1.3.0
Compiling strsim v0.6.0
Compiling enum_derive v0.1.7
Compiling vec_map v0.8.0
Compiling itoa v0.3.4
Compiling matches v0.1.6
Compiling custom_derive v0.1.7
Compiling crowbook-intl-runtime v0.1.0
Compiling unreachable v0.1.1
Compiling unreachable v1.0.0
Compiling yaml-rust v0.4.0
Compiling num_cpus v1.7.0
Compiling term_size v0.3.1
Compiling atty v0.2.3
Compiling time v0.1.38
Compiling rand v0.3.18
Compiling memchr v2.0.1
Compiling coco v0.1.1
Compiling cmake v0.1.29
Compiling num-integer v0.1.35
Compiling walkdir v1.0.7
Compiling textwrap v0.9.0
Compiling libz-sys v1.0.18
Compiling synom v0.11.3
Compiling semver v0.9.0
Compiling backtrace v0.3.4
Compiling slug v0.1.2
Compiling unicode-bidi v0.3.4
Compiling ordered-float v0.5.0
Compiling thread_local v0.3.5
Compiling prettytable-rs v0.6.7
Compiling aho-corasick v0.6.4
Compiling num-iter v0.1.34
Compiling libgit2-sys v0.6.17
Compiling uuid v0.5.1
Compiling tempdir v0.3.5
Compiling syn v0.11.11
Compiling clap v2.29.0
Compiling error-chain v0.11.0
Compiling idna v0.1.4
Compiling num v0.1.41
Compiling regex v0.2.3
Compiling chrono v0.4.0
Compiling rayon v0.9.0
Compiling toml v0.4.5
Compiling serde_json v1.0.8
Compiling serde_yaml v0.7.3
Compiling url v1.6.0
Compiling icalendar v0.3.1
Compiling serde_derive_internals v0.18.0
Compiling env_logger v0.4.3
Compiling crowbook-intl v0.2.1
Compiling handlebars v0.29.1
Compiling serde_derive v1.0.24
Compiling asciii v3.1.5 (file:///Users/hendrik/code/rust/asciii)
Compiling claude v0.2.0
Compiling bill v0.2.0
Compiling git2 v0.6.9
Finished dev [unoptimized + debuginfo] target(s) in 59.57 secs
real 1m1.644s
user 4m29.751s
sys 0m44.375s
+ touch src/lib.rs
+ cargo build
Compiling asciii v3.1.5 (file:///Users/hendrik/code/rust/asciii)
Finished dev [unoptimized + debuginfo] target(s) in 15.35 secs
real 0m16.331s
user 0m22.955s
sys 0m1.718s
+ cargo clean
real 0m0.331s
user 0m0.082s
sys 0m0.184s
+ cargo build --release
Compiling linked-hash-map v0.5.0
Compiling quote v0.3.15
Compiling void v1.0.2
Compiling percent-encoding v1.0.1
Compiling itoa v0.3.4
Compiling unicode-xid v0.0.4
Compiling bitflags v1.0.1
Compiling term v0.4.6
Compiling lazy_static v1.0.0
Compiling log v0.3.8
Compiling open v1.2.1
Compiling semver-parser v0.7.0
Compiling encode_unicode v0.3.1
Compiling cc v1.0.3
Compiling pkg-config v0.3.9
Compiling lazy_static v0.2.11
Compiling dtoa v0.4.2
Compiling scopeguard v0.3.3
Compiling libc v0.2.34
Compiling unicode-width v0.1.4
Compiling bitflags v0.9.1
Compiling either v1.4.0
Compiling maplit v1.0.0
Compiling cfg-if v0.1.2
Compiling unicode-normalization v0.1.5
Compiling utf8-ranges v1.0.0
Compiling ansi_term v0.10.2
Compiling rayon-core v1.3.0
Compiling vec_map v0.8.0
Compiling same-file v0.1.3
Compiling regex-syntax v0.4.1
Compiling serde v1.0.24
Compiling enum_derive v0.1.7
Compiling num-traits v0.1.41
Compiling unidecode v0.2.0
Compiling matches v0.1.6
Compiling custom_derive v0.1.7
Compiling rustc-demangle v0.1.5
Compiling strsim v0.6.0
Compiling pest v0.3.3
Compiling quick-error v1.2.1
Compiling synom v0.11.3
Compiling unreachable v0.1.1
Compiling unreachable v1.0.0
Compiling yaml-rust v0.4.0
Compiling crowbook-intl-runtime v0.1.0
Compiling textwrap v0.9.0
Compiling rand v0.3.18
Compiling atty v0.2.3
Compiling memchr v2.0.1
Compiling term_size v0.3.1
Compiling time v0.1.38
Compiling num_cpus v1.7.0
Compiling semver v0.9.0
Compiling coco v0.1.1
Compiling walkdir v1.0.7
Compiling unicode-bidi v0.3.4
Compiling num-integer v0.1.35
Compiling backtrace v0.3.4
Compiling ordered-float v0.5.0
Compiling thread_local v0.3.5
Compiling syn v0.11.11
Compiling slug v0.1.2
Compiling cmake v0.1.29
Compiling libz-sys v1.0.18
Compiling prettytable-rs v0.6.7
Compiling aho-corasick v0.6.4
Compiling clap v2.29.0
Compiling tempdir v0.3.5
Compiling uuid v0.5.1
Compiling num-iter v0.1.34
Compiling error-chain v0.11.0
Compiling idna v0.1.4
Compiling libgit2-sys v0.6.17
Compiling serde_json v1.0.8
Compiling toml v0.4.5
Compiling serde_yaml v0.7.3
Compiling num v0.1.41
Compiling regex v0.2.3
Compiling rayon v0.9.0
Compiling chrono v0.4.0
Compiling url v1.6.0
Compiling serde_derive_internals v0.18.0
Compiling icalendar v0.3.1
Compiling serde_derive v1.0.24
Compiling git2 v0.6.9
Compiling env_logger v0.4.3
Compiling handlebars v0.29.1
Compiling crowbook-intl v0.2.1
Compiling asciii v3.1.5 (file:///Users/hendrik/code/rust/asciii)
Compiling claude v0.2.0
Compiling bill v0.2.0
Finished release [optimized] target(s) in 197.70 secs
real 3m19.894s
user 8m9.417s
sys 0m39.736s
+ touch src/lib.rs
+ cargo build --release
Compiling asciii v3.1.5 (file:///Users/hendrik/code/rust/asciii)
Finished release [optimized] target(s) in 111.56 secs
real 1m52.533s
user 1m50.062s
sys 0m2.001s
+ rustup override set 1.24.0
info: using existing install for '1.24.0-x86_64-apple-darwin'
info: override toolchain for '/Users/hendrik/code/rust/asciii' set to '1.24.0-x86_64-apple-darwin'
1.24.0-x86_64-apple-darwin unchanged - rustc 1.24.0 (4d90ac38c 2018-02-12)
+ cargo clean
real 0m0.339s
user 0m0.091s
sys 0m0.167s
+ cargo build
Compiling utf8-ranges v1.0.0
Compiling num-traits v0.1.41
Compiling bitflags v0.9.1
Compiling rayon-core v1.3.0
Compiling percent-encoding v1.0.1
Compiling cc v1.0.3
Compiling itoa v0.3.4
Compiling maplit v1.0.0
Compiling linked-hash-map v0.5.0
Compiling pest v0.3.3
Compiling unicode-normalization v0.1.5
Compiling strsim v0.6.0
Compiling serde v1.0.24
Compiling cfg-if v0.1.2
Compiling term v0.4.6
Compiling dtoa v0.4.2
Compiling quote v0.3.15
Compiling custom_derive v0.1.7
Compiling vec_map v0.8.0
Compiling regex-syntax v0.4.1
Compiling unicode-width v0.1.4
Compiling same-file v0.1.3
Compiling unidecode v0.2.0
Compiling lazy_static v1.0.0
Compiling matches v0.1.6
Compiling enum_derive v0.1.7
Compiling either v1.4.0
Compiling scopeguard v0.3.3
Compiling pkg-config v0.3.9
Compiling semver-parser v0.7.0
Compiling ansi_term v0.10.2
Compiling unicode-xid v0.0.4
Compiling quick-error v1.2.1
Compiling log v0.3.8
Compiling libc v0.2.34
Compiling rustc-demangle v0.1.5
Compiling void v1.0.2
Compiling open v1.2.1
Compiling encode_unicode v0.3.1
Compiling lazy_static v0.2.11
Compiling bitflags v1.0.1
Compiling yaml-rust v0.4.0
Compiling num-integer v0.1.35
Compiling cmake v0.1.29
Compiling textwrap v0.9.0
Compiling walkdir v1.0.7
Compiling unicode-bidi v0.3.4
Compiling coco v0.1.1
Compiling synom v0.11.3
Compiling libz-sys v1.0.18
Compiling semver v0.9.0
Compiling unreachable v1.0.0
Compiling unreachable v0.1.1
Compiling term_size v0.3.1
Compiling num_cpus v1.7.0
Compiling atty v0.2.3
Compiling memchr v2.0.1
Compiling rand v0.3.18
Compiling time v0.1.38
Compiling backtrace v0.3.4
Compiling slug v0.1.2
Compiling crowbook-intl-runtime v0.1.0
Compiling num-iter v0.1.34
Compiling syn v0.11.11
Compiling libgit2-sys v0.6.17
Compiling idna v0.1.4
Compiling thread_local v0.3.5
Compiling ordered-float v0.5.0
Compiling prettytable-rs v0.6.7
Compiling clap v2.29.0
Compiling aho-corasick v0.6.4
Compiling num v0.1.41
Compiling error-chain v0.11.0
Compiling tempdir v0.3.5
Compiling uuid v0.5.1
Compiling chrono v0.4.0
Compiling regex v0.2.3
Compiling url v1.6.0
Compiling serde_json v1.0.8
Compiling toml v0.4.5
Compiling serde_yaml v0.7.3
Compiling serde_derive_internals v0.18.0
Compiling rayon v0.9.0
Compiling icalendar v0.3.1
Compiling env_logger v0.4.3
Compiling handlebars v0.29.1
Compiling crowbook-intl v0.2.1
Compiling serde_derive v1.0.24
Compiling asciii v3.1.5 (file:///Users/hendrik/code/rust/asciii)
Compiling claude v0.2.0
Compiling bill v0.2.0
Compiling git2 v0.6.9
Finished dev [unoptimized + debuginfo] target(s) in 62.95 secs
real 1m3.849s
user 4m28.758s
sys 0m43.910s
+ touch src/lib.rs
+ cargo build
Compiling asciii v3.1.5 (file:///Users/hendrik/code/rust/asciii)
Finished dev [unoptimized + debuginfo] target(s) in 8.21 secs
real 0m9.018s
user 0m7.050s
sys 0m2.052s
+ cargo clean
real 0m0.461s
user 0m0.087s
sys 0m0.310s
+ cargo build --release
Compiling scopeguard v0.3.3
Compiling rayon-core v1.3.0
Compiling lazy_static v1.0.0
Compiling itoa v0.3.4
Compiling unicode-xid v0.0.4
Compiling lazy_static v0.2.11
Compiling pest v0.3.3
Compiling void v1.0.2
Compiling maplit v1.0.0
Compiling bitflags v0.9.1
Compiling log v0.3.8
Compiling cfg-if v0.1.2
Compiling cc v1.0.3
Compiling ansi_term v0.10.2
Compiling unidecode v0.2.0
Compiling utf8-ranges v1.0.0
Compiling encode_unicode v0.3.1
Compiling percent-encoding v1.0.1
Compiling regex-syntax v0.4.1
Compiling unicode-normalization v0.1.5
Compiling custom_derive v0.1.7
Compiling quote v0.3.15
Compiling matches v0.1.6
Compiling bitflags v1.0.1
Compiling unicode-width v0.1.4
Compiling serde v1.0.24
Compiling rustc-demangle v0.1.5
Compiling quick-error v1.2.1
Compiling same-file v0.1.3
Compiling pkg-config v0.3.9
Compiling open v1.2.1
Compiling linked-hash-map v0.5.0
Compiling strsim v0.6.0
Compiling enum_derive v0.1.7
Compiling semver-parser v0.7.0
Compiling either v1.4.0
Compiling num-traits v0.1.41
Compiling vec_map v0.8.0
Compiling dtoa v0.4.2
Compiling term v0.4.6
Compiling libc v0.2.34
Compiling unreachable v1.0.0
Compiling unreachable v0.1.1
Compiling crowbook-intl-runtime v0.1.0
Compiling synom v0.11.3
Compiling unicode-bidi v0.3.4
Compiling textwrap v0.9.0
Compiling slug v0.1.2
Compiling walkdir v1.0.7
Compiling yaml-rust v0.4.0
Compiling cmake v0.1.29
Compiling libz-sys v1.0.18
Compiling coco v0.1.1
Compiling num-integer v0.1.35
Compiling semver v0.9.0
Compiling thread_local v0.3.5
Compiling ordered-float v0.5.0
Compiling backtrace v0.3.4
Compiling rand v0.3.18
Compiling memchr v2.0.1
Compiling term_size v0.3.1
Compiling time v0.1.38
Compiling atty v0.2.3
Compiling num_cpus v1.7.0
Compiling syn v0.11.11
Compiling num-iter v0.1.34
Compiling idna v0.1.4
Compiling libgit2-sys v0.6.17
Compiling toml v0.4.5
Compiling serde_json v1.0.8
Compiling serde_yaml v0.7.3
Compiling error-chain v0.11.0
Compiling prettytable-rs v0.6.7
Compiling clap v2.29.0
Compiling aho-corasick v0.6.4
Compiling num v0.1.41
Compiling tempdir v0.3.5
Compiling uuid v0.5.1
Compiling url v1.6.0
Compiling serde_derive_internals v0.18.0
Compiling chrono v0.4.0
Compiling regex v0.2.3
Compiling rayon v0.9.0
Compiling icalendar v0.3.1
Compiling serde_derive v1.0.24
Compiling crowbook-intl v0.2.1
Compiling env_logger v0.4.3
Compiling handlebars v0.29.1
Compiling asciii v3.1.5 (file:///Users/hendrik/code/rust/asciii)
Compiling git2 v0.6.9
Compiling claude v0.2.0
Compiling bill v0.2.0
Finished release [optimized] target(s) in 272.41 secs
real 4m33.227s
user 12m57.431s
sys 0m44.599s
+ touch src/lib.rs
+ cargo build --release
Compiling asciii v3.1.5 (file:///Users/hendrik/code/rust/asciii)
Finished release [optimized] target(s) in 181.70 secs
real 3m2.491s
user 3m57.883s
sys 0m2.543s
+ rustup override unset
info: override toolchain for '/Users/hendrik/code/rust/asciii' removed
#!/bin/bash
set -x
rustup toolchain install 1.23.0
rustup toolchain install 1.24.0
rustup override set 1.23.0
time cargo clean
time cargo build
touch src/lib.rs
time cargo build
time cargo clean
time cargo build --release
touch src/lib.rs
time cargo build --release
rustup override set 1.24.0
time cargo clean
time cargo build
touch src/lib.rs
time cargo build
time cargo clean
time cargo build --release
touch src/lib.rs
time cargo build --release
rustup override unset
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment