41 lines
1.2 KiB
Makefile
41 lines
1.2 KiB
Makefile
CXX ?= g++
|
|
NVCC ?= nvcc
|
|
CXXFLAGS ?= -O3 -std=c++17
|
|
NVCCFLAGS ?= -O3 -std=c++17
|
|
|
|
# Keep the original default build compatible; use `make bench` for the current CLI.
|
|
.PHONY: all legacy bench research show tools test test-gpu clean help
|
|
all: legacy
|
|
legacy: slime slime-cuda
|
|
slime: slime.cpp
|
|
$(CXX) $(CXXFLAGS) $< -o $@
|
|
slime-cuda: slime.cu
|
|
$(NVCC) $(NVCCFLAGS) $< -o $@
|
|
bench:
|
|
$(MAKE) -C bench
|
|
research:
|
|
$(MAKE) -C research
|
|
show:
|
|
$(MAKE) -C show
|
|
tools:
|
|
$(MAKE) -C tools
|
|
test:
|
|
$(MAKE) -C bench test
|
|
test-gpu:
|
|
$(MAKE) -C bench test-gpu
|
|
clean:
|
|
rm -f slime slime-cuda sliming
|
|
$(MAKE) -C bench clean
|
|
$(MAKE) -C research clean
|
|
$(MAKE) -C codex clean
|
|
$(MAKE) -C show clean
|
|
$(MAKE) -C tools clean
|
|
help:
|
|
@echo 'make bench Build the current CUDA benchmark CLI'
|
|
@echo 'make test Run CLI host-side checks (nvcc required, GPU not required)'
|
|
@echo 'make test-gpu Run CLI GPU integration checks'
|
|
@echo 'make legacy Build the original CPU/CUDA brute-force programs (default)'
|
|
@echo 'make research Build research prototypes'
|
|
@echo 'make show Build teaching examples'
|
|
@echo 'make tools Build the single-chunk checker'
|
|
@echo 'make clean Remove compiled outputs; retain reports and datasets'
|