Review Board 2.0.15


config, SMT: Enabling SMT for multi-threaded programs

Review Request #2849 - Created May 28, 2015 and updated

Information
Alexandru Dutu
gem5
default
Reviewers
Default
Changeset 10858:cc93e6609fc3
---------------------------
config, SMT: Enabling SMT for multi-threaded programs
This patch helps enabling SMT by adding a new argument to specify the number
of hardware threads.

Quick regressions passed for all ISAs.

Issue Summary

3 0 3 0
Review request changed
Updated (June 1, 2015, 7:07 a.m.)

Change Summary:

Resubmitting because of broken diffs.

Description:

~  

Changeset 10858:ea9cc1cc8ec4

  ~

Changeset 10858:cc93e6609fc3

   
   

config, SMT: Enabling SMT for multi-threaded programs

    This patch helps enabling SMT by adding a new argument to specify the number
    of hardware threads.

Diff:

Revision 2 (+36 -48)

Show changes

Posted (June 15, 2015, 12:28 p.m.)



  
configs/example/se.py (Diff revision 2)
 
 

This seems a bit smelly. Shouldn't you at least provide a warning if this happens? I'd almost consider it a fatal error.

  1. I don't see a good reason to provide a warning. Just because we are initializing the cpu object with a bogus process it does not mean that the process will start executing. Clone will make sure later on that the process is switched with a valid one and only then execution is started.

src/cpu/o3/cpu.cc (Diff revision 2)
 
 

I'd suggest making this a fatal error instead of a warning.

src/cpu/o3/cpu.cc (Diff revision 2)
 
 

Will this still be empty? Won't this just reuse an existing workload?

  1. Again, this will not start executing. Clone will make sure the right process will execute. Unfortunately, the CPU model constructor requires a workload to be assigned and passing a NULL will cause problems for other threads when the TLBs are initialize if I remember correctly.

Ship it!
Posted (June 17, 2015, 10:23 a.m.)

I just got an explanation that I'm happy with.