| ##===- test/Programs/TEST.vtl.Makefile ---------------------*- Makefile -*-===## | |
| # | |
| # Makefile for getting performance metrics using Intel's VTune. | |
| # | |
| ##===----------------------------------------------------------------------===## | |
| TESTNAME = $* | |
| VTL := /opt/intel/vtune/bin/vtl | |
| # | |
| # Events: These will need to be modified for every different CPU that is used | |
| # (i.e. the Pentium 3 on Cypher has a different set of available events than | |
| # the Pentium 4 on Zion). | |
| # | |
| P4_EVENTS := "-ec en='2nd Level Cache Read Misses' en='2nd-Level Cache Read References'" | |
| P3_EVENTS := "-ec en='L2 Cache Request Misses (highly correlated)'" | |
| EVENTS := $(P4_EVENTS) | |
| # | |
| # Generate events for LLC | |
| # | |
| #$(PROGRAMS_TO_TEST:%=test.$(TEST).%): \ | |
| #test.$(TEST).%: Output/%.llc | |
| #@echo "=========================================" | |
| #@echo "Running '$(TEST)' test on '$(TESTNAME)' program" | |
| #$(VERB) $(VTL) activity $* -d 50 -c sampling -o $(EVENTS) -app $< | |
| #-$(VERB) $(VTL) run $* | |
| #-$(VERB) $(VTL) view > $@ | |
| #$(VERB) $(VTL) delete $* -f | |
| # | |
| # Generate events for CBE | |
| # | |
| $(PROGRAMS_TO_TEST:%=test.$(TEST).%): \ | |
| test.$(TEST).%: Output/%.cbe | |
| @echo "=========================================" | |
| @echo "Running '$(TEST)' test on '$(TESTNAME)' program" | |
| ifeq ($(RUN_OPTIONS),) | |
| $(VERB) cat $(STDIN_FILENAME) | $(VTL) activity $* -d 50 -c sampling -o $(EVENTS) -app $< | |
| else | |
| $(VERB) cat $(STDIN_FILENAME) | $(VTL) activity $* -d 50 -c sampling -o $(EVENTS) -app $<,"$(RUN_OPTIONS)" | |
| endif | |
| -$(VERB) $(VTL) run $* | |
| -$(VERB) $(VTL) view > $@ | |
| $(VERB) $(VTL) delete $* -f | |