haskell / haskell/cabal

Big package databases make GHC slow to start up

Open
#4,093 1 comment 0 reactions 0 assignees View on GitHub
cabal-install: v2-build system
Dominant language
Haskell
Stars
1.7k
Forks
750
Avg merge
4d 3h
Merged PRs (30d)
28

Description

```
ezyang@sabre:~$ time ghc -no-global-package-db -e "return ()"

:1:1:
Failed to load interface for ‘Prelude’
Use -v to see a list of the files searched for.

real 0m0.100s
user 0m0.080s
sys 0m0.016s
ezyang@sabre:~$ time ghc -e "return ()"

real 0m0.230s
user 0m0.176s
sys 0m0.052s
ezyang@sabre:~$ time ghc -package-db .cabal/store/ghc-7.10.3/package.db/ -e "return ()"

real 0m0.310s
user 0m0.268s
sys 0m0.036s
```

That's a 3x difference for no discernible benefit at all! And it gets worse as the package database size increases. Maybe we should populate the plan database with exactly the packages involved in our plan.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.