diff --git a/src/makefile b/src/makefile index 64d0344b..59fea148 100644 --- a/src/makefile +++ b/src/makefile @@ -4,7 +4,7 @@ EXE = berserk SRC = *.c pyrrhic/tbprobe.c CC = gcc -VERSION = 20221003 +VERSION = 10 MAIN_NETWORK = networks/berserk-c982d9682d4e.nn EVALFILE = $(MAIN_NETWORK) DEFS = -DVERSION=\"$(VERSION)\" -DEVALFILE=\"$(EVALFILE)\" -DNDEBUG @@ -66,13 +66,10 @@ pgo: clone-networks release: clone-networks $(RELEASE)-$(VERSION)-x64$(EXT) -march=core2 - strip $(EXE)-$(VERSION)-x64$(EXT) - $(RELEASE)-$(VERSION)-x64-avx2$(EXT) -march=core-avx2 - strip $(EXE)-$(VERSION)-x64-avx2$(EXT) - - $(RELEASE)-$(VERSION)-x64-avx2-pext$(EXT) -march=core-avx2 -DUSE_PEXT - strip $(EXE)-$(VERSION)-x64-avx2-pext$(EXT) + $(RELEASE)-$(VERSION)-x64-avx2-pext$(EXT) -march=core-avx2 -DUSE_PEXT + $(RELEASE)-$(VERSION)-x64-avx512$(EXT) -march=core-avx2 -mavx512f -mavx512bw -mavx512dq + $(RELEASE)-$(VERSION)-x64-avx512-pext$(EXT) -march=core-avx2 -mavx512f -mavx512bw -mavx512dq -DUSE_PEXT clone-networks: ifeq ($(EVALFILE), $(MAIN_NETWORK)) diff --git a/src/nn.c b/src/nn.c index df17e0b5..fead8778 100644 --- a/src/nn.c +++ b/src/nn.c @@ -39,7 +39,9 @@ int16_t INPUT_BIASES[N_HIDDEN] ALIGN; int16_t OUTPUT_WEIGHTS[2 * N_HIDDEN] ALIGN; int32_t OUTPUT_BIAS; -#if defined(__AVX2__) +#if defined(__AVX512F__) +#define UNROLL 512 +#elif defined(__AVX2__) #define UNROLL 256 #else #define UNROLL 128