-
Notifications
You must be signed in to change notification settings - Fork 40
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
slow incremental rebuilds of Nexus tests #1122
Comments
I've got a profiling script, raw data, and flame graph in this gist repo. I found that two I set LD_ALTEXEC to point to a custom Here are the output files from one run that took just over a minute: pid 2556:
(It's weird that the file is 53110 bytes and that's the entire contents. It has a ton of NUL bytes right before the time output. I haven't dug into this.) I used Brendan's tools to make a flame graph:
As a sanity check: there appear to be 4889 samples in this output:
Sampling at 97 Hz a single-threaded process that took 62s, if it were on-CPU the whole time, we'd expect 6,014 samples. That suggests only 81% of time was spent on-CPU in userland in ld. I'm surprised by this but haven't checked against The flame graph is also in this repo. It looks pretty simple, but I'm not familiar enough with ld to say much useful. I see we're spending about 33% of time in Note too that the command line includes 650 arguments (!) including 257 object files and 313 rlib files. The rlib files appear to correspond with Rust dependencies. |
@richlowe suggested trying |
I found that my incremental rebuilds of Nexus tests seemed to be getting long (1m40s just now). I'm going to put some data in this issue but otherwise I'm not actively working on this.
The text was updated successfully, but these errors were encountered: