Skip to content
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

Add parallel parsing (on Linux/macOS) #89

Merged
merged 2 commits into from
Dec 30, 2024
Merged

Conversation

martijnbastiaan
Copy link
Owner

@martijnbastiaan martijnbastiaan commented Dec 20, 2024

Results

For -j24 on a 3900X.

sequential parallel Δ
Clash: Overall 61.236s 53.333s -14%
Clash: Clash.Prelude.Safe 12.995s 3.583s -262%
Clash*: Overall 22.105s 13.971s -58%
Clash*: Clash.Prelude.Safe 13.259s 3.621s -266%
Agda: Overall 13.106s 2.487s -427%
Agda: Agda.Utils.List 12.405s 2.450s -406%

*Clash-prelude spends the majority of its time in one module. Results with a star are for a Clash without this module.

@martijnbastiaan martijnbastiaan force-pushed the parallel-parsing branch 6 times, most recently from 78b4920 to f418897 Compare December 23, 2024 11:42
@martijnbastiaan martijnbastiaan changed the title Add parallel parsing Add parallel parsing (on Linux/macOS) Dec 29, 2024
@martijnbastiaan martijnbastiaan marked this pull request as ready for review December 29, 2024 16:35
@martijnbastiaan martijnbastiaan force-pushed the parallel-parsing branch 5 times, most recently from efb813b to 6afa503 Compare December 29, 2024 17:44
@martijnbastiaan martijnbastiaan force-pushed the parallel-parsing branch 2 times, most recently from d2e827a to 0586383 Compare December 30, 2024 10:46
The GHC API is no longer used to discover modules. Because of that,
modules can be parsed in parallel.
@martijnbastiaan martijnbastiaan merged commit dda2e68 into main Dec 30, 2024
26 checks passed
@martijnbastiaan martijnbastiaan deleted the parallel-parsing branch December 30, 2024 11:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant