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

Speedup Makefile on Windows #5642

Closed

Conversation

Disservin
Copy link
Member

@Disservin Disservin commented Oct 19, 2024

The Makefile is notoriously slow on windows, because of new processes being spawned I believe. This
pr improves it a little bit for the help and config-sanity targets, with the latter also improving make -j build because it depends on that. On the same machine ubuntu (wsl) is more than 3 times faster, if there are other improvements we can make I'd be happy to hear about them. Ultimately #5543 also aims to improve this I believe, but it will take some additional time before that lands.

make config-sanity:

    patch: 6.199s
    master: 12.738s


make help:

    patch: 3.1s
    master: 11.49s


make -j build:

    patch: 36s
    master: 43.25s


make -j build:

    master ubuntu: 10s

No functional change

@MinetaS
Copy link
Contributor

MinetaS commented Oct 19, 2024

Could you test using printf instead of an echo chain? For example:

printf "\n\
        To compile stockfish, type\n\
        \n\
        make -j target [ARCH=arch] [COMP=compiler] [COMPCXX=cxx]\n\
..."

or a set of "%s\n" for better formatting.

@Disservin
Copy link
Member Author

Disservin commented Oct 19, 2024

I can do that later but I found the new lines a bit tedious. For the config sanity the big bottleneck now seems to be the net script which takes like 4.5s compared to 1.5s when started directly from the cli.

@Disservin Disservin closed this in c151135 Oct 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants