research: preserve solver experiments and reproducible benchmarks

This commit is contained in:
Yaossg 2026-10-11 12:28:02 +08:00
parent 12e4266950
commit e93bc20b0a
85 changed files with 518443 additions and 0 deletions

38
research/Makefile Normal file
View file

@ -0,0 +1,38 @@
CXX ?= g++
NVCC ?= nvcc
CXXFLAGS ?= -O3 -std=c++17 -march=native -pthread -Wall -Wextra -Wpedantic
NVCCFLAGS ?= -O3 -std=c++17
CORE_HEADERS := slime_solver_core.hpp ../include/slime/solver_core.hpp
.PHONY: all clean test
all: slime_pattern_cpp slime_pattern_cuda slime_position_cuda slime_position_residue_cuda slime_bruteforce_cpp_bench slime_bruteforce_cuda_bench
slime_pattern_cpp: slime_pattern_cpp.cpp $(CORE_HEADERS)
$(CXX) $(CXXFLAGS) -o $@ slime_pattern_cpp.cpp
slime_pattern_cuda: slime_pattern_cuda.cu $(CORE_HEADERS)
$(NVCC) $(NVCCFLAGS) -o $@ slime_pattern_cuda.cu
slime_position_cuda: slime_position_cuda.cu $(CORE_HEADERS)
$(NVCC) $(NVCCFLAGS) -o $@ slime_position_cuda.cu
slime_position_residue_cuda: slime_position_residue_cuda.cu $(CORE_HEADERS)
$(NVCC) $(NVCCFLAGS) -o $@ slime_position_residue_cuda.cu
slime_bruteforce_cpp_bench: slime_bruteforce_cpp_bench.cpp $(CORE_HEADERS)
$(CXX) $(CXXFLAGS) -o $@ slime_bruteforce_cpp_bench.cpp
slime_bruteforce_cuda_bench: slime_bruteforce_cuda_bench.cu $(CORE_HEADERS)
$(NVCC) $(NVCCFLAGS) -o $@ slime_bruteforce_cuda_bench.cu
test: slime_pattern_cpp
python3 -m unittest discover -s . -p 'test_*.py'
./slime_pattern_cpp verify --seed 61692151016558 --x 51069 --z 419124 -n 5
./slime_pattern_cpp roots --x 51069 --z 419124 -n 5 --bits 24
./slime_pattern_cpp upper --lower35 16420645998 --x 51069 --z 419124 -n 5
clean:
rm -f slime_pattern_cpp slime_pattern_cuda slime_position_cuda slime_position_residue_cuda slime_bruteforce_cpp_bench slime_bruteforce_cuda_bench