Closed Chess321 closed 7 months ago
Hi..i would not call it pointless or false these results..these where the best we could get ,even they are very slow! So any improvement in creating faster binary's for Apple are always welcome and will be appricated by many users!
Ipman.
You must apply this patch: https://github.com/official-stockfish/Stockfish/commit/d1e17989b51f220629e4e81a4bf413974f4b18e2
or manually remove this line CXXFLAGS += -fexperimental-new-pass-manager
from the makefile.
gcc / g++ works fine:
make -j profile-build COMP=gcc ARCH=apple-silicon
Default net: nn-13406b1dcbe0.nnue Downloading https://tests.stockfishchess.org/api/nn/nn-13406b1dcbe0.nnue
Config: debug: 'no' sanitize: 'none' optimize: 'yes' arch: 'arm64' bits: '64' kernel: 'Darwin' os: '' prefetch: 'yes' popcnt: 'yes' pext: 'no' sse: 'no' mmx: 'no' sse2: 'no' ssse3: 'no' sse41: 'no' avx2: 'no' avx512: 'no' vnni256: 'no' vnni512: 'no' neon: 'yes'
Flags: CXX: g++ CXXFLAGS: -Wall -Wcast-qual -fno-exceptions -std=c++17 -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto LDFLAGS: -m64 -mmacosx-version-min=10.14 -arch arm64 -lpthread -Wall -Wcast-qual -fno-exceptions -std=c++17 -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto
Testing config sanity. If this fails, try 'make help' ...
Step 1/4. Building instrumented executable ... /Applications/Xcode.app/Contents/Developer/usr/bin/make ARCH=apple-silicon COMP=gcc clang-profile-make /Applications/Xcode.app/Contents/Developer/usr/bin/make ARCH=apple-silicon COMP=gcc \ EXTRACXXFLAGS='-fprofile-instr-generate ' \ EXTRALDFLAGS=' -fprofile-instr-generate' \ all g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o benchmark.o benchmark.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o bitbase.o bitbase.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o bitboard.o bitboard.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o endgame.o endgame.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o evaluate.o evaluate.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o main.o main.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o material.o material.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o misc.o misc.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o movegen.o movegen.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o movepick.o movepick.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o pawns.o pawns.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o position.o position.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o psqt.o psqt.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o search.o search.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o thread.o thread.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o timeman.o timeman.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o tt.o tt.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o uci.o uci.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o ucioption.o ucioption.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o tune.o tune.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o tbprobe.o syzygy/tbprobe.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o evaluate_nnue.o nnue/evaluate_nnue.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o half_ka_v2_hm.o nnue/features/half_ka_v2_hm.cpp nnue/evaluate_nnue.cpp:264:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only. Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations] sprintf(&buffer[1], "%6.2f", cp); ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/stdio.h:180:1: note: 'sprintf' has been explicitly marked deprecated here __deprecated_msg("This function is provided for compatibility reasons only. Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.") ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:218:48: note: expanded from macro '__deprecated_msg'
^
position.cpp:132:7: warning: variable 'count' set but not used [-Wunused-but-set-variable] int count = 0; ^ 1 warning generated. 1 warning generated. g++ -o stockfish benchmark.o bitbase.o bitboard.o endgame.o evaluate.o main.o material.o misc.o movegen.o movepick.o pawns.o position.o psqt.o search.o thread.o timeman.o tt.o uci.o ucioption.o tune.o tbprobe.o evaluate_nnue.o half_ka_v2_hm.o -fprofile-instr-generate -m64 -mmacosx-version-min=10.14 -arch arm64 -lpthread -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto
Step 2/4. Running benchmark for pgo-build ... ./stockfish bench > /dev/null
Position: 1/47 (rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1)
Position: 2/47 (r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq - 0 10)
Position: 3/47 (8/2p5/3p4/KP5r/1R3p1k/8/4P1P1/8 w - - 0 11)
Position: 4/47 (4rrk1/pp1n3p/3q2pQ/2p1pb2/2PP4/2P3N1/P2B2PP/4RRK1 b - - 7 19)
Position: 5/47 (rq3rk1/ppp2ppp/1bnpN3/3N2B1/4P3/7P/PPPQ1PP1/2KR3R b - - 0 14)
Position: 6/47 (r1bq1r1k/1pp1n1pp/1p1p4/4p2Q/4PpP1/1BNP4/PPP2P1P/3R1RK1 b - g3 0 14)
Position: 7/47 (r3r1k1/2p2ppp/p1p1bn2/8/1q2P3/2NPQN2/PPP3PP/R4RK1 b - - 2 15)
Position: 8/47 (r1bbk1nr/pp3p1p/2n5/1N4p1/2Np1B2/8/PPP2PPP/2KR1B1R w kq - 0 13)
Position: 9/47 (r1bq1rk1/ppp1nppp/4n3/3p3Q/3P4/1BP1B3/PP1N2PP/R4RK1 w - - 1 16)
Position: 10/47 (4r1k1/r1q2ppp/ppp2n2/4P3/5Rb1/1N1BQ3/PPP3PP/R5K1 w - - 1 17)
Position: 11/47 (2rqkb1r/ppp2p2/2npb1p1/1N1Nn2p/2P1PP2/8/PP2B1PP/R1BQK2R b KQ - 0 11)
Position: 12/47 (r1bq1r1k/b1p1npp1/p2p3p/1p6/3PP3/1B2NN2/PP3PPP/R2Q1RK1 w - - 1 16)
Position: 13/47 (3r1rk1/p5pp/bpp1pp2/8/q1PP1P2/b3P3/P2NQRPP/1R2B1K1 b - - 6 22)
Position: 14/47 (r1q2rk1/2p1bppp/2Pp4/p6b/Q1PNp3/4B3/PP1R1PPP/2K4R w - - 2 18)
Position: 15/47 (4k2r/1pb2ppp/1p2p3/1R1p4/3P4/2r1PN2/P4PPP/1R4K1 b - - 3 22)
Position: 16/47 (3q2k1/pb3p1p/4pbp1/2r5/PpN2N2/1P2P2P/5PP1/Q2R2K1 b - - 4 26)
Position: 17/47 (6k1/6p1/6Pp/ppp5/3pn2P/1P3K2/1PP2P2/3N4 b - - 0 1)
Position: 18/47 (3b4/5kp1/1p1p1p1p/pP1PpP1P/P1P1P3/3KN3/8/8 w - - 0 1)
Position: 19/47 (2K5/p7/7P/5pR1/8/5k2/r7/8 w - - 4 3)
Position: 20/47 (8/6pk/1p6/8/PP3p1p/5P2/4KP1q/3Q4 w - - 0 1)
Position: 21/47 (7k/3p2pp/4q3/8/4Q3/5Kp1/P6b/8 w - - 0 1)
Position: 22/47 (8/2p5/8/2kPKp1p/2p4P/2P5/3P4/8 w - - 0 1)
Position: 23/47 (8/1p3pp1/7p/5P1P/2k3P1/8/2K2P2/8 w - - 0 1)
Position: 24/47 (8/pp2r1k1/2p1p3/3pP2p/1P1P1P1P/P5KR/8/8 w - - 0 1)
Position: 25/47 (8/3p4/p1bk3p/Pp6/1Kp1PpPp/2P2P1P/2P5/5B2 b - - 0 1)
Position: 26/47 (5k2/7R/4P2p/5K2/p1r2P1p/8/8/8 b - - 0 1)
Position: 27/47 (6k1/6p1/P6p/r1N5/5p2/7P/1b3PP1/4R1K1 w - - 0 1)
Position: 28/47 (1r3k2/4q3/2Pp3b/3Bp3/2Q2p2/1p1P2P1/1P2KP2/3N4 w - - 0 1)
Position: 29/47 (6k1/4pp1p/3p2p1/P1pPb3/R7/1r2P1PP/3B1P2/6K1 w - - 0 1)
Position: 30/47 (8/3p3B/5p2/5P2/p7/PP5b/k7/6K1 w - - 0 1)
Position: 31/47 (5rk1/q6p/2p3bR/1pPp1rP1/1P1Pp3/P3B1Q1/1K3P2/R7 w - - 93 90)
Position: 32/47 (4rrk1/1p1nq3/p7/2p1P1pp/3P2bp/3Q1Bn1/PPPB4/1K2R1NR w - - 40 21)
Position: 33/47 (r3k2r/3nnpbp/q2pp1p1/p7/Pp1PPPP1/4BNN1/1P5P/R2Q1RK1 w kq - 0 16)
Position: 34/47 (3Qb1k1/1r2ppb1/pN1n2q1/Pp1Pp1Pr/4P2p/4BP2/4B1R1/1R5K b - - 11 40)
Position: 35/47 (4k3/3q1r2/1N2r1b1/3ppN2/2nPP3/1B1R2n1/2R1Q3/3K4 w - - 5 1)
Position: 36/47 (8/8/8/8/5kp1/P7/8/1K1N4 w - - 0 1)
Position: 37/47 (8/8/8/5N2/8/p7/8/2NK3k w - - 0 1)
Position: 38/47 (8/3k4/8/8/8/4B3/4KB2/2B5 w - - 0 1)
Position: 39/47 (8/8/1P6/5pr1/8/4R3/7k/2K5 w - - 0 1)
Position: 40/47 (8/2p4P/8/kr6/6R1/8/8/1K6 w - - 0 1)
Position: 41/47 (8/8/3P3k/8/1p6/8/1P6/1K3n2 b - - 0 1)
Position: 42/47 (8/R7/2q5/8/6k1/8/1P5p/K6R w - - 0 124)
Position: 43/47 (6k1/3b3r/1p1p4/p1n2p2/1PPNpP1q/P3Q1p1/1R1RB1P1/5K2 b - - 0 1)
Position: 44/47 (r2r1n2/pp2bk2/2p1p2p/3q4/3PN1QP/2P3R1/P4PP1/5RK1 w - - 0 1)
Position: 45/47 (8/8/8/8/8/6k1/6p1/6K1 w - - 0 1)
Position: 46/47 (7k/7P/6K1/8/3B4/8/8/8 b - - 0 1)
Position: 47/47 (bb1n1rkr/ppp1Q1pp/3n1p2/3p4/3P4/6Pq/PPP1PP1P/BB1NNRKR w HFhf - 0 5)
=========================== Total time (ms) : 5615 Nodes searched : 6334068 Nodes/second : 1128061
Step 3/4. Building optimized executable ... /Applications/Xcode.app/Contents/Developer/usr/bin/make ARCH=apple-silicon COMP=gcc objclean /Applications/Xcode.app/Contents/Developer/usr/bin/make ARCH=apple-silicon COMP=gcc clang-profile-use xcrun llvm-profdata merge -output=stockfish.profdata *.profraw /Applications/Xcode.app/Contents/Developer/usr/bin/make ARCH=apple-silicon COMP=gcc \ EXTRACXXFLAGS='-fprofile-instr-use=stockfish.profdata' \ EXTRALDFLAGS='-fprofile-use ' \ all g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o benchmark.o benchmark.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o bitbase.o bitbase.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o bitboard.o bitboard.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o endgame.o endgame.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o evaluate.o evaluate.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o main.o main.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o material.o material.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o misc.o misc.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o movegen.o movegen.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o movepick.o movepick.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o pawns.o pawns.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o position.o position.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o psqt.o psqt.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o search.o search.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o thread.o thread.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o timeman.o timeman.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o tt.o tt.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o uci.o uci.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o ucioption.o ucioption.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o tune.o tune.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o tbprobe.o syzygy/tbprobe.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o evaluate_nnue.o nnue/evaluate_nnue.cpp g++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o half_ka_v2_hm.o nnue/features/half_ka_v2_hm.cpp position.cpp:132:7: warning: variable 'count' set but not used [-Wunused-but-set-variable] int count = 0; ^ nnue/evaluate_nnue.cpp:264:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only. Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations] sprintf(&buffer[1], "%6.2f", cp); ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/stdio.h:180:1: note: 'sprintf' has been explicitly marked deprecated here __deprecated_msg("This function is provided for compatibility reasons only. Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.") ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:218:48: note: expanded from macro '__deprecated_msg'
^
1 warning generated. 1 warning generated. g++ -o stockfish benchmark.o bitbase.o bitboard.o endgame.o evaluate.o main.o material.o misc.o movegen.o movepick.o pawns.o position.o psqt.o search.o thread.o timeman.o tt.o uci.o ucioption.o tune.o tbprobe.o evaluate_nnue.o half_ka_v2_hm.o -fprofile-use -m64 -mmacosx-version-min=10.14 -arch arm64 -lpthread -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto
Step 4/4. Deleting profile data ... /Applications/Xcode.app/Contents/Developer/usr/bin/make ARCH=apple-silicon COMP=gcc profileclean
You must apply this patch: d1e1798 or manually remove this line
CXXFLAGS += -fexperimental-new-pass-manager
from the makefile.
Thanks. I've done it with makefile.
make -j profile-build COMP=clang ARCH=apple-silicon
Default net: nn-13406b1dcbe0.nnue Already available.
Config: debug: 'no' sanitize: 'none' optimize: 'yes' arch: 'arm64' bits: '64' kernel: 'Darwin' os: '' prefetch: 'yes' popcnt: 'yes' pext: 'no' sse: 'no' mmx: 'no' sse2: 'no' ssse3: 'no' sse41: 'no' avx2: 'no' avx512: 'no' vnni256: 'no' vnni512: 'no' neon: 'yes'
Flags: CXX: clang++ CXXFLAGS: -Wall -Wcast-qual -fno-exceptions -std=c++17 -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto LDFLAGS: -m64 -mmacosx-version-min=10.14 -arch arm64 -lpthread -Wall -Wcast-qual -fno-exceptions -std=c++17 -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto
Testing config sanity. If this fails, try 'make help' ...
Step 1/4. Building instrumented executable ... /Applications/Xcode.app/Contents/Developer/usr/bin/make ARCH=apple-silicon COMP=clang clang-profile-make /Applications/Xcode.app/Contents/Developer/usr/bin/make ARCH=apple-silicon COMP=clang \ EXTRACXXFLAGS='-fprofile-instr-generate ' \ EXTRALDFLAGS=' -fprofile-instr-generate' \ all clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o benchmark.o benchmark.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o bitbase.o bitbase.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o bitboard.o bitboard.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o endgame.o endgame.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o evaluate.o evaluate.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o main.o main.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o material.o material.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o misc.o misc.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o movegen.o movegen.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o movepick.o movepick.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o pawns.o pawns.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o position.o position.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o psqt.o psqt.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o search.o search.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o thread.o thread.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o timeman.o timeman.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o tt.o tt.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o uci.o uci.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o ucioption.o ucioption.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o tune.o tune.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o tbprobe.o syzygy/tbprobe.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o evaluate_nnue.o nnue/evaluate_nnue.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o half_ka_v2_hm.o nnue/features/half_ka_v2_hm.cpp position.cpp:132:7: warning: variable 'count' set but not used [-Wunused-but-set-variable] 132 | int count = 0; | ^ nnue/evaluate_nnue.cpp:264:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only. Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations] 264 | sprintf(&buffer[1], "%6.2f", cp); | ^ /Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk/usr/include/stdio.h:180:1: note: 'sprintf' has been explicitly marked deprecated here 180 | deprecated_msg("This function is provided for compatibility reasons only. Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.") | ^ /Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk/usr/include/sys/cdefs.h:218:48: note: expanded from macro '__deprecated_msg' 218 | #define deprecated_msg(_msg) attribute((deprecated(_msg))) | ^ 1 warning generated. 1 warning generated. clang++ -o stockfish benchmark.o bitbase.o bitboard.o endgame.o evaluate.o main.o material.o misc.o movegen.o movepick.o pawns.o position.o psqt.o search.o thread.o timeman.o tt.o uci.o ucioption.o tune.o tbprobe.o evaluate_nnue.o half_ka_v2_hm.o -fprofile-instr-generate -m64 -mmacosx-version-min=10.14 -arch arm64 -lpthread -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto
Step 2/4. Running benchmark for pgo-build ... ./stockfish bench > /dev/null
Position: 1/47 (rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1)
Position: 2/47 (r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq - 0 10)
Position: 3/47 (8/2p5/3p4/KP5r/1R3p1k/8/4P1P1/8 w - - 0 11)
Position: 4/47 (4rrk1/pp1n3p/3q2pQ/2p1pb2/2PP4/2P3N1/P2B2PP/4RRK1 b - - 7 19)
Position: 5/47 (rq3rk1/ppp2ppp/1bnpN3/3N2B1/4P3/7P/PPPQ1PP1/2KR3R b - - 0 14)
Position: 6/47 (r1bq1r1k/1pp1n1pp/1p1p4/4p2Q/4PpP1/1BNP4/PPP2P1P/3R1RK1 b - g3 0 14)
Position: 7/47 (r3r1k1/2p2ppp/p1p1bn2/8/1q2P3/2NPQN2/PPP3PP/R4RK1 b - - 2 15)
Position: 8/47 (r1bbk1nr/pp3p1p/2n5/1N4p1/2Np1B2/8/PPP2PPP/2KR1B1R w kq - 0 13)
Position: 9/47 (r1bq1rk1/ppp1nppp/4n3/3p3Q/3P4/1BP1B3/PP1N2PP/R4RK1 w - - 1 16)
Position: 10/47 (4r1k1/r1q2ppp/ppp2n2/4P3/5Rb1/1N1BQ3/PPP3PP/R5K1 w - - 1 17)
Position: 11/47 (2rqkb1r/ppp2p2/2npb1p1/1N1Nn2p/2P1PP2/8/PP2B1PP/R1BQK2R b KQ - 0 11)
Position: 12/47 (r1bq1r1k/b1p1npp1/p2p3p/1p6/3PP3/1B2NN2/PP3PPP/R2Q1RK1 w - - 1 16)
Position: 13/47 (3r1rk1/p5pp/bpp1pp2/8/q1PP1P2/b3P3/P2NQRPP/1R2B1K1 b - - 6 22)
Position: 14/47 (r1q2rk1/2p1bppp/2Pp4/p6b/Q1PNp3/4B3/PP1R1PPP/2K4R w - - 2 18)
Position: 15/47 (4k2r/1pb2ppp/1p2p3/1R1p4/3P4/2r1PN2/P4PPP/1R4K1 b - - 3 22)
Position: 16/47 (3q2k1/pb3p1p/4pbp1/2r5/PpN2N2/1P2P2P/5PP1/Q2R2K1 b - - 4 26)
Position: 17/47 (6k1/6p1/6Pp/ppp5/3pn2P/1P3K2/1PP2P2/3N4 b - - 0 1)
Position: 18/47 (3b4/5kp1/1p1p1p1p/pP1PpP1P/P1P1P3/3KN3/8/8 w - - 0 1)
Position: 19/47 (2K5/p7/7P/5pR1/8/5k2/r7/8 w - - 4 3)
Position: 20/47 (8/6pk/1p6/8/PP3p1p/5P2/4KP1q/3Q4 w - - 0 1)
Position: 21/47 (7k/3p2pp/4q3/8/4Q3/5Kp1/P6b/8 w - - 0 1)
Position: 22/47 (8/2p5/8/2kPKp1p/2p4P/2P5/3P4/8 w - - 0 1)
Position: 23/47 (8/1p3pp1/7p/5P1P/2k3P1/8/2K2P2/8 w - - 0 1)
Position: 24/47 (8/pp2r1k1/2p1p3/3pP2p/1P1P1P1P/P5KR/8/8 w - - 0 1)
Position: 25/47 (8/3p4/p1bk3p/Pp6/1Kp1PpPp/2P2P1P/2P5/5B2 b - - 0 1)
Position: 26/47 (5k2/7R/4P2p/5K2/p1r2P1p/8/8/8 b - - 0 1)
Position: 27/47 (6k1/6p1/P6p/r1N5/5p2/7P/1b3PP1/4R1K1 w - - 0 1)
Position: 28/47 (1r3k2/4q3/2Pp3b/3Bp3/2Q2p2/1p1P2P1/1P2KP2/3N4 w - - 0 1)
Position: 29/47 (6k1/4pp1p/3p2p1/P1pPb3/R7/1r2P1PP/3B1P2/6K1 w - - 0 1)
Position: 30/47 (8/3p3B/5p2/5P2/p7/PP5b/k7/6K1 w - - 0 1)
Position: 31/47 (5rk1/q6p/2p3bR/1pPp1rP1/1P1Pp3/P3B1Q1/1K3P2/R7 w - - 93 90)
Position: 32/47 (4rrk1/1p1nq3/p7/2p1P1pp/3P2bp/3Q1Bn1/PPPB4/1K2R1NR w - - 40 21)
Position: 33/47 (r3k2r/3nnpbp/q2pp1p1/p7/Pp1PPPP1/4BNN1/1P5P/R2Q1RK1 w kq - 0 16)
Position: 34/47 (3Qb1k1/1r2ppb1/pN1n2q1/Pp1Pp1Pr/4P2p/4BP2/4B1R1/1R5K b - - 11 40)
Position: 35/47 (4k3/3q1r2/1N2r1b1/3ppN2/2nPP3/1B1R2n1/2R1Q3/3K4 w - - 5 1)
Position: 36/47 (8/8/8/8/5kp1/P7/8/1K1N4 w - - 0 1)
Position: 37/47 (8/8/8/5N2/8/p7/8/2NK3k w - - 0 1)
Position: 38/47 (8/3k4/8/8/8/4B3/4KB2/2B5 w - - 0 1)
Position: 39/47 (8/8/1P6/5pr1/8/4R3/7k/2K5 w - - 0 1)
Position: 40/47 (8/2p4P/8/kr6/6R1/8/8/1K6 w - - 0 1)
Position: 41/47 (8/8/3P3k/8/1p6/8/1P6/1K3n2 b - - 0 1)
Position: 42/47 (8/R7/2q5/8/6k1/8/1P5p/K6R w - - 0 124)
Position: 43/47 (6k1/3b3r/1p1p4/p1n2p2/1PPNpP1q/P3Q1p1/1R1RB1P1/5K2 b - - 0 1)
Position: 44/47 (r2r1n2/pp2bk2/2p1p2p/3q4/3PN1QP/2P3R1/P4PP1/5RK1 w - - 0 1)
Position: 45/47 (8/8/8/8/8/6k1/6p1/6K1 w - - 0 1)
Position: 46/47 (7k/7P/6K1/8/3B4/8/8/8 b - - 0 1)
Position: 47/47 (bb1n1rkr/ppp1Q1pp/3n1p2/3p4/3P4/6Pq/PPP1PP1P/BB1NNRKR w HFhf - 0 5)
=========================== Total time (ms) : 5550 Nodes searched : 6334068 Nodes/second : 1141273
Step 3/4. Building optimized executable ... /Applications/Xcode.app/Contents/Developer/usr/bin/make ARCH=apple-silicon COMP=clang objclean /Applications/Xcode.app/Contents/Developer/usr/bin/make ARCH=apple-silicon COMP=clang clang-profile-use xcrun llvm-profdata merge -output=stockfish.profdata *.profraw /Applications/Xcode.app/Contents/Developer/usr/bin/make ARCH=apple-silicon COMP=clang \ EXTRACXXFLAGS='-fprofile-instr-use=stockfish.profdata' \ EXTRALDFLAGS='-fprofile-use ' \ all clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o benchmark.o benchmark.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o bitbase.o bitbase.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o bitboard.o bitboard.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o endgame.o endgame.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o evaluate.o evaluate.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o main.o main.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o material.o material.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o misc.o misc.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o movegen.o movegen.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o movepick.o movepick.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o pawns.o pawns.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o position.o position.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o psqt.o psqt.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o search.o search.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o thread.o thread.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o timeman.o timeman.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o tt.o tt.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o uci.o uci.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o ucioption.o ucioption.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o tune.o tune.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o tbprobe.o syzygy/tbprobe.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o evaluate_nnue.o nnue/evaluate_nnue.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o half_ka_v2_hm.o nnue/features/half_ka_v2_hm.cpp position.cpp:132:7: warning: variable 'count' set but not used [-Wunused-but-set-variable] 132 | int count = 0; | ^ nnue/evaluate_nnue.cpp:264:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only. Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations] 264 | sprintf(&buffer[1], "%6.2f", cp); | ^ /Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk/usr/include/stdio.h:180:1: note: 'sprintf' has been explicitly marked deprecated here 180 | deprecated_msg("This function is provided for compatibility reasons only. Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.") | ^ /Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk/usr/include/sys/cdefs.h:218:48: note: expanded from macro '__deprecated_msg' 218 | #define deprecated_msg(_msg) attribute((deprecated(_msg))) | ^ 1 warning generated. 1 warning generated. clang++ -o stockfish benchmark.o bitbase.o bitboard.o endgame.o evaluate.o main.o material.o misc.o movegen.o movepick.o pawns.o position.o psqt.o search.o thread.o timeman.o tt.o uci.o ucioption.o tune.o tbprobe.o evaluate_nnue.o half_ka_v2_hm.o -fprofile-use -m64 -mmacosx-version-min=10.14 -arch arm64 -lpthread -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-use=stockfish.profdata -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto
Step 4/4. Deleting profile data ... /Applications/Xcode.app/Contents/Developer/usr/bin/make ARCH=apple-silicon COMP=clang profileclean
@Torom Any idea how I can get dotprod or arm_version: '8'?
dotprod: 'yes' arm_version: '8'
Stockfish 14.1 had no optimisation for dotprod yet.
After some tests, I can tell that clang is around 3.5% faster than gcc / g++ on macOS devices with M chip.
When compiling Stockfish on Windows I can use the "strip Stockfish.exe" command to reduce the exe size and make Stockfish slightly faster.
What can I use on macOS? strip Stockfish.exe or strip Stockfish.exec or strip Stockfish doesn't work.
strip stockfish
works the same for me on Linux.
strip stockfish
works the same for me on Linux.
macOS: strip stockfish
Stockfish 14.1: 47.810.488 Byte 47.738.280 Byte strip stockfish
Newest Stockfish: 70.178.952 Byte 70.178.952 Byte strip stockfish
Any idea why it is so tiny with Stockfish 14.1? and why is there no change when using the newest Stockfish?
Which size do you have before and after?
69.740.456 69.655.992
I'm no expert, but I suspect that's the reason why strip
only appears in the documentation for Windows. With unix like operating systems there just seems to be less unnecessary stuff in the file.
Edit: And the difference between SF 14.1 and the dev version is the smaller NNUE that was used back then.
make -j profile-build COMP=clang ARCH=apple-silicon
Any ideas how to improve this?
Stockfish 14.1 had no optimisation for dotprod yet.
How difficult would it be to do it?
To recap, to compile the older version of stockfish you need to modify the makefile or choose an older compiler. New arm support is another topic.
Describe the issue
make -j profile-build COMP=clang ARCH=apple-silicon
Default net: nn-13406b1dcbe0.nnue Downloading https://tests.stockfishchess.org/api/nn/nn-13406b1dcbe0.nnue
Config: debug: 'no' sanitize: 'none' optimize: 'yes' arch: 'arm64' bits: '64' kernel: 'Darwin' os: '' prefetch: 'yes' popcnt: 'yes' pext: 'no' sse: 'no' mmx: 'no' sse2: 'no' ssse3: 'no' sse41: 'no' avx2: 'no' avx512: 'no' vnni256: 'no' vnni512: 'no' neon: 'yes'
Flags: CXX: clang++ CXXFLAGS: -Wall -Wcast-qual -fno-exceptions -std=c++17 -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto LDFLAGS: -m64 -mmacosx-version-min=10.14 -arch arm64 -lpthread -Wall -Wcast-qual -fno-exceptions -std=c++17 -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto
Testing config sanity. If this fails, try 'make help' ...
Step 1/4. Building instrumented executable ... /Applications/Xcode.app/Contents/Developer/usr/bin/make ARCH=apple-silicon COMP=clang clang-profile-make /Applications/Xcode.app/Contents/Developer/usr/bin/make ARCH=apple-silicon COMP=clang \ EXTRACXXFLAGS='-fprofile-instr-generate ' \ EXTRALDFLAGS=' -fprofile-instr-generate' \ all clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o benchmark.o benchmark.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o bitbase.o bitbase.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o bitboard.o bitboard.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o endgame.o endgame.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o evaluate.o evaluate.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o main.o main.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o material.o material.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o misc.o misc.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o movegen.o movegen.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o movepick.o movepick.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o pawns.o pawns.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o position.o position.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o psqt.o psqt.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o search.o search.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o thread.o thread.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o timeman.o timeman.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o tt.o tt.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o uci.o uci.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o ucioption.o ucioption.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o tune.o tune.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o tbprobe.o syzygy/tbprobe.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o evaluate_nnue.o nnue/evaluate_nnue.cpp clang++ -Wall -Wcast-qual -fno-exceptions -std=c++17 -fprofile-instr-generate -pedantic -Wextra -Wshadow -m64 -mmacosx-version-min=10.14 -arch arm64 -DUSE_PTHREADS -DNDEBUG -O3 -mdynamic-no-pic -fexperimental-new-pass-manager -DIS_64BIT -DUSE_POPCNT -DUSE_NEON -flto -c -o half_ka_v2_hm.o nnue/features/half_ka_v2_hm.cpp clang++: error: unknown argument: '-fexperimental-new-pass-manager' clang++: error: unknown argument: '-fexperimental-new-pass-manager' clang++: error: unknown argument: '-fexperimental-new-pass-manager' clang++: error: unknown argument: '-fexperimental-new-pass-manager' clang++: error: unknown argument: '-fexperimental-new-pass-manager' make[2]: [benchmark.o] Error 1 make[2]: Waiting for unfinished jobs.... clang++: error: unknown argument: '-fexperimental-new-pass-manager' clang++: error: unknown argument: '-fexperimental-new-pass-manager' clang++: error: unknown argument: '-fexperimental-new-pass-manager' make[2]: [search.o] Error 1 clang++: error: unknown argument: '-fexperimental-new-pass-manager' clang++: error: unknown argument: '-fexperimental-new-pass-manager' clang++: error: unknown argument: '-fexperimental-new-pass-manager' clang++: error: unknown argument: '-fexperimental-new-pass-manager' clang++: error: unknown argument: '-fexperimental-new-pass-manager' make[2]: [ucioption.o] Error 1 make[2]: [uci.o] Error 1 make[2]: [psqt.o] Error 1 make[2]: [movegen.o] Error 1 make[2]: [material.o] Error 1 make[2]: [endgame.o] Error 1 make[2]: [tbprobe.o] Error 1 make[2]: [misc.o] Error 1 clang++: error: unknown argument: '-fexperimental-new-pass-manager' make[2]: [thread.o] Error 1 make[2]: [evaluate.o] Error 1 clang++: error: unknown argument: '-fexperimental-new-pass-manager' clang++: error: unknown argument: '-fexperimental-new-pass-manager' clang++: error: unknown argument: '-fexperimental-new-pass-manager' make[2]: [evaluate_nnue.o] Error 1 clang++: error: unknown argument: '-fexperimental-new-pass-manager' make[2]: [bitbase.o] Error 1 clang++: error: unknown argument: '-fexperimental-new-pass-manager' clang++: error: unknown argument: '-fexperimental-new-pass-manager' clang++: error: unknown argument: '-fexperimental-new-pass-manager' make[2]: [tune.o] Error 1 make[2]: [main.o] Error 1 clang++: error: unknown argument: '-fexperimental-new-pass-manager' make[2]: [bitboard.o] Error 1 make[2]: [tt.o] Error 1 make[2]: [half_ka_v2_hm.o] Error 1 make[2]: [pawns.o] Error 1 make[2]: [movepick.o] Error 1 make[2]: [timeman.o] Error 1 clang++: error: unknown argument: '-fexperimental-new-pass-manager' make[2]: [position.o] Error 1 make[1]: [clang-profile-make] Error 2 make: [profile-build] Error 2
Expected behavior
No errors.
Steps to reproduce
I've downloaded: Stockfish 14.1 code from: https://github.com/official-stockfish/Stockfish/releases
make -j profile-build COMP=clang ARCH=apple-silicon
Anything else?
I would like to do some bench 1024 10 26 default depth nnue for Ipmanchess. https://ipmanchess.yolasite.com/amd--intel-chess-bench-stockfish.php But I don't want to distort the rankings.
1. Problem: I could use Homebrew but when I use make -j profile-build COMP=clang ARCH=apple-silicon instead, every Stockfish compile is 2.3x times faster than Homebrew. Okay I could use Homebrew and let's say I get 10000 kn/s, then I could say: 10000 x 2.3 = 23000 kn/s. But it's still not exactly the same.
2. Problem looks like this: Config: debug: 'no' sanitize: 'none' optimize: 'yes' arch: 'arm64' bits: '64' kernel: 'Darwin' os: '' prefetch: 'yes' popcnt: 'yes' pext: 'no' sse: 'no' mmx: 'no' sse2: 'no' ssse3: 'no' sse41: 'no' avx2: 'no' avx512: 'no' vnni256: 'no' vnni512: 'no' neon: 'yes'
Instead of this: Config: debug: 'no' sanitize: 'none' optimize: 'yes' arch: 'arm64' bits: '64' kernel: 'Darwin' os: '' prefetch: 'yes' popcnt: 'yes' pext: 'no' sse: 'no' mmx: 'no' sse2: 'no' ssse3: 'no' sse41: 'no' avx2: 'no' avxvnni: 'no' avx512: 'no' vnni256: 'no' vnni512: 'no' neon: 'yes' dotprod: 'yes' arm_version: '8' target_windows: ''
Dotprod will increase the kn/s by 75.63% Does somebody know how big the speed up is from arm_version: '8' ?
Much more things are available than only: optimize, prefetch, popcnt, neon, dotprod, arm_version: '8' to speed up Stockfish a lot on ARM CPUs and Apple devices. Probably we can use those too?
Can someone, maybe just for fun, create a Stockfish 14.1 version which can be compiled with clang without these errors and which can use dotprod + arm_version: '8'?
https://ipmanchess.yolasite.com/amd--intel-chess-bench-stockfish.php The current Apple results with only Homebrew and without Dotprod and without arm_version: '8' are pointless and false in the current ranking list.
Operating system
MacOS
Stockfish version
Stockfish 14.1