ruby: Size the MI_example directory to cover all phys mem
Review Request #3578 - Created July 22, 2016 and discarded
| Information | |
|---|---|
| Andreas Sandberg | |
| gem5 | |
| default | |
| Reviewers | |
| Default | |
Changeset 11576:653c0ded0b9f --------------------------- ruby: Size the MI_example directory to cover all phys mem The directories in Ruby currently assume that memory starts at zero and spans to the total memory size. This is not true for a lot of systems. As a workaround, make the directory cover all memory from 0 to the end of the last physical memory in the memory map. Change-Id: I350f4076c46a603a85df317ebbb341dd426feb7d Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Reviewed-by: Curtis Dunham <curtis.dunham@arm.com>
Note to reviewers: I don't claim to know what I'm doing here. This is probably not the right way of doing it, but it seems to work. Better solutions are very welcome.
This seems like it's OK. The only problem that may crop up is that the DirectoryMemory pre-populates an entry for every block in physical memory (as configured here). So, if the max physical memory is high, you may run out of memory on the host system. Either way, host-system memory will be wasted if there are gaps in the address space with this change.
What does the physical memory layout for ARM look like?
Also, it would be great if you made these changes to all of the protocols, not just MI_example (which shouldn't be used for performance numbers!).
