On 12/27/2022 2:48 AM, 李南松 wrote:
Hi Eliot Moss,

        Thanks for your reply.
        I am generating Checkpoint for SPEC2017. Do I need to regenerate my BBV 
file under N cpus system?
     There is a condition here that the simpoint_profile (BBV) cannot be generated 
when n > 1.
        $vim ./configs/example/fs.py +210
205         # Sanity check
206         if options.simpoint_profile:
207             if not ObjectList.is_noncaching_cpu(TestCPUClass):
208                 fatal("SimPoint generation should be done with atomic cpu")
209             if np > 1:
210                 fatal("SimPoint generation not supported with more than one 
CPUs")

        How should I generate my BBV file?

Clearly, with one cpu.  The BBV file simply says how many times
each block of code is executed within a given time window.  I
believe that if you take k simpoints, that implies k time windows.
So it's just gathering statistics.

Separately you run simulations that determine the amount of time
the blocks take and the BBV is then used to extrapolate the total
amount of time without running a detailed simulation of everything.

It is not clear to me that the methodology works with multiple CPUs,
but it's not something I've used or have deep knowledge of.  (A quick
glance on the web suggests that simpoints is a single-threaded technique.)

Apparently there are other methods people have researched for multi-threaded
applications.  The hard thing there is that the different threads interact,
even if only my their simultaneous impact on the memory system.  So performance
is hard to determined.

Hope this helps -- EM
_______________________________________________
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org

Reply via email to