-
Notifications
You must be signed in to change notification settings - Fork 823
Multi agent parallel testing in CI #18523
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
Conversation
✅ No release notes required |
This kind of worked, but now Linux is the bottleneck, oh well :) |
Linux and MacOs will likely alternate in being the slowest, MacOs also has the smallest pool of available machines. I do like the numbers very much. |
.. number of unique executed tests. I would recommend to download testlog.xml files and have a script count unique test entries and compare two sets (prior exection, new execution from 4 jobs) |
So I had some fun splitting the build and test phases into separate jobs. |
I verified that in fact all tests do have a batch number trait, and none are left out when run in batches. The failsafe, in case this ever becomes problematic, is to remove the As for the build / test split into separate jobs, I'm not sold on this. it's a matter of reverting the single commit. |
Indeed, the overall time of the CI (and not duration of individual jobs) is the same, if not slower. => I think we can keep each leg do it's own build. |
Yes much of this comes from waiting for the windows vms to get running. There is significant wait time between the build and test phases because of this.
I'm away but I'll restore this when I get back 🙂 |
Thanks @majocha . Please mark it as ready for review onace that is changed, I am eager to have this in 👍 |
ff7fa06
to
88be2a4
Compare
This is ready, overall CI run time is now around 48 minutes. It is determined by the slowest |
I had no luck trying to just split VS unit tests, which are the slowest now, into batches with this approach. Tests fail, hang and so on. Theoretically it should work with less granularity: by test class instead of test case. So, there is still room for improvement. |
Thanks for trying @majocha . |
This is a big improvement for all F# contributors, I am super happy to see this being merged! |
Make #18517 work.