Hi all, I came to the point where I'll have to add some new instructions to gem5. Something like load a number of bytes and process. I have some "high-level" questions that I'd like to ask for more experienced users, so that I don't find myself in a dead-end later on.
1 - First, pseudo-instructions vs ISA instructions. I read that pseudo instructions are not very accurate since they are not "pushed" in the actual core pipeline. They are more suitable for functionality, rather than latency modeling, etc. Since I'm looking for accurate modeling, I guess implementing a instruction as those in the ISA is the (harder, but accurate) way. Is this assumption correct? If that is the case, I guess the way to learn how to do that is to check/"copy" how other instructions are implemented, right? 2 - It took me a fair amount of time to make the gem5 setup work with my application, and in the end, I had to use KVM to fast-forward and take checkpoints, otherwise simulation time would be impractical. That said: is the use of a custom instruction with gem5+KVM a problem? The custom instruction won't be in the host hardware to be used by KVM... How do people generally handle the use of KVM while having a custom instruction? In terms of KVM support (and back to question 1), does it make any difference if I go with pseudo-instruction vs. "extending" the ISA? I'm targeting aarch64, in a full-system simulation. PS.: Having gem5 101 links back on would be very helpful! Thank you in advance, Pedro. _______________________________________________ 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