Description
I'm preparing a PR that will parallelize CLI tests (#14339) and in particular the via-ir equivalence will now get its own run. Comparing that between Ubuntu and macOS, I see that it runs 14x slower on the latter:
~via_ir_equivalence
int_ubu_cli
: 30 sec~via_ir_equivalence
int_osx_cli
: 7 min
That's even bigger slowdown than we usually see when building solc, which is "only" 3x.
It also stands out compared to soltest, where macOS is about 2x slower:
t_ubu_clang_soltest
: ~8 min (20 parallel runs, ~25 sec each)t_osx_soltest
: ~16 min
For via IR eqvivalence most of the execution time is taken by solc compiling contracts rather than evmone executing them or unrelated things like running clang. It's possible that it's not CI that's the culprit here but rather that solc is unusually slow on macOS.
The excessive slowdown does not seem to be caused exclusively by IR compilation. The legacy compilation tests are affected to a similar degree:
~compilation_tests
int_ubu_cli
: 30 sec~compilation_tests
int_osx_cli
: 5 min
Reproducing the problem
Here's how to run these particular tests locally:
test/cmdlineTests.sh ~via_ir_equivalence ~compilation_tests