-
Notifications
You must be signed in to change notification settings - Fork 5.9k
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
Parallelize macOS build in CI #12422
Comments
Hi @cameel, very interesting issue. For over a decade I only saw the That said, assuming this was not the problem, maybe we should try a different flag, here are the cmake equialent: Unfortunately I don't own a Mac that I can try it myself. |
That's a great point. Being used to the GNU tools it didn't even cross my mind but it could really be just that. Honestly, I don't own a Mac either, I'm only ever using it in CI :) If you would like to try, it's as simple as tweaking our config.yml. If you create a PR it will run with your changed config. If you do that you should log into CircleCI though and follow the project if you can because otherwise there are some limits on external PRs. Sometimes mac/windows jobs do not run at all. If that happens, usually a branch created by one of the project members also helps to trigger it so let me know. |
Well, I tried but apparently CircleCI wants some schmoney:
|
OK, that's what was afraid would happen. Well, let me try it then. |
Here's a PR: #12536. Let's see if your theory is true :) Feel free to review. |
In #11670 (comment) I discovered that our macOS build job in CI takes ~20 min regardless of how many cores the machine has. Apparently the
-j
flag we put inMAKEFLAGS
variable is getting ignored. I think that the build config generated by CMake on macOS is stillmake
-based so I'm not sure why this is the case.This needs to be investigated. Once we know how to parallelize it, we should adjust the number of threads/processes and machine resource class in CI for the best cost/benefit ratio.
The text was updated successfully, but these errors were encountered: