[AMD Official Use Only - Internal Distribution Only]
The one suggestion I saw that definitely seemed worth looking at was adding download caches if the larger CI systems didn't already have them.
Then again do we know that CI traffic is generating the bulk of the costs ? My guess would have been that individual developers and users would be generating as much traffic as the CI rigs.
________________________________ From: amd-gfx amd-gfx-bounces@lists.freedesktop.org on behalf of Jason Ekstrand jason@jlekstrand.net Sent: March 1, 2020 3:18 PM To: Jacob Lifshay programmerjake@gmail.com; Nicolas Dufresne nicolas@ndufresne.ca Cc: Erik Faye-Lund erik.faye-lund@collabora.com; Daniel Vetter daniel.vetter@ffwll.ch; Michel Dänzer michel@daenzer.net; X.Org development xorg-devel@lists.x.org; amd-gfx list amd-gfx@lists.freedesktop.org; wayland wayland-devel@lists.freedesktop.org; X.Org Foundation Board board@foundation.x.org; Xorg Members List members@x.org; dri-devel dri-devel@lists.freedesktop.org; Mesa Dev mesa-dev@lists.freedesktop.org; intel-gfx intel-gfx@lists.freedesktop.org; Discussion of the development of and with GStreamer gstreamer-devel@lists.freedesktop.org Subject: Re: [Intel-gfx] [Mesa-dev] gitlab.fd.o financial situation and impact on services
I don't think we need to worry so much about the cost of CI that we need to micro-optimize to to get the minimal number of CI runs. We especially shouldn't if it begins to impact coffee quality, people's ability to merge patches in a timely manner, or visibility into what went wrong when CI fails. I've seen a number of suggestions which will do one or both of those things including:
- Batching merge requests - Not running CI on the master branch - Shutting off CI - Preventing CI on other non-MR branches - Disabling CI on WIP MRs - I'm sure there are more...
I think there are things we can do to make CI runs more efficient with some sort of end-point caching and we can probably find some truly wasteful CI to remove. Most of the things in the list above, I've seen presented by people who are only lightly involved the project to my knowledge (no offense to anyone intended). Developers depend on the CI system for their day-to-day work and hampering it will only show down development, reduce code quality, and ultimately hurt our customers and community. If we're so desperate as to be considering painful solutions which will have a negative impact on development, we're better off trying to find more money.
--Jason
On March 1, 2020 13:51:32 Jacob Lifshay programmerjake@gmail.com wrote:
One idea for Marge-bot (don't know if you already do this): Rust-lang has their bot (bors) automatically group together a few merge requests into a single merge commit, which it then tests, then, then the tests pass, it merges. This could help reduce CI runs to once a day (or some other rate). If the tests fail, then it could automatically deduce which one failed, by recursive subdivision or similar. There's also a mechanism to adjust priority and grouping behavior when the defaults aren't sufficient.
Jacob _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.orgmailto:Intel-gfx%40lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfxhttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.freedesktop.org%2Fmailman%2Flistinfo%2Fintel-gfx&data=02%7C01%7Cjohn.bridgman%40amd.com%7C96fa507073f24b02f4b808d7be1daf8a%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637186907338419170&sdata=eT%2FUHbHaS1bZdvQOPjJ6wm0pqZSj2YE8k54%2FZHurRgA%3D&reserved=0