Closed Bug 1532343 Opened 5 years ago Closed 5 years ago

Stop cross-building cargo test binaries for macOS

Categories

(Core :: Graphics: WebRender, enhancement)

Other Branch
enhancement
Not set
normal

Tracking

()

RESOLVED WONTFIX

People

(Reporter: kats, Assigned: kats)

References

Details

(Whiteboard: [gfx-noted])

Attachments

(1 file)

In bug 1516568 when I added mac CI for webrender on treeherder, I had to cross-compile the cargo test binaries from linux to mac, and then run them on mac. I did this because running cargo test directly on mac produced strange errors (one stack overflow when compiling gleam, and unused variable warnings). Looks like these issues have all been resolved now as of rustc 1.33, and so we can stop doing the cross-compiling business for cargo test and just run it directly on macOS.

This has a few advantanges. The main one is that the configuration is simpler and closer to what a dev would actually do locally to run the tests. Also in terms of job scheduling we don't need a linux host as well as a mac host.

Note that the "release" macOS job (which builds headless wrench) is still being cross-compiled; this bug is just about the "debug" macOS job which is much simpler and can easily be run directly on macOS.

Try push: https://treeherder.mozilla.org/#/jobs?repo=try&group_state=expanded&revision=581304cdcf4587d5add81ba4a7055a8517c62551

This works now as of rustc 1.33, and makes things simpler.

Assignee: nobody → kats

An advantage to cross-compiling is that mac hosts are quite a bit more expensive.

True. Looking at the jobs this goes from 23 minutes of macOS time to 38 minutes of macOS time per push that touches gfx/wr. So maybe a couple of hours of macOS time per day? I don't know if that's enough to worth worrying about.

(In reply to Kartikaya Gupta (email:kats@mozilla.com) from comment #3)

True. Looking at the jobs this goes from 23 minutes of macOS time to 38 minutes of macOS time per push that touches gfx/wr. So maybe a couple of hours of macOS time per day? I don't know if that's enough to worth worrying about.

Looks like something landed recently that enabled some sort of caching of the m-c checkout on the macOS workers, so now on m-c the macOS cargotest job runtime is ~3-4 minutes (after a ~12 minute cross-compile time on a Linux worker). With this patch those two jobs get combined into a ~20 minute macOS job. So I guess even not accounting for the extra money cost the total latency is worse with the change, assuming a Linux worker is available within < 5 minutes (which is usually the case).

Closing as wontfix for now but we can always resurrect the patch if things change.

Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: