Dear Respected Community,
In SE mode, if the user specifies a DRAM which its size is smaller than the application's needs, gem5 will be terminated during run-time with the following message "Out of memory, please increase size of physical memory.", because gem5 allocates physical pages in the dram without the ability to deallocate them later (if there is any need for that) in SE mode. That is not the case in FS mode because this is can be handled by the OS. I am working on this part (Enable pages deallocation in SE mode) now with considering single application simulation. I am using ARM. I started with the stack part to make sure it is allocated in an isolated region to avoid deallocating any part of it by mistake. Now my stack grows in the dram starting from "physmem.totalSize()" to "physmem.totalSize() - stack_max". Then, I put a simple deallocation mechanism (There isn't any reason to use this one, I was just thinking about a simple mechanism). In which, I will wait until 16MB pages to be allocated in the main memory then I will deallocate 4MB of those pages, after that, I will deallocate different 4MB pages whenever there is an 8MB data increase in the main memory. I tested the code with one of SPEC06 benchmarks "gamess" and it is working fine. However, when I tested it with another application "perlbench" in SPEC06, it didn't work and I found that TLB is asking for allocating pages with a strange virtual addresses (I didn't find this address range in the traces that I collected before using an unmodified version of gem5). I still need to check if the pages which I am going to deallocate have copies in the caches or not, but I guess this is not the reason why gem5 generates those wired addresses while running perlbench. I tried to debug this issue but I got lost. Please, let me know if I have mentioned something wrong or if I am missing something. Also, I appreciate if someone could help me with that issue by suggesting where I should look at or any other suggestions. Thank you Ahmed Abulila Electrical and Computer Engineering Department University of Wisconsin Madison _______________________________________________ gem5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/gem5-dev
