From 340a7d6f58c9203a66fb26bc1b0fbd094253175e Mon Sep 17 00:00:00 2001 From: Matthew Naylor Date: Fri, 24 Mar 2023 09:17:52 +0000 Subject: [PATCH] Update sweep script --- apps/Common/app.mk | 13 +++++++++++-- scripts/sweep.py | 24 ++++++++++++++++-------- 2 files changed, 27 insertions(+), 10 deletions(-) diff --git a/apps/Common/app.mk b/apps/Common/app.mk index 85a5540..1c20071 100644 --- a/apps/Common/app.mk +++ b/apps/Common/app.mk @@ -12,13 +12,22 @@ CHERI_EN_COND = $(findstring 1, $(CHERI_EN)) USE_CLANG ?= $(shell echo -n UseClang \ | cpp -P -imacros $(CONFIG_H) - | xargs) +# Use RV32E +USE_RV32E ?= $(shell echo -n UseRV32E \ + | cpp -P -imacros $(CONFIG_H) - | xargs) + # RISC-V subset ifeq ($(CHERI_EN), 1) RV_ARCH = rv32imaxcheri RV_ABI = il32pc64 else - RV_ARCH = rv32ima - RV_ABI = ilp32 + ifeq ($(USE_RV32E), 1) + RV_ARCH = rv32ema + RV_ABI = ilp32e + else + RV_ARCH = rv32ima + RV_ABI = ilp32 + endif endif ifeq ($(USE_CLANG), 1) diff --git a/scripts/sweep.py b/scripts/sweep.py index 2895b07..8fb0fce 100755 --- a/scripts/sweep.py +++ b/scripts/sweep.py @@ -38,19 +38,27 @@ def printUsage(): ("SIMTRegFileSize", "256") , ("SIMTCapRegFileSize", "256") ] +config["DynHalfRF"] = [ + ("SIMTEnableRegFileScalarisation", "1") + , ("SIMTRegFilePreventScalarDetection", "1") + , ("SIMTUseLRUSpill", "1") + , ("SIMTRegFileSize", "1024") + ] +config["StaticHalfRF"] = [ + ("UseRV32E", "1") + ] # Combinations of configs that are of interest configCombos = [ - ["GCC"] - , ["GCC", "ScalarUnit", "StoreBuffer"] - , ["Clang", "RegFileScalarisation"] - , ["Clang", "ScalarUnit"] - , ["Clang", "StoreBuffer"] - , ["Clang", "ScalarUnit", "StoreBuffer"] - , ["CHERI"] + ["Clang"] , ["CHERI", "RegFileScalarisation"] - , ["CHERI", "StoreBuffer"] , ["CHERI", "DynRegSpill"] + , ["GCC", "DynHalfRF"] + , ["GCC", "StaticHalfRF"] + , ["CHERI", "StoreBuffer"] + , ["CHERI", "ScalarUnit"] + , ["Clang", "DynRegSpill", "StoreBuffer", "ScalarUnit"] + , ["CHERI", "DynRegSpill", "StoreBuffer", "ScalarUnit"] ] # Get directory containing script