Skip to content

Add the CXX flag for only running rev tests with the test_ad#2630

Merged
rok-cesnovar merged 2 commits intodevelopfrom
cxx_flag_for_rev_only_tests
Dec 22, 2021
Merged

Add the CXX flag for only running rev tests with the test_ad#2630
rok-cesnovar merged 2 commits intodevelopfrom
cxx_flag_for_rev_only_tests

Conversation

@rok-cesnovar
Copy link
Copy Markdown
Member

Summary

This adds a CXX flag that can be used in Stan Math tests to not compile and run fwd & mix tests if the tests are using the test_ad utility.

I am primarily trying to add this so we can remove compiling & running fwd & mix tests with Windows and Rtools 3.5 (the tests that run with Github Actions). Particularly our mix tests are on the limit of what g++ 4.9.3 can handle, which is why we sometimes have to split tests files so that 4.9.3 can compile them.

I doubt anyone is using g++ 4.9.3 with fwd and mix. It is still used with Stan, but we only need rev tests to check compatibility there.

There is no Math issue for this PR. I can make one if needed.

Tests

This will decrease our testing with Windows Rtools 3.5 (g++ 4.9.3). Given that we using g++ 4.9.3 outside of the use in Stan is not really recommended, I think this should be fine.

Side Effects

/

Checklist

@stan-buildbot
Copy link
Copy Markdown
Contributor


Name Old Result New Result Ratio Performance change( 1 - new / old )
gp_pois_regr/gp_pois_regr.stan 3.56 3.62 0.98 -1.58% slower
low_dim_corr_gauss/low_dim_corr_gauss.stan 0.02 0.02 0.99 -0.75% slower
eight_schools/eight_schools.stan 0.09 0.09 0.96 -4.42% slower
gp_regr/gp_regr.stan 0.14 0.14 1.0 0.14% faster
irt_2pl/irt_2pl.stan 5.69 5.74 0.99 -0.75% slower
performance.compilation 93.67 91.13 1.03 2.71% faster
low_dim_gauss_mix_collapse/low_dim_gauss_mix_collapse.stan 8.05 8.05 1.0 0.03% faster
pkpd/one_comp_mm_elim_abs.stan 31.84 33.03 0.96 -3.76% slower
sir/sir.stan 118.96 121.22 0.98 -1.9% slower
gp_regr/gen_gp_data.stan 0.03 0.03 1.0 0.31% faster
low_dim_gauss_mix/low_dim_gauss_mix.stan 3.01 2.98 1.01 0.85% faster
pkpd/sim_one_comp_mm_elim_abs.stan 0.38 0.41 0.93 -8.06% slower
arK/arK.stan 2.08 2.09 1.0 -0.49% slower
arma/arma.stan 0.23 0.24 0.97 -3.16% slower
garch/garch.stan 0.58 0.59 0.98 -2.01% slower
Mean result: 0.985595282792

Jenkins Console Log
Blue Ocean
Commit hash: 90969fc


Machine information ProductName: Mac OS X ProductVersion: 10.11.6 BuildVersion: 15G22010

CPU:
Intel(R) Xeon(R) CPU E5-1680 v2 @ 3.00GHz

G++:
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 7.0.2 (clang-700.1.81)
Target: x86_64-apple-darwin15.6.0
Thread model: posix

Clang:
Apple LLVM version 7.0.2 (clang-700.1.81)
Target: x86_64-apple-darwin15.6.0
Thread model: posix

@rok-cesnovar
Copy link
Copy Markdown
Member Author

This is ready for review. It cuts about an hour from the Windows RTools 3.5 mix tests.

Copy link
Copy Markdown
Collaborator

@SteveBronder SteveBronder left a comment

Choose a reason for hiding this comment

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

lgtm! As long as it's only used for windows testing I think it's fine. Though I think once we bump up the compiler version we test on we may want to think about turning this back off

@rok-cesnovar
Copy link
Copy Markdown
Member Author

Yes, once we bump, this should go away!

@rok-cesnovar rok-cesnovar merged commit f90727d into develop Dec 22, 2021
@rok-cesnovar rok-cesnovar deleted the cxx_flag_for_rev_only_tests branch December 22, 2021 21: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.

3 participants