Skip to content

Significantly improve macos build times (i.e., github actions)#3033

Merged
galabovaa merged 2 commits into
third-party-dependenciesfrom
macos-libhighs-link-performance
May 20, 2026
Merged

Significantly improve macos build times (i.e., github actions)#3033
galabovaa merged 2 commits into
third-party-dependenciesfrom
macos-libhighs-link-performance

Conversation

@mathgeekcoder
Copy link
Copy Markdown
Collaborator

  • I noticed that a few github actions were taking >1 hour for macos builds.
  • Most of this time was spent linking libhighs.
  • This change enables UNITY_BUILD on APPLE and build time reduces to ~1 minute.

I haven't seen any issues with using it, but I noticed that it had been previously disabled. I'm not an Apple user, so please reject this PR if it doesn't make sense.

Note: This is PR is set to merge to my third-party-dependencies branch, i.e., PR #3031. I can rewrite it to work directly with latest if preferred.

@codecov
Copy link
Copy Markdown

codecov Bot commented May 19, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 72.94%. Comparing base (5b8446c) to head (4d6fc81).

Additional details and impacted files
@@                    Coverage Diff                    @@
##           third-party-dependencies    #3033   +/-   ##
=========================================================
  Coverage                     72.94%   72.94%           
=========================================================
  Files                           425      425           
  Lines                        102181   102181           
  Branches                      16443    16443           
=========================================================
+ Hits                          74535    74537    +2     
+ Misses                        27370    27368    -2     
  Partials                        276      276           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@mathgeekcoder
Copy link
Copy Markdown
Collaborator Author

In particular look at:

build-macos: 1+ hour wall clock, 6+ hours compute effort vs 10 min wall clock, 16 minute compute effort

Helps other workflows too, but harder to see due to other bottlenecks.

@mathgeekcoder mathgeekcoder requested a review from galabovaa May 20, 2026 00:04
@mathgeekcoder
Copy link
Copy Markdown
Collaborator Author

FYI: I also tried several alternative 'fixes':

  • Reducing exported symbols
  • Disabling IPO
  • Static lib vs dynamic
  • Using the legacy linker
  • Using no-deduplication

None of them helped.

Copy link
Copy Markdown
Contributor

@galabovaa galabovaa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great!

@galabovaa
Copy link
Copy Markdown
Contributor

Thank you, @mathgeekcoder! Merging this. No need for a separate PR here!

@galabovaa galabovaa merged commit 9633d3e into third-party-dependencies May 20, 2026
498 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants