-
-
Notifications
You must be signed in to change notification settings - Fork 482
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
Use GNU make tokenpool protocol to manage parallelism of doctesting #36640
Conversation
e24c61e
to
1e75253
Compare
54568e3
to
6cfcea5
Compare
Do we have to make it standard? Other than that I think all it needs is some doc updates:
|
64d64e6
to
39a1926
Compare
I think nothing is gained by making it optional. It's a very simple Python script |
I've made the documentation changes in 39a1926 |
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.
I'm happy with it now, thanks.
Some day we might be able to replace SAGE_NUM_THREADS
in the build entirely, but I'm not going to think about it too hard until ninja supports the job server.
Thank you! |
Please don't push broken PRs to me, wtf. You are only allowed to remove the needs work after you actually check that it works. |
Sorry, I'll check what went wrong here. |
0ffb113
to
1dc6d36
Compare
Documentation preview for this PR (built with commit 1dc6d36; changes) is ready! 🎉 |
All green now. |
…sm of doctesting <!-- ^^^^^ Please provide a concise, informative and self-explanatory title. Don't put issue numbers in there, do this in the PR body below. For example, instead of "Fixes sagemath#1234" use "Introduce new method to calculate 1+1" --> <!-- Describe your changes here in detail --> This is useful when running our doctester in parallel with other build steps, or several doctesters in parallel, as happens for example in `make SAGE_CHECK=yes pypi-wheels`, and more of that after sagemath#35095. To test: ``` MAKE="make -j14" make SAGE_NUM_THREADS=100 DEBUG_JOBCLIENT=1 ptest ``` This will make the doctester attempt to use 100 workers, but it will only get tokens for 14 workers from `make`. `DEBUG_JOBCLIENT=1` shows what's happening. Upstream PR: - milahu/gnumake-tokenpool#3 (merged) <!-- Why is this change required? What problem does it solve? --> <!-- If this PR resolves an open issue, please link to it here. For example "Fixes sagemath#12345". --> - Resolves sagemath#30369 <!-- If your change requires a documentation PR, please link it appropriately. --> ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> <!-- If your change requires a documentation PR, please link it appropriately --> <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> <!-- Feel free to remove irrelevant items. --> - [x] The title is concise, informative, and self-explanatory. - [ ] The description explains in detail what this PR is about. - [x] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation accordingly. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on - sagemath#12345: short description why this is a dependency - sagemath#34567: ... --> <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> URL: sagemath#36640 Reported by: Matthias Köppe Reviewer(s): Michael Orlitzky
This PR seems to be causing alarm problems on OS X, as reported at https://groups.google.com/g/sage-release/c/uP-rwlM__MU/m/MuI_BhfmCQAJ. It may be fine on older versions of OS X, according to someone else's experience. |
How to reproduce these failures? Do they show with |
The |
I've only seen them with |
If I remember correctly, I also see this in 10.2.beta1, so it's not related to this PR. I don't know how long it's been happening. (I also see it on a linux virtual machine running on my Intel mac, so it's not just OS X.) |
It may be related to #33428 |
I consider these alarm doctest failures to be a blocker issue. Aside from reverting this PR, what options are there? |
Could you open a new Issue please with a clear reproducer (and distinguishing between |
See #36944. |
This is useful when running our doctester in parallel with other build steps, or several doctesters in parallel, as happens for example in
make SAGE_CHECK=yes pypi-wheels
, and more of that after #35095.To test:
This will make the doctester attempt to use 100 workers, but it will only get tokens for 14 workers from
make
.DEBUG_JOBCLIENT=1
shows what's happening.Upstream PR:
📝 Checklist
⌛ Dependencies