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
Performance improvements #59756
Performance improvements #59756
Conversation
Make isCross = stdenv.hostPlatform != stdenv.buildPlatform This might be a little bit cheaper than redoing the comparison each time.
This check could be expensive as it needs to perform each time before the derivation can be evaluated.
@GrahamcOfBorg eval |
Tomorrow I'll generate some flame graphs for comparison, but according to the performance report in the Checks tab, this is very promising. Some highlights:
Nicely done! |
2168759
to
0e31bff
Compare
Nice job 🙂 I have a question, how do you profile nix and what do you to create flame graphs? |
It looks like #59369 isn't included in your branch, so it is a bit obscured by the unique function's interesting behavior. At any rate, here we are: |
https://github.com/NixOS/nixpkgs/pull/59756/checks?check_run_id=109424120 this report is generated by comparing the results from For flame graphs: have like 30gb of ram (swap is ok but slow) and follow NixOS/nix#2782 |
This reverts commit b08de87. need to get the delta on this change
@grahamc A question for you on the performance report: Is it comparing performance results against the previous commit or the master branch? For instance I am trying to figure out the difference between these two results: |
Experiments in improving derivation performance. Trying two things:
Motivation for this change
Things done
sandbox
innix.conf
on non-NixOS)nix-shell -p nix-review --run "nix-review wip"
./result/bin/
)nix path-info -S
before and after)