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
How to compile Stockfish on Windows 11 ARM, when using a MacBook Pro M1 MAX and Parallels Desktop? #4241
Comments
Try the new msys2 ARM64 support with Windows 11 ARM |
@ppigazzini Thanks I have done this: Installation: All done without problems. But what I need to do now? When I try: and when I try without make, then I get: A star (*) next to a name means that the command is disabled. job_spec [&] history [-c] [-d offset] [n] or history -anrw > |
It seems that Windows 11 ARM is able to run programs through x64 emulation, so try |
Just curious, is there a Windows equivalent of Rosetta 2? |
$ pacman -S make Packages (1) make-4.3-4 Total Installed Size: 1.48 MiB :: Proceed with installation? [Y/n] y But make help or help doesn't work. MINGW64 ~/Stockfish-master/src Config: Flags: Testing config sanity. If this fails, try 'make help' ... Step 1/4. Building instrumented executable ... CLANGARM64 ~/Stockfish-master/src Config: Flags: Testing config sanity. If this fails, try 'make help' ... Step 1/4. Building instrumented executable ... CLANGARM64 ~/Stockfish-master/src To compile stockfish, type: make target ARCH=arch [COMP=compiler] [COMPCXX=cxx] Supported targets: help > Display architecture details Supported archs: x86-64-vnni512 > x86 64-bit with vnni support 512bit wide Supported compilers: gcc > Gnu compiler (default) Simple examples. If you don't know what to do, you likely want to run: make -j build ARCH=x86-64 (A portable, slow compile for 64-bit systems) Advanced examples, for experienced users looking for performance: make help ARCH=x86-64-bmi2 Specify a supported architecture with the ARCH option for more details |
EDIT_000: I fixed the wrong command syntax: Alternative name for that compiler: |
With mingw64 or clangarm64? CLANGARM64 ~/Stockfish-master/src Config: Flags: Testing config sanity. If this fails, try 'make help' ... Step 1/4. Building instrumented executable ... MINGW64 ~/Stockfish-master/src Config: Flags: Testing config sanity. If this fails, try 'make help' ... Step 1/4. Building instrumented executable ... |
MINGW64 ~/Stockfish-master/src Config: Flags: Testing config sanity. If this fails, try 'make help' ... Step 1/4. Building instrumented executable ... It works: Config: Flags: Testing config sanity. If this fails, try 'make help' ... Step 1/4. Building instrumented executable ... Step 2/4. Running benchmark for pgo-build ...
|
success, it seems. See #4193 for your question. Needs a code contribution, which is likely only possible by somebody with some experience and with the hardware. |
I wonder if |
@Disservin I can try it, but what do I need to do? |
|
with
without
No speedup in this test |
these look very different benches (duration etc). |
okay I just realised looks like i copied wrong |
Now corrected, for me it seems to be definitely slower with the additional flag. |
It seems that
|
@vondele Step 2/4. Running benchmark for pgo-build ... Step 2/4. Running benchmark for pgo-build ... |
When I open Stockfish.exe and run bench: CXXFLAGS="-mcpu=apple-m1" make -j profile-build ARCH=apple-silicon COMP=clang CXX=clang++ make -j profile-build ARCH=apple-silicon COMP=clang CXX=clang++ |
If you are running in a Windows ARM VM on Mac you are better off running stockfish native under MacOS and then using ssh or something like inbetween.exe to connect to it from the VM. |
@ppigazzini I tried: Step 2/4. Running benchmark for pgo-build ... |
CXXFLAGS="-march=native" make -j profile-build ARCH=apple-silicon COMP=clang CXX=clang++ |
So if anyone is just looking for compiled binaries: That's the current git (which has the M1 dot product) + v15.1 release. Compiled with the steps here plus the suggested fix in #4379. If it's useful maybe they can go on the site? Parallels + Coherence + this works very well for ChessBase and friends on Apple Silicon macs. |
This is just a normal m1 compile no? This issue was that someone had a windows vm on a mac m1 and tried to compile Stockfish which didnt work. Compilation on a M1 works just fine. |
No, they're Windows on ARM binaries, e.g. to use inside a Parallels VM. I renamed the archive to make that clearer. |
Given #4638 I might as well provide an updated one. Generic ARMv8 and Apple Silicon compiles for Windows on ARM. |
I'll close this since it is not really something within Stockfish but something related to the user system and I think we got a successful compilation anyway. Should have been opened in the discussions anyway. |
Describe the issue
How to compile Stockfish on Windows 11 ARM, when using a MacBook Pro M1 MAX and Parallels Desktop?
When we will have the latest dev. version for Windows ARM?
https://abrok.eu/stockfish/
Expected behavior
It looks like I need to create a Stockfish.exe, which can use Apple MacBook ARM cores, to run Stockfish inside ChessBase 17 on Windows 11 ARM.
Steps to reproduce
Can someone try to compile on Windows 11 ARM or with Apples terminal?
Anything else?
No response
Operating system
Windows
Stockfish version
Stockfish 15
The text was updated successfully, but these errors were encountered: