blob: 06bd88be23bfb82e4ba72fa3fce4e5ea23aa8831 [file] [log] [blame]
HIP_PATH ?= /opt/rocm/hip
HIPCC = $(HIP_PATH)/bin/hipcc
OPTS = -O3
# these are needed for m5ops
# TODO: Need some sort of explicit PATH? Read in?
GEM5_PATH ?= /nobackup/sinclair/gem5
CFLAGS += -I$(GEM5_PATH)/include -I/../graph_parser
LDFLAGS += -L$(GEM5_PATH)/util/m5/build/x86/out -lm5
BASEEXE = pagerank
VARIANT ?= DEFAULT
ifeq ($(VARIANT),DEFAULT)
EXECUTABLE = $(BASEEXE).gem5
CPPFILES += pagerank.cpp
else ifeq ($(VARIANT),SPMV)
EXECUTABLE = $(BASEEXE)_spmv.gem5
CPPFILES += pagerank_spmv.cpp
endif
BIN_DIR ?= ./bin
all: $(BIN_DIR)/$(EXECUTABLE)
$(BIN_DIR)/$(EXECUTABLE): $(CPPFILES) ../graph_parser/parse.cpp ../graph_parser/util.cpp $(BIN_DIR)
$(HIPCC) $(OPTS) --amdgpu-target=gfx801,gfx803 $(CXXFLAGS) ../graph_parser/parse.cpp ../graph_parser/util.cpp $(CPPFILES) -DGEM5_FUSION -o $(BIN_DIR)/$(EXECUTABLE) $(CFLAGS) $(LDFLAGS)
$(BIN_DIR):
mkdir -p $(BIN_DIR)
clean:
rm -rf $(BIN_DIR)
.PHONY: square clean