[gem5-users] Re: Converting KVM-taken checkpoint to atomic-needed checkpoint
I have tried this option, the problem is for a simple microbenchmark, if I do not use KVM, the IPCs make no sense. I mean for the same configuration if change --restore-with-cpu with KVM or atomic, the simulation starts and end, but numbers make no sense. On Mon, Apr 12, 2021 at 9:42 PM Bobby Bruce wrote: > Hey Majid, > > The short answer is yes, this use-case should be supported. > > You can use the `--restore-with-cpu` option to restore to the Atomic CPU. > > Kind regards, > Bobby > -- > Dr. Bobby R. Bruce > Room 2235, > Kemper Hall, UC Davis > Davis, > CA, 95616 > > web: https://www.bobbybruce.net > > > On Fri, Apr 9, 2021 at 2:29 PM Majid Jalili via gem5-users < > gem5-users@gem5.org> wrote: > >> Hi, >> >> Is it practically possible to convert the KVM-taken checkpoint such that >> I can restore it with Atomic CPU? This is particularly important because I >> have to use KVM to take my checkpoints on an ARM machine and then transfer >> them to my X86 cluster to run the checkpoints. >> I cannot avoid KVM on ARM, because my simpoints are very long, and I >> cannot continue my simulation on ARM host because it is slow and not free. >> >> ___ >> gem5-users mailing list -- gem5-users@gem5.org >> To unsubscribe send an email to gem5-users-le...@gem5.org >> %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s > > ___ gem5-users mailing list -- gem5-users@gem5.org To unsubscribe send an email to gem5-users-le...@gem5.org %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
[gem5-users] ARM and opening a file
Hi, When I was running SPEC CPU 2017, in particular 505.mcf_r, I noticed that if gem5 should open a file, it will not make any progress. I dig into mcf code and found when the read_min function is called the simulation freezes. Then I started running a simple benchmark as follows, that just prints the content of a file: https://www.geeksforgeeks.org/c-program-print-contents-file/ For this example, I also run into the same problem. I tried X86 and everything works just fine Repo: I tried both dev and stable gcc: aarch64-linux-gnu-gcc-7 aarch64-linux-gnu-gcc-5 Any help is great! ___ gem5-users mailing list -- gem5-users@gem5.org To unsubscribe send an email to gem5-users-le...@gem5.org %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
[gem5-users] Running parallel version of a CPU benchmark on multiple cores
Hello Everyone, Is it possible to run a parallel version of a CPU benchmark like SPEC on multiple cores? For example, if I have a mesh of 9 CPU cores, can I launch 9 threads of the CPU benchmark, 1 thread on each core simultaneously? Thank you for the information in advance. John Smith ___ gem5-users mailing list -- gem5-users@gem5.org To unsubscribe send an email to gem5-users-le...@gem5.org %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
[gem5-users] Re: Referencing an upstream component in parameters
Hi Gabriel, I agree it's not intuitive and it's a bit awkward. Is there a reason for adopting that design? My guess is that it allows to > build the system top to bottom in the python scripts. > Haha! No, there's not an underlying reason for this. In fact, I would guess that there is a much better design which wouldn't require this awkward pattern. As an aside, I was recently re-writing some Ruby config scripts and got bitten by these circular dependencies as they require you to construct your system in a very strange way. Cheers, Jason On Wed, Apr 14, 2021 at 1:36 AM gabriel.busnot--- via gem5-users < gem5-users@gem5.org> wrote: > Hi Jason, > > Thanks for your reply, it should be an adequate solution, even if it looks > kind of awkward to me right now ;) > While I wanted the downstream controller (B) to have a reference to the > upstream (proxied) controller (A), I must actually do the opposite and have > (A) store a reference to (B). > Then, (A).init() will call (B).registerUpstream(this). > It does not feel natural to set this "(B) references (A)" relationship in > (A)'s python parameters but it is required not tho create a cycle in the > hierarchy. > > Looking at it again, it looks like, for instance, a RubyController > references a RubySystem that references the System in turn. > So the inclusion relationship in python parameters is the opposite of the > architectural inclusion relationship, if I can say so. > In other words, if C++ class (B) needs a reference to C++ class (A), > Python class (A) will typically hold a reference to Python class (B) and > (A).init() will call (B).registerA(this). > Is there a reason for adopting that design? My guess is that it allows to > build the system top to bottom in the python scripts. > > Cheers, > Gabriel > ___ > gem5-users mailing list -- gem5-users@gem5.org > To unsubscribe send an email to gem5-users-le...@gem5.org > %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s > ___ gem5-users mailing list -- gem5-users@gem5.org To unsubscribe send an email to gem5-users-le...@gem5.org %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
[gem5-users] Re: Referencing an upstream component in parameters
Hi Jason, Thanks for your reply, it should be an adequate solution, even if it looks kind of awkward to me right now ;) While I wanted the downstream controller (B) to have a reference to the upstream (proxied) controller (A), I must actually do the opposite and have (A) store a reference to (B). Then, (A).init() will call (B).registerUpstream(this). It does not feel natural to set this "(B) references (A)" relationship in (A)'s python parameters but it is required not tho create a cycle in the hierarchy. Looking at it again, it looks like, for instance, a RubyController references a RubySystem that references the System in turn. So the inclusion relationship in python parameters is the opposite of the architectural inclusion relationship, if I can say so. In other words, if C++ class (B) needs a reference to C++ class (A), Python class (A) will typically hold a reference to Python class (B) and (A).init() will call (B).registerA(this). Is there a reason for adopting that design? My guess is that it allows to build the system top to bottom in the python scripts. Cheers, Gabriel ___ gem5-users mailing list -- gem5-users@gem5.org To unsubscribe send an email to gem5-users-le...@gem5.org %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s