-
Notifications
You must be signed in to change notification settings - Fork 5.8k
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
[CI] Optimize our CircleCI machine sizes #11670
Comments
Please check first if we are using all the cores on the machine. I think the intent back then was that windows and macos failures are rare and thus it is not a big deal if the tests take a bit longer to run. It would somehow be nice if we could select the machine based on the type of test run: For PRs and releases, it might be important to run quickly, for regular develop builds not so much. Also for PRs, we could default to "slow run" unless specified otherwise. |
If we switch from medium to large, we get double the amount of cores and double the RAM for triple the price. Not sure if that is worth it. |
OK. If that's the pricing then it's probably not worth it. I assumed their pricing would be more linear :) |
That's true for Windows but looks like for macOS the cost/performance scaling is more linear (double cores+RAM = double price). So its seems worth trying. Anyway, after working with CI today I realized that our machine allocation in general could be better optimized. We never use |
Observations
Questions
Linux jobs
Windows jobs
macOS jobs
Details
|
In our CI config we only use
medium
andxlarge
machines. There's probably does not give us the best cost/performance ratio. We should try optimizing it a bit.See list of all available machine types.
On the call with CircleCI people we've been recommended to try the larger Windows and macOS machines to speed up CI runs. Currently we're using
medium
instances and there are larger ones available. Not sure if that's because larger ones weren't originally available or if we just decided smaller ones are most cost-effective. We should at least try them out and compare performance and cost (if we haven't already)Also, we have some jobs that do not require much processing and only make use of one core. For example the ones I'm adding in #12181 and #12165 but I'm sure there are more. These can very likely be switched to
small
without affecting the total runtime too much.Finally, we should make sure that all the linux jobs that use
xlarge
actually do benefit from it.The text was updated successfully, but these errors were encountered: