-
-
Notifications
You must be signed in to change notification settings - Fork 5k
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
[CI/Build] CMakeLists: build all extensions' cmake targets at the same time #5034
Conversation
This seems straightforward to me, thanks! Only concern is possibly increasing memory requirements to build because of more targets in flight. Any thoughts @bnellnm ? Edit: make sure to run format.sh so CI can run |
I don't think this should be turned on by default. We tried very hard to not overwhelm user's machines: Lines 71 to 105 in 9197709
If we compile all the targets by default, it will violate this. We can make this an opt-in feature, and users can turn it on if they know what they are doing. |
I'm not too worried about overloading machines. Even with multiple targets the maximum number of jobs should be honored. The only problem I see with this is that each extension/target could conceivably have a different configuration. Currently, this is not the case but this change could cause problems if targets ever had different configs. |
05f5e78
to
7249850
Compare
Any updates on this? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you @dtrifiro for the clear justification on why this patch improves CPU utilization. It is clear that if we run into peak memory consumption issues, we should continue to tune MAX_JOBS and NVCC_THREADS independently of compiling all targets at once.
Instead of building one target at a time, we can specify multiple
--target
flags simultaneously tocmake
, this should speed up the build process a little.