slime/research/Makefile

38 lines
1.5 KiB
Makefile

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