Skip to content

Conversation

@pauldreik
Copy link
Collaborator

@pauldreik pauldreik commented Dec 13, 2025

Our CI takes a long time. Part of it is because the tests take a long time. When working with the emulated aarch64 ci job, it timed out with the default 1500 seconds limit.

This PR introduces a cmake option SIMDUTF_FAST_TESTS which when set to on (default is off) adjusts the parameters of some tests to make them run with fewer iterations/smaller sizes so they finish faster. All the tests still run, just reduced. An example: the tests that use random data use fewer iterations.

Testing a release build locally on amd64, I get

  • SIMDUTF_FAST_TESTS=On: about 5 seconds test time (single threaded)
  • SIMDUTF_FAST_TESTS=Off: about 150 seconds test time (single threaded)

This also modifies ci jobs to run building and testing in parallel.

@pauldreik pauldreik marked this pull request as ready for review December 14, 2025 08:36
this is to make it possible to run testing for slow targets within
reasonable time.

it could also be used to cut down testing time in CI.

some of the extensive tests (those working with random data) are
mostly covered by fuzzing (see the fuzz/ directory in the root).
@pauldreik pauldreik force-pushed the run_fast_tests branch 2 times, most recently from 679408c to 6eca7e6 Compare December 14, 2025 12:55
@pauldreik
Copy link
Collaborator Author

@lemire this seems to work well now. total time for ci is much lower than before.

@lemire
Copy link
Member

lemire commented Dec 14, 2025

This also modifies ci jobs to run building and testing in parallel.

One sideeffect of increased parallelism is increased memory usage... which is why I typically err on the side of not using too much parallelism in CI.

But, clearly, it works currently, so my concern is not substantiated as of now.

Copy link
Member

@lemire lemire left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fantastic work.

@pauldreik
Copy link
Collaborator Author

This also modifies ci jobs to run building and testing in parallel.

One sideeffect of increased parallelism is increased memory usage... which is why I typically err on the side of not using too much parallelism in CI.

But, clearly, it works currently, so my concern is not substantiated as of now.

agree! I had the same reasoning.

@pauldreik pauldreik merged commit f7e5693 into master Dec 14, 2025
75 checks passed
@pauldreik pauldreik deleted the run_fast_tests branch December 14, 2025 18:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants