blob: faabf1197ef827b45bca46afa07c56d23288b78e [file]
BUILD_DIR := build
BINARY := $(BUILD_DIR)/cpp/characterization
RESULTS := cpp/results
SCRIPTS := cpp/scripts
NPROC := $(shell sysctl -n hw.ncpu 2>/dev/null || nproc)
.PHONY: build run plot cms-point-query clean
# Build the C++ binary
build:
@mkdir -p $(BUILD_DIR)
cd $(BUILD_DIR) && cmake .. && make -j$(NPROC)
# Run CMS point query profile and generate plot
cms-point-query: build
$(BINARY) cms-point-query > $(RESULTS)/cms_point_query.tsv
uv run $(SCRIPTS)/plot_cms_point_query.py $(RESULTS)/cms_point_query.tsv cms_point_query_error.svg
# Just rebuild and run (no plot)
run: build
$(BINARY) cms-point-query > $(RESULTS)/cms_point_query.tsv
# Just regenerate the plot from existing TSV
plot:
uv run $(SCRIPTS)/plot_cms_point_query.py $(RESULTS)/cms_point_query.tsv cms_point_query_error.svg
clean:
rm -rf $(BUILD_DIR)