nixpkgs/pkgs/top-level
Vladimír Čunát 1bdb138710
nix: use boehmgc with enableLargeConfig = true
Fixes #43015 for me and hopefully also similar issues.

== Resource consumption ==

TL;DR: no change for small-memory cases, less CPU for large-memory cases.

I assume almost all of the large memory usage is just the expression
evaluation and managed by the GC, so I used just `nix-env -q...` to test.
Old and new lines for each command follow.  I tried to run each several
times, but the values were very stable (<1% difference on re-runs),
so only one line for each command-version pair is provided.

$ time nix-env -f . -qaP --description -A nix >/dev/null
- 0.06user 0.01system 0:00.07elapsed 101%CPU (0avgtext+0avgdata 29036maxresident)k
+ 0.06user 0.01system 0:00.07elapsed 102%CPU (0avgtext+0avgdata 29864maxresident)k

$ time nix-env -f . -qaP --description >/dev/null
- 6.45user 0.36system 0:06.82elapsed  99%CPU (0avgtext+0avgdata 1021024maxresident)k
+ 6.23user 0.33system 0:06.57elapsed 100%CPU (0avgtext+0avgdata  938408maxresident)k

$ time nix-env -f . --show-trace -qa --drv-path --system --meta --xml 2>&1 >/dev/null
- 56.35user 0.96system 0:31.03elapsed 184%CPU (0avgtext+0avgdata 3207708maxresident)k
+ 44.80user 0.91system 0:26.12elapsed 175%CPU (0avgtext+0avgdata 3192696maxresident)k

$ time ./result-nix-large/bin/nix-instantiate --dry-run --eval --strict \
    --show-trace ./maintainers/scripts/eval-release.nix > /dev/null
- Too many heap sections: Increase MAXHINCR or MAX_HEAP_SECTS
- Command terminated by signal 6
- 175.18user 2.68system 1:17.42elapsed 229%CPU (0avgtext+0avgdata 8468440maxresident)k
+ 178.48user 2.78system 1:15.11elapsed 241%CPU (0avgtext+0avgdata 8460572maxresident)k
2018-07-06 13:03:45 +02:00
..
aliases.nix pgmanage: remove deprecated postage alias 2018-06-23 13:32:13 +02:00
all-packages.nix nix: use boehmgc with enableLargeConfig = true 2018-07-06 13:03:45 +02:00
beam-packages.nix erlangR21: init at 21.0 2018-06-21 09:36:54 -05:00
coq-packages.nix coq_8_8: 8.8.0 -> 8.8.1 2018-06-29 11:10:31 +02:00
darwin-packages.nix xcode: add xcodePlatform to system 2018-06-25 22:18:23 -04:00
default.nix top-level: Move comma for stylistic consistency 2018-03-20 15:37:34 -04:00
dotnet-packages.nix Merge pull request #40612 from symphorien/boogie_vim 2018-05-29 19:58:20 +02:00
emacs-packages.nix pdf-tools: 0.80 -> HEAD 2018-06-17 21:54:37 +02:00
emscripten-packages.nix Emscripten 1.37.16 to 1.37.36 (#37291) 2018-03-18 13:34:46 +01:00
haskell-packages.nix ghc: add 8.6.1-alpha1 pre-release 2018-07-01 19:22:09 +02:00
haxe-packages.nix
impure.nix impure.nix: fix handling of localSystem 2018-06-25 17:13:02 -04:00
java-packages.nix jogl: init at 2.3.2 2018-03-19 04:08:12 +00:00
lua-packages.nix luaPackages.mpack: fix build after #28029 2018-05-29 15:06:38 +00:00
make-tarball.nix
metrics.nix metrics: fix "values" to be count not bytes, to match prev behavior 2018-03-13 13:29:15 -05:00
ocaml-packages.nix ocamlPackages.cmdliner: remove at 0.9.8 2018-06-26 20:14:57 +00:00
perl-packages.nix exiftool: 10.80 -> 11.01 (#42757) 2018-06-29 23:23:06 +02:00
php-packages.nix Merge pull request #42385 from caugner/php-apcu-5.1.11 2018-06-24 22:06:56 +02:00
pure-packages.nix
python-packages.nix pythonPackages.python-prctl: init at 1.7 (#42353) 2018-07-04 11:54:00 +00:00
release-cross.nix release-lib: Filter supportedSystems with meta.platforms-style patterns 2018-03-19 21:32:28 -04:00
release-lib.nix lib: Messed up or operator precedence 2018-03-19 22:25:49 -04:00
release-python.nix
release-small.nix release-small.nix: Fix evaluation error 2018-03-17 21:57:44 -04:00
release.nix release: remove nix-repl 2018-05-31 20:09:20 -04:00
splice.nix
stage.nix stage: remove nixpkgsFun 2018-07-02 11:20:34 -04:00
unix-tools.nix unixtools: add killall 2018-06-27 16:45:52 -04:00
wine-packages.nix winePackages: move to pkgs/top-level/wine-packages.nix 2018-05-17 02:31:03 +03:00