[gem5-dev] Change in gem5/gem5[develop]: sim: Make loading workloads to memory optional
Hoa Nguyen has uploaded this change for review. ( https://gem5-review.googlesource.com/c/public/gem5/+/49283 ) Change subject: sim: Make loading workloads to memory optional .. sim: Make loading workloads to memory optional There are use cases of gem5 that memory being an external component and does not exist until after gem5 being instantiated. Change-Id: I2fefad67072d7bab37ff6f732a76a5ba507cd602 Signed-off-by: Hoa Nguyen --- M src/sim/Workload.py M src/sim/kernel_workload.cc 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/sim/Workload.py b/src/sim/Workload.py index 62aa047..03238c0 100644 --- a/src/sim/Workload.py +++ b/src/sim/Workload.py @@ -54,6 +54,9 @@ "auto-calculated to be the most restrictive.") load_addr_offset = Param.UInt64(0, "Address to offset the kernel with") +load_workload_to_memory = Param.Bool(True, +"whether to load the workload to memory") + command_line = Param.String("a", "boot flags to pass to the kernel") class SEWorkloadMeta(type(Workload)): diff --git a/src/sim/kernel_workload.cc b/src/sim/kernel_workload.cc index c338b23..cdc081d 100644 --- a/src/sim/kernel_workload.cc +++ b/src/sim/kernel_workload.cc @@ -112,12 +112,14 @@ _start, _end, mapper(_start), mapper(_end)); } // Load program sections into memory -image.write(phys_mem); +if (params().load_workload_to_memory) +image.write(phys_mem); DPRINTF(Loader, "Kernel start = %#x\n", _start); DPRINTF(Loader, "Kernel end = %#x\n", _end); DPRINTF(Loader, "Kernel entry = %#x\n", kernelObj->entryPoint()); -DPRINTF(Loader, "Kernel loaded...\n"); +if (params().load_workload_to_memory) +DPRINTF(Loader, "Kernel loaded...\n"); } std::vector extras_addrs = params().extras_addrs; -- To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/49283 To unsubscribe, or for help writing mail filters, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: develop Gerrit-Change-Id: I2fefad67072d7bab37ff6f732a76a5ba507cd602 Gerrit-Change-Number: 49283 Gerrit-PatchSet: 1 Gerrit-Owner: Hoa Nguyen Gerrit-MessageType: newchange ___ gem5-dev mailing list -- gem5-dev@gem5.org To unsubscribe send an email to gem5-dev-le...@gem5.org %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
[gem5-dev] Change in gem5/gem5[develop]: mem-ruby: Add (RUSC, LocalHN_Eviction) transition
Daecheol You has uploaded this change for review. ( https://gem5-review.googlesource.com/c/public/gem5/+/49263 ) Change subject: mem-ruby: Add (RUSC, LocalHN_Eviction) transition .. mem-ruby: Add (RUSC, LocalHN_Eviction) transition During full system simulation on CHI, LocalHN_Eviction event on the RUSC state occured occasionally. Thus, the change adds RUSC state to the transition. Change-Id: Ibff382c38a092895bc03a4a64cf072ae752decf3 --- M src/mem/ruby/protocol/chi/CHI-cache-transitions.sm 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mem/ruby/protocol/chi/CHI-cache-transitions.sm b/src/mem/ruby/protocol/chi/CHI-cache-transitions.sm index 0d303fc..da944d5 100644 --- a/src/mem/ruby/protocol/chi/CHI-cache-transitions.sm +++ b/src/mem/ruby/protocol/chi/CHI-cache-transitions.sm @@ -587,7 +587,7 @@ // This could happen if enqueued the eviction when the line was busy // or couldn't handle it immediately due to no TBE available -transition({RU,RSC,RSD,RUSD,I}, {Local_Eviction, LocalHN_Eviction}) { +transition({RU,RSC,RSD,RUSC,RUSD,I}, {Local_Eviction, LocalHN_Eviction}) { Pop_ReplTriggerQueue; } transition(I, Global_Eviction) { -- To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/49263 To unsubscribe, or for help writing mail filters, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: develop Gerrit-Change-Id: Ibff382c38a092895bc03a4a64cf072ae752decf3 Gerrit-Change-Number: 49263 Gerrit-PatchSet: 1 Gerrit-Owner: Daecheol You Gerrit-MessageType: newchange ___ gem5-dev mailing list -- gem5-dev@gem5.org To unsubscribe send an email to gem5-dev-le...@gem5.org %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s