# Unified model Simulation ## Simulation config and build Build command and final config: ``` $ ./build_champsim.sh unified_model multi multi multi 1 ... ChampSim is successfully built Branch Predictor: unified_model L1D Prefetcher: multi L2C Prefetcher: multi LLC Prefetcher: multi LLC Replacement: ship Cores: 1 Binary: bin/unified_model-multi-multi-multi-ship-1core ``` `.ini` file: ``` kFeatures = 7 kHistoryBufSize = 16 kBpBufSize = 256 kPfBufSize = 30,10,6 kModelPath = "small_.script.pth" kBinarizeThreshold = 0.5 kPredictDegree = 3,3,3 kBpSwitchingThreshold = 0.3 kFlushOutputThreshold = 0.2 kIncludeRuleBasedPred = false ``` **The config in `knobs.cc` must be modified before building.** experiment file: Only run unified model, othres were commented out ``` # configurations BASE = --warmup_instructions=20000000 --simulation_instructions=100000000 NOPREF = --config=$(PYTHIA_HOME)/config/nopref.ini STRIDE = --l2c_prefetcher_types=stride --config=$(PYTHIA_HOME)/config/stride.ini SPP_DEV2 = --l2c_prefetcher_types=spp_dev2 --config=$(PYTHIA_HOME)/config/spp_dev2.ini MLOP = --l2c_prefetcher_types=mlop --config=$(PYTHIA_HOME)/config/mlop.ini BINGO = --l2c_prefetcher_types=bingo --config=$(PYTHIA_HOME)/config/bingo.ini DSPATCH = --l2c_prefetcher_types=dspatch --config=$(PYTHIA_HOME)/config/dspatch.ini SPP_PPF_DEV = --l2c_prefetcher_types=spp_ppf_dev --config=$(PYTHIA_HOME)/config/spp_ppf_dev.ini PYTHIA = --l2c_prefetcher_types=scooby --config=$(PYTHIA_HOME)/config/pythia.ini UNIFIED = --l1d_prefetcher_types=unified_l1d --l2c_prefetcher_types=unified_l2c --llc_prefetcher_types=unified_llc --config=$(PYTHIA_HOME)/config/unified_model.ini #nopref $(BASE) $(NOPREF) #spp $(BASE) $(SPP_DEV2) #bingo $(BASE) $(BINGO) #mlop $(BASE) $(MLOP) #pythia $(BASE) $(PYTHIA) unified $(BASE) $(UNIFIED) ``` Since the simulation is too slow, `warmup_instructions` and `simulation_instructions` is changed to 1000000 and 5000000 respectively. ## `small_` model run with command ``` $ ./parallel_sim.sh -b build/bin/unified_model-multi-multi-multi-ship-1core -t spec06_test.tlist -e experiments/google.exp -o small -j 8 ```