Hi, I just knew that Flexus models three kinds of memory consistency models: SC, TSO and RMO, and tried to run some SPLASH benchmarks using CMPFlexus. I found most IPCs of SC and RMO are very close (I tried to set "-uarch:spec_order" as "false", to avoid speculation). Is this normal? I thought there should be some gap between them. Or maybe I made some mistake?
How are these models implemented? I am going to read the code, but I would appreciate if someone can point out some information or literature related to the implementation in Flexus. Thanks.
