-
Notifications
You must be signed in to change notification settings - Fork 63
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
Speedup Tests #128
Speedup Tests #128
Conversation
Reduce unnecessary sleeping or long SC periods, without reducing the quality of the tests. Optimise test_fault() and test_ipc_pair() by taking init code out of the inner loop and re-using the created processes. These changes more than halve the time needed to run all tests. Signed-off-by: Indan Zupancic <[email protected]>
Pass meaningful values as argument so the check adds value. Signed-off-by: Indan Zupancic <[email protected]>
All checks passed, let's try hw tests now. |
Only test failing is |
The main time is spend in CI overhead and board bring up, so running the tests in CI still takes forever. :-( |
In some cases the board bring-up times can usually be optimized because each board is run with a custom run script that usually introduces the delays. But some boards take a long time from power on to the u-boot prompt. This could also be optimized but someone would need to rebuild the boards boot firmware. I think the CI overhead is still what dominates though. |
Switching from tftp boot to USB boot via UUU for NXP based SoCs would probably save a fair bit. Newer SoCs also seem to have built-in board control and can e.g. be power cycled via USB with https://github.com/nxp-imx/bcu.
I think there are some suboptimal things going on there. For instance, the last CI had to wait an hour for a lock to become free. The lock was held by the next CI run. That seems fairly bizarre to me. On one hand CI runs release the lock in between all tests, on the other hand it can block a board for an hour? Thanks for the review! |
I've noticed that the ethernet drivers in U-Boot are generally quite poor so for a lot of boards it can take up to a half a minute or so to just load an image (although for sel4test the images are fairly small so maybe it doesn't matter). Given that the USB drivers would also be polling-based would it actually be any better? |
I don't know, I set the board in serial boot mode and use UUU to upload SPL+Uboot, I can share the UUU script I'm using if anyone is interested. |
This more than halves the time to run all tests.