50 lines
898 B
Makefile
50 lines
898 B
Makefile
CXX = g++
|
|
CXXFLAGS = -O2 -std=c++17 -pthread
|
|
|
|
TARGET = lab2
|
|
SRC = main.cpp
|
|
|
|
LOG = log.txt
|
|
PY = python3
|
|
|
|
all: $(TARGET)
|
|
|
|
$(TARGET): $(SRC)
|
|
$(CXX) $(CXXFLAGS) $< -o $@
|
|
|
|
# обычный запуск
|
|
run: $(TARGET)
|
|
./$(TARGET) 20000 4
|
|
|
|
# запуск с сохранением лога
|
|
log: $(TARGET)
|
|
./$(TARGET) 20000 4 > $(LOG)
|
|
|
|
# анализ лога (таблица + график)
|
|
analyze: log
|
|
$(PY) analyze_log.py $(LOG)
|
|
|
|
# быстрый полный цикл
|
|
bench: $(TARGET)
|
|
@echo "Running benchmark..."
|
|
./$(TARGET) 20000 0 > log_0.txt
|
|
./$(TARGET) 20000 2 > log_2.txt
|
|
./$(TARGET) 20000 4 > log_4.txt
|
|
./$(TARGET) 20000 8 > log_8.txt
|
|
|
|
# анализ конкретного лога
|
|
analyze0:
|
|
$(PY) analyze_log.py log_0.txt
|
|
|
|
analyze2:
|
|
$(PY) analyze_log.py log_2.txt
|
|
|
|
analyze4:
|
|
$(PY) analyze_log.py log_4.txt
|
|
|
|
analyze8:
|
|
$(PY) analyze_log.py log_8.txt
|
|
|
|
clean:
|
|
rm -f $(TARGET) *.txt
|