-
Notifications
You must be signed in to change notification settings - Fork 8.2k
Revert "doc: enable figures enumeration" cause numfig is too slow #57624
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
Conversation
Usage of numfig=True option in conf.py significantly increases doc build time. While it is a nice feature, it's not extensively used in Zephyr documentation, so let's remove its usage in favor of faster doc builds. Signed-off-by: Gerard Marull-Paretas <[email protected]>
This reverts commit 4516117. A git bisect showed that the duration of an incremental build doubled after this commit enabled `numfig=True`. Measurements shared and discussed in zephyrproject-rtos#37572, zephyrproject-rtos#55708 and zephyrproject-rtos#56631 confirmed this. Here are yet more measurements below in two different system configurations building docs for very recent Zephyr commit b10817b + all `:numref:` removed by the previous commit. In other words these numbers show the cost of `numfig=True` _without_ even using `:numref:`. * Ubuntu 22, 8 cores sphinx-build --version 4.3.2 numfig=True numfig=False - from scratch 7 min 15 s 6 min 40 s - one-line .rst change 48 s 24s * Current Arch Linux, 72 cores sphinx-build --version 6.2.1 numfig=True numfig=False - from scratch 5 min 0 s 4 min 50 s - one-line .rst change 37 s 18 s Signed-off-by: Marc Herbert <[email protected]>
|
@marc-hb Not opposing this change, but have you/we considered just omitting |
This change does not help PRs that much actually because they build from scratch too. It's all about incremental build / iterative, local .rst compilation. I think your idea is still valid and in fact this is more or less what I tried in #55708 but I believe the consensus there was "let's keep it simple and just get rid of numfig, it's not even that useful". BTW I intend to return to #55708 once the numfig dust settles down because 55708 was not just about numfig. |
The ability to make a one-line .rst change and quickly regenerate the docs has been broken at least three times in the past: zephyrproject-rtos#13159, zephyrproject-rtos#36033 and zephyrproject-rtos#57624. Add a small, final check to make sure this can't happen again. Signed-off-by: Marc Herbert <[email protected]>
This reverts commit 4516117.
A git bisect showed that the duration of an incremental build doubled
after this commit enabled
numfig=True. Measurements shared anddiscussed in #37572, #55708 and #56631 confirmed this. Here are yet more
measurements below in two different system configurations building docs
for very recent Zephyr commit b10817b + all
:numref:removed bythe previous commit. In other words these numbers show the cost of
numfig=Truewithout even using:numref:.sphinx-build --version 4.3.2
sphinx-build --version 6.2.1
Signed-off-by: Marc Herbert [email protected]