Xcode 16 Builds very slowly #423
Labels
bug
Something isn't working
dependencies
Pull requests that update a dependency file
fixed in dev or pr
Describe the bug
Initial builds with Xcode 16 are significantly (many minutes) slower than with Xcode 15. This happens for a new clone and any time an existing clone is reset using Product->Clean Build folder.
Refer to Loop Issue for more details
Loop Issue 2235: Xcode 16 Builds very slowly
Trio Issue
Trio does not use all 6 of the submodules modified to solve the slow build issue for Loop.
However, of the 4 affected modules that are used by Trio, the identical modification can be used.
These modules are:
As discussed in the Loop Issue, the settings for the
ENABLE_MODULE_VERIFIER
parameter were modified to be equal to a parameter set equal to not NO instead of hard coded to YES. Each module verification adds about 30 second to the initial build. For Trio, before the proposed modification for the 4 submodules, there were 8 modules verified in the 4 repositories.Configuration
Build times reported in this Issue were obtained with
dev
, commit 023642a (0.2.1)The Trio
fixed
test used a local modification to Triodev
.Timing Test
The timing for the build is taken from the Xcode tool.
Difference with respect to Loop
For those who read the Loop Issue in detail, you will notice that for Loop dev, the verify for the modules did not happen for the second build. This is not true for Trio dev.
Timing for dev and with the fix
Report build time in seconds for first, second and third builds in the table below.
Timing Display for First Build: Trio dev
The graphic below shows and example timing display associated with the
ENABLE_MODULE_VERIFIER = YES
parameter for the first build for Trio dev after the clean build folder step.Timing Display for Second Build: Trio dev
The graphic below shows an example timing display associated with the
ENABLE_MODULE_VERIFIER = YES
parameter for the second build for Trio dev.Timing Display for First Build: Trio fix applied
The graphic below shows an example timing display for the initial build when the submodules have the suggested fix applied.
The text was updated successfully, but these errors were encountered: