From 834699dc0f98e2ed1e391cf56fe92769b2e68c8e Mon Sep 17 00:00:00 2001 From: Carlos Gutierrez Date: Sun, 5 Oct 2025 02:39:40 +0000 Subject: [PATCH] Adding scripts, commands, and logging scaffolding --- logs/env.txt | 71 +------------------- logs/tinyml_kws_big_high_l21MB_d0.stderr.log | 2 +- scripts/00_env.sh | 2 +- scripts/11_hetero_big_little.py | 32 +++++++++ 4 files changed, 36 insertions(+), 71 deletions(-) create mode 100755 scripts/11_hetero_big_little.py diff --git a/logs/env.txt b/logs/env.txt index 4d175f2..8a6990b 100644 --- a/logs/env.txt +++ b/logs/env.txt @@ -1,77 +1,10 @@ -==== uname ==== -Linux cargdevgpu 6.8.0-60-generic #63-Ubuntu SMP PREEMPT_DYNAMIC Tue Apr 15 19:04:15 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux -==== date ==== -Sat Oct 4 09:40:18 PM UTC 2025 - -==== gem5 version ==== -n/a -==== uname ==== -Linux cargdevgpu 6.8.0-60-generic #63-Ubuntu SMP PREEMPT_DYNAMIC Tue Apr 15 19:04:15 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux - -==== date ==== -Sat Oct 4 09:56:17 PM UTC 2025 - -==== gem5 git ==== -n/a -==== uname ==== -Linux cargdevgpu 6.8.0-60-generic #63-Ubuntu SMP PREEMPT_DYNAMIC Tue Apr 15 19:04:15 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux - -==== date ==== -Sat Oct 4 10:26:30 PM UTC 2025 - -==== gem5 git ==== -n/a -==== uname ==== -Linux cargdevgpu 6.8.0-60-generic #63-Ubuntu SMP PREEMPT_DYNAMIC Tue Apr 15 19:04:15 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux - -==== date ==== -Sat Oct 4 10:26:47 PM UTC 2025 - -==== gem5 git ==== -n/a ==== env ==== ROOT=/home/carlos/projects/gem5 SRC=/home/carlos/projects/gem5/gem5src/gem5 GEM5_BIN=/home/carlos/projects/gem5/build/ARM/gem5.opt -CFG=/home/carlos/projects/gem5/scripts/hetero_big_little.py +CFG=/home/carlos/projects/gem5/scripts/11_hetero_big_little.py RUN=/home/carlos/projects/gem5/gem5-run OUT_DATA=/home/carlos/projects/gem5/gem5-data/SmartEdgeAI/results LOG_DATA=/home/carlos/projects/gem5/gem5-data/SmartEdgeAI/logs -Sun Oct 5 02:21:32 AM UTC 2025 -==== env ==== -ROOT=/home/carlos/projects/gem5 -SRC=/home/carlos/projects/gem5/gem5src/gem5 -GEM5_BIN=/home/carlos/projects/gem5/build/ARM/gem5.opt -CFG=/home/carlos/projects/gem5/scripts/hetero_big_little.py -RUN=/home/carlos/projects/gem5/gem5-run -OUT_DATA=/home/carlos/projects/gem5/gem5-data/SmartEdgeAI/results -LOG_DATA=/home/carlos/projects/gem5/gem5-data/SmartEdgeAI/logs -Sun Oct 5 02:24:17 AM UTC 2025 -==== env ==== -ROOT=/home/carlos/projects/gem5 -SRC=/home/carlos/projects/gem5/gem5src/gem5 -GEM5_BIN=/home/carlos/projects/gem5/build/ARM/gem5.opt -CFG=/home/carlos/projects/gem5/scripts/hetero_big_little.py -RUN=/home/carlos/projects/gem5/gem5-run -OUT_DATA=/home/carlos/projects/gem5/gem5-data/SmartEdgeAI/results -LOG_DATA=/home/carlos/projects/gem5/gem5-data/SmartEdgeAI/logs -Sun Oct 5 02:25:43 AM UTC 2025 -==== env ==== -ROOT=/home/carlos/projects/gem5 -SRC=/home/carlos/projects/gem5/gem5src/gem5 -GEM5_BIN=/home/carlos/projects/gem5/build/ARM/gem5.opt -CFG=/home/carlos/projects/gem5/scripts/hetero_big_little.py -RUN=/home/carlos/projects/gem5/gem5-run -OUT_DATA=/home/carlos/projects/gem5/gem5-data/SmartEdgeAI/results -LOG_DATA=/home/carlos/projects/gem5/gem5-data/SmartEdgeAI/logs -Sun Oct 5 02:25:43 AM UTC 2025 -==== env ==== -ROOT=/home/carlos/projects/gem5 -SRC=/home/carlos/projects/gem5/gem5src/gem5 -GEM5_BIN=/home/carlos/projects/gem5/build/ARM/gem5.opt -CFG=/home/carlos/projects/gem5/scripts/hetero_big_little.py -RUN=/home/carlos/projects/gem5/gem5-run -OUT_DATA=/home/carlos/projects/gem5/gem5-data/SmartEdgeAI/results -LOG_DATA=/home/carlos/projects/gem5/gem5-data/SmartEdgeAI/logs -Sun Oct 5 02:26:11 AM UTC 2025 +Sun Oct 5 02:36:33 AM UTC 2025 diff --git a/logs/tinyml_kws_big_high_l21MB_d0.stderr.log b/logs/tinyml_kws_big_high_l21MB_d0.stderr.log index ba93514..8b13789 100644 --- a/logs/tinyml_kws_big_high_l21MB_d0.stderr.log +++ b/logs/tinyml_kws_big_high_l21MB_d0.stderr.log @@ -1 +1 @@ -./scripts/10_run_one.sh: line 16: /home/carlos/projects/gem5/build/ARM/gem5.opt: No such file or directory + diff --git a/scripts/00_env.sh b/scripts/00_env.sh index 6e8a047..9545663 100755 --- a/scripts/00_env.sh +++ b/scripts/00_env.sh @@ -6,7 +6,7 @@ SRC="$ROOT/gem5src/gem5" IOT="$ROOT/iot" DATA="$ROOT/gem5-data" # persistent (symlink to /mnt/storage/…) RUN="$ROOT/gem5-run" # workloads -CFG="$ROOT/scripts/hetero_big_little.py" # gem5 config +CFG="$ROOT/scripts/11_hetero_big_little.py" # gem5 config # --- build target (ARM by default) --- GEM5_BIN="$ROOT/build/ARM/gem5.opt" diff --git a/scripts/11_hetero_big_little.py b/scripts/11_hetero_big_little.py new file mode 100755 index 0000000..2aac650 --- /dev/null +++ b/scripts/11_hetero_big_little.py @@ -0,0 +1,32 @@ +# Simple heterogeneous big.LITTLE configuration for SmartEdgeAI +import m5 +from m5.objects import * + +system = System() +system.clk_domain = SrcClockDomain(clock="1GHz", voltage_domain=VoltageDomain()) +system.mem_mode = "timing" +system.mem_ranges = [AddrRange("512MB")] + +# two LITTLE + one BIG +system.cpu = [TimingSimpleCPU(cpu_id=i) for i in range(3)] +system.membus = SystemXBar() + +for cpu in system.cpu: + cpu.icache_port = system.membus.slave + cpu.dcache_port = system.membus.slave + +system.system_port = system.membus.slave +system.mem_ctrl = DDR3_1600_8x8() +system.mem_ctrl.range = system.mem_ranges[0] +system.mem_ctrl.port = system.membus.master + +system.workload = SEWorkload.init_compatible("hello") +for cpu in system.cpu: + cpu.workload = system.workload + cpu.createThreads() + +root = Root(full_system=False, system=system) +m5.instantiate() +print("=== SmartEdgeAI big.LITTLE configuration loaded ===") +exit_event = m5.simulate() +print("Exit:", exit_event.getCause())