-
-
Notifications
You must be signed in to change notification settings - Fork 188
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
Add support for Windows ARM64 #3051
Conversation
Is there any downstream changes this is based on? it needs an entry in the STAN_CHANGES file but otherwise looks reasonable |
Unfortunately not that I could find. Also happy to have this is as 'experimental' and not explicitly advertised in the manual or similar until we have some actual CI for it |
Being able to use cmake would be nice if for no other reason than because it would let us use oneTBB's other improvements like this. Anyway, I think it's a pretty small set of people who actually have an arm64 Windows machine. As long as these changes don't actively break x86 I think they're totally fine |
Jenkins Console Log Machine informationNo LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.3 LTS Release: 20.04 Codename: focalCPU: G++: Clang: |
Summary
As mentioned in this cmdstan issue, R and RTools have released previews of their Windows ARM64 versions.
The TBB is the only part of our existing build system that breaks (across CmdStan, Stan, and Math), as far as I can find.
Tests
I've tested that CmdStan builds and runs models with
reduce_sum
andSTAN_THREADS=true
using the RTools ARM64 toolchain.I'm not sure if there's a way to add any CI or similar for this, since GH doesn't have windows arm64 runners yet.
Side Effects
N/A
Release notes
Added support for Windows ARM64 with RTools ARM64 toolchain
Checklist
Copyright holder: Andrew Johnson
The copyright holder is typically you or your assignee, such as a university or company. By submitting this pull request, the copyright holder is agreeing to the license the submitted work under the following licenses:
- Code: BSD 3-clause (https://opensource.org/licenses/BSD-3-Clause)
- Documentation: CC-BY 4.0 (https://creativecommons.org/licenses/by/4.0/)
the basic tests are passing
./runTests.py test/unit
)make test-headers
)make test-math-dependencies
)make doxygen
)make cpplint
)the code is written in idiomatic C++ and changes are documented in the doxygen
the new changes are tested