Created
July 15, 2020 23:36
-
-
Save pnkfelix/a033f84257ecb3a8030d1ad13ef50237 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
## Some non-debug timings | |
touch ../src/librustc_middle/lib.rs && time infer-remake.sh stage1 | |
touch ../src/librustc_middle/lib.rs && time infer-remake.sh notidy nocheck stage1 | |
> real 2m2.034s | |
> user 27m5.253s | |
> sys 12m0.467s | |
> real 2m1.797s | |
> user 27m9.395s | |
> sys 12m23.794s | |
> real 2m2.364s | |
> user 27m10.960s | |
> sys 12m22.676s | |
touch ../src/librustc_middle/lib.rs && time infer-remake.sh notidy nocheck keep0 stage1 | |
> real 0m26.016s | |
> user 0m54.010s | |
> sys 0m8.177s | |
> real 0m26.037s | |
> user 0m54.090s | |
> sys 0m7.805s | |
> real 0m26.057s | |
> user 0m54.007s | |
> sys 0m8.078s | |
touch ../src/librustc_middle/mir/mod.rs && time infer-remake.sh notidy nocheck stage1 | |
> real 2m2.450s | |
> user 27m4.326s | |
> sys 11m52.220s | |
> real 2m2.426s | |
> user 27m18.808s | |
> sys 12m8.729s | |
> real 2m2.872s | |
> user 27m12.354s | |
> sys 12m9.106s | |
touch ../src/librustc_middle/mir/mod.rs && time infer-remake.sh notidy nocheck keep0 stage1 | |
> real 0m26.172s | |
> user 0m54.044s | |
> sys 0m8.158s | |
> real 0m26.219s | |
> user 0m54.282s | |
> sys 0m8.270s | |
So, the time is cut roughly in half. That's exciting. | |
* With non-debug build, rustc_middle is taking 14 seconds to build. (So running time is scaled by 7/10) | |
* Outliers (timings > 1sec): | |
time: 1.192; rss: 567MB rustc_middle, expand_crate | |
time: 1.192; rss: 567MB rustc_middle, macro_expand_crate | |
time: 1.784; rss: 611MB rustc_middle, configure_and_expand | |
time: 1.083; rss: 1294MB rustc_middle, misc_checking_3 | |
time: 6.572; rss: 1888MB rustc_middle, monomorphization_collector_graph_walk | |
time: 1.237; rss: 2016MB rustc_middle, partition_and_assert_distinct_symbols | |
time: 9.027; rss: 2059MB rustc_middle, codegen_crate | |
time: 14.109; rss: 1007MB total for rustc_middle | |
## Some (debug) timings | |
Note that this is only touching files, not modifying them, so it is either near best case or unrealistic, | |
since in practice when you rebuild you make an edit, and I think the incremental system is going to hash | |
stuff so that it won't redo certain kinds of work. | |
* Even so, rustc_middle is takikng 20 seconds to build. | |
* Outliers (timings > 1sec): | |
time: 1.629; rss: 595MB rustc_middle, expand_crate | |
time: 1.629; rss: 595MB rustc_middle, macro_expand_crate | |
time: 2.399; rss: 639MB rustc_middle, configure_and_expand | |
time: 1.494; rss: 1337MB rustc_middle, misc_checking_3 | |
time: 9.219; rss: 1972MB rustc_middle, monomorphization_collector_graph_walk | |
time: 1.705; rss: 2142MB rustc_middle, partition_and_assert_distinct_symbols | |
time: 1.030; rss: 2299MB rustc_middle, encode_query_results | |
time: 1.185; rss: 2305MB rustc_middle, incr_comp_serialize_result_cache | |
time: 1.242; rss: 2172MB rustc_middle, incr_comp_persist_result_cache | |
time: 1.643; rss: 2172MB rustc_middle, serialize_dep_graph | |
time: 12.910; rss: 2172MB rustc_middle, codegen_crate | |
time: 20.043; rss: 1086MB total for rustc_middle | |
* Obvious culprits worth double-checking: monomorphization_collector_graph_walk and codegen_crate. | |
* Also, I should redo this run on a pure (non-dbg) opt build. | |
``` | |
touch ../src/librustc_middle/lib.rs && time infer-remake.sh stage1 | |
touch ../src/librustc_middle/lib.rs && time infer-remake.sh notidy nocheck stage1 | |
> real 4m28.023s | |
> user 39m10.793s | |
> sys 13m49.381s | |
> real 3m50.542s | |
> user 37m42.963s | |
> sys 13m43.560s | |
> real 3m51.870s | |
> user 37m32.821s | |
> sys 13m21.657s | |
touch ../src/librustc_middle/lib.rs && time infer-remake.sh notidy nocheck keep0 stage1 | |
> real 0m58.036s | |
> user 1m31.849s | |
> sys 0m19.924s | |
> real 0m57.752s | |
> user 1m31.483s | |
> sys 0m19.983s | |
> real 0m57.754s | |
> user 1m31.963s | |
> sys 0m19.695s | |
touch ../src/librustc_middle/mir/mod.rs && time infer-remake.sh notidy nocheck stage1 | |
> real 3m32.358s | |
> user 37m16.834s | |
> sys 13m32.609s | |
> real 3m33.000s | |
> user 37m9.659s | |
> sys 13m24.636s | |
> real 3m32.693s | |
> user 37m14.624s | |
> sys 13m26.652s | |
touch ../src/librustc_middle/mir/mod.rs && time infer-remake.sh notidy nocheck keep0 stage1 | |
> real 0m58.144s | |
> user 1m32.703s | |
> sys 0m20.047s | |
> real 0m57.843s | |
> user 1m32.194s | |
> sys 0m20.141s | |
> real 0m58.265s | |
> user 1m32.319s | |
> sys 0m20.020s | |
``` |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment