-
-
Notifications
You must be signed in to change notification settings - Fork 18.5k
Parallelized Build / CI #30214
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
Parallelized Build / CI #30214
Conversation
LGTM |
I think could also reduce the cythonize bottleneck if using the Locally that yielded this for a clean build: 69.07s user 3.75s system 334% cpu 21.783 total So 21 seconds from scratch isn't bad; might help a lot to reduce time to run ASVs |
that would be a nice speedup. im not clear on what the difference is between nthreads vs "-j" |
ok, it looks like passing |
Open to suggestions on where to place this, but reusing the argument for parallel compliation in the calls to Cythonize helps a lot. Updated benchmarks: $ time python setup.py build_ext --inplace --parallel=4
70.69s user 3.88s system 311% cpu 23.951 total
$ time python setup.py build_ext --inplace -j4
69.88s user 3.80s system 322% cpu 22.817 total |
I'd roughly say this saves about 4-5 minutes on CI where it works. Have to see what's going on with Linux 36 Also not sure if Windows will really support this, at least not without some upstream changes. Earlier attempts throw a warning about multiprocessing |
the CI errors all look unrelated, just started re-run |
lgtm thanks @WillAyd |
I think this might be responsible for some 36 errors on the 32 bit build with environment setup this morning. I'll revert at least the CI piece so we can get that green |
Modeled after cython/cython#3187 which in 0.29.14 added parallel support
A very slight boost to timing from a clean directory (bottleneck is in the Cythonize calls in both cases)