Eigentlich sollte es doch einen Master geben, an dem entwickelt wird und nicht viele Branches, die dann sowieso im Nirvana enden, d.h. nicht weiterentwickelt werden.
Aber vielleicht brauchen die Entwickler gerade eine Spielwiese, weil anscheinend einige Probleme existieren.
Selbstverständlich sollten irgendwann alle SF-Patches auch in den CFish-
Master überführt werden.
Dazu gehört zukünftig auch das 1024-Netz oder noch besser erlaubt man ein beliebiges Netz. Dies wäre jedenfalls machbar, soviel lässt sich definitiv sagen.
Zu deinem Link ist der ChessMan Kommentar zu ergänzen: "Also i made PEXT build (BMI2 without AVX2 code)."
Ich habe mir jedenfalls selbst ein Compile mit der CommandLine "make profile-build ARCH=x86-64-bmi2" gemacht, wonach diese Flags gesetzt waren (also BMI2 und AVX2 aktiv sein sollten):
debug: 'no'
sanitize: 'no'
optimize: 'yes'
arch: 'x86_64'
bits: '64'
kernel: 'MSYS_NT-10.0-19041'
os: 'Windows_NT'
prefetch: 'yes'
popcnt: 'yes'
pext: 'yes'
sse: 'yes'
mmx: 'no'
sse2: 'yes'
ssse3: 'yes'
sse41: 'yes'
avx: 'no'
avx2: 'yes'
avx512: 'no'
vnni: 'no'
neon: 'no'
native: 'no'
embed: 'no'
Flags:
CC: gcc
CFLAGS: -Wall -std=c11 -pedantic -Wextra -Wshadow -m64 -Wno-pedantic-ms-format -DNDEBUG -O3 -DIS_64BIT -msse3 -mpopcnt -DUSE_POPCNT -DUSE_PEXT -msse4 -mbmi2 -DUSE_AVX2 -mavx2 -DUSE_SSE41 -msse4.1 -DUSE_SSSE3 -mssse3 -DUSE_SSE2 -msse2 -msse -DUSE_SSE -DNUMA -DNNUE
LDFLAGS: -lm -m64 -Wl,--no-as-needed -lpthread
Zu Sparse:Siehe:
https://github.com/syzygy1/CfishCompiling Cfish
make target [ARCH=arch] [COMP=compiler] [COMPCC=gcc-4.8] [further options]
Further options:
sparse=yes/no Enable/disable NNUE sparse multiplication
Dies ist also eine Compiler Option.The sparse option selects between two different NNUE implementations. The option sparse=yes is likely superior (i.e. higher nps) for ARM-based CPUs, for Intel CPUs that do not support AVX2, and for AMD CPUs before Zen 3 (i.e. Ryzen 5000).
=> für meinen Intel Prozessor, welcher AVX2 unterstützt, also irrelevant.