Title: Doc tests action takes too long · Issue #118891 · python/cpython · GitHub
Open Graph Title: Doc tests action takes too long · Issue #118891 · python/cpython
X Title: Doc tests action takes too long · Issue #118891 · python/cpython
Description: Issue Usually doctest's action's "Run documentation doctest"1 job takes around 12 minutes2 to execute. Most of this time is taken by the internal framework doctest.py3. The cause of the issue is GC regression in Python 3.13. Potential So...
Open Graph Description: Issue Usually doctest's action's "Run documentation doctest"1 job takes around 12 minutes2 to execute. Most of this time is taken by the internal framework doctest.py3. The cause of the issue is GC...
X Description: Issue Usually doctest's action's "Run documentation doctest"1 job takes around 12 minutes2 to execute. Most of this time is taken by the internal framework doctest.py3. The cause ...
Opengraph URL: https://github.com/python/cpython/issues/118891
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Doc tests action takes too long","articleBody":"## Issue\r\n\r\nUsually doctest's action's \"Run documentation doctest\"[^1] job takes around 12 minutes[^2] to execute. Most of this time is taken by the internal framework doctest.py[^3]. The cause of the issue is GC regression in Python 3.13.\r\n\r\n## Potential Solution\r\nFix #124567 \r\n\r\n## Additional Improvements\r\n### Improve doctest performance\r\nSince the tests are not interconnected (between different doc files), they can be easily parallelized. I suggest using `ProcessPoolExecutor` that will be suitable to \"bypass\" GIL (assuming that tasks are CPU-bound). Github runners have 4 cores available[^4], so, potentially, it can speed up execution by up to 4 times.\r\n\r\n@AlexWaygood @erlend-aasland \r\n\r\n[^1]: https://github.com/python/cpython/blob/7ac933e2609b2ef9b08ccf9c815b682b0e1ede2a/.github/workflows/reusable-docs.yml#L108\r\n[^2]: https://github.com/python/cpython/actions/runs/8922903843/job/24506021604\r\n[^3]: https://github.com/python/cpython/blob/main/Lib/doctest.py\r\n[^4]: https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners/about-github-hosted-runners#standard-github-hosted-runners-for-public-repositories","author":{"url":"https://github.com/Privat33r-dev","@type":"Person","name":"Privat33r-dev"},"datePublished":"2024-05-10T10:56:16.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":26},"url":"https://github.com/118891/cpython/issues/118891"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:a591260a-958a-f701-f377-b91fb6a00930 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | D7E4:14EC01:442B5F:5FF64F:696A15CE |
| html-safe-nonce | 08c5da333b4fd24516d37dc94913b0fc0408657220f05e4097b0d52db1135e20 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJEN0U0OjE0RUMwMTo0NDJCNUY6NUZGNjRGOjY5NkExNUNFIiwidmlzaXRvcl9pZCI6IjY1ODQyMjAwOTgxNTMyODkxNjYiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 86617c1a4a9653882eded62d46567e9b2f032141dd294d5932efa5df742d832b |
| hovercard-subject-tag | issue:2289501439 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/python/cpython/118891/issue_layout |
| twitter:image | https://opengraph.githubassets.com/5dd2003d0dee0955480612a99dde561bcbe1d5c248a1aeec322f68c708a20833/python/cpython/issues/118891 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/5dd2003d0dee0955480612a99dde561bcbe1d5c248a1aeec322f68c708a20833/python/cpython/issues/118891 |
| og:image:alt | Issue Usually doctest's action's "Run documentation doctest"1 job takes around 12 minutes2 to execute. Most of this time is taken by the internal framework doctest.py3. The cause of the issue is GC... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | Privat33r-dev |
| hostname | github.com |
| expected-hostname | github.com |
| None | 34a52bd10bd674f68e5c1b6b74413b79bf2ca20c551055ace3f7cdd112803923 |
| turbo-cache-control | no-preview |
| go-import | github.com/python/cpython git https://github.com/python/cpython.git |
| octolytics-dimension-user_id | 1525981 |
| octolytics-dimension-user_login | python |
| octolytics-dimension-repository_id | 81598961 |
| octolytics-dimension-repository_nwo | python/cpython |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 81598961 |
| octolytics-dimension-repository_network_root_nwo | python/cpython |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | e8bd37502700f365b18a4d39acf7cb7947e11b1a |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width