Skip to content
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

Convert the arithmetic tests to pure Alan #966

Merged
merged 2 commits into from
Nov 20, 2024
Merged

Conversation

dfellis
Copy link
Member

@dfellis dfellis commented Nov 20, 2024

Not converting everything yet because:

  1. Maybe there's a mistake that requires a refactor. This PR is already large enough as it is if that's the case.
  2. I don't have a good story for doing the GPGPU tests, so I can't convert those yet, and those are the tests I ran into.
  3. I'm curious how much just this saves. :)

@dfellis dfellis self-assigned this Nov 20, 2024
@dfellis
Copy link
Member Author

dfellis commented Nov 20, 2024

Even just this small amount has drastically improved things.

From this:

Screenshot From 2024-11-19 19-28-36

To this:

Screenshot From 2024-11-19 20-43-38

That's a 48% reduction in runtime for Linux, 44% for Windows, 31% for MacOS, and 35% for ARM Linux. And that's only removing the arithmetic tests from the Rust test suite to the new Alan test suite (I will note that it was a kludge that was also intended to end-to-end test the compiler, but still).

That did reduce the number of tests in the Rust CI from 250 to 139, which is a 44.4% decrease on that side, implying that for my Linux desktop the testing bottleneck is almost 100% due to compilation time, while for my older hardware (the 2014 Mac mini and the Raspberry Pi) there is some impact from actually running the tests, as well.

@dfellis dfellis merged commit bbd9b59 into main Nov 20, 2024
13 checks passed
@dfellis dfellis deleted the convert-arithmetic-tests branch November 20, 2024 02:53
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.

1 participant