Skip to content

Big package databases make GHC slow to start up #4093

Open
@ezyang

Description

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

<interactive>: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.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions