Thanks a lot Mark for the super quick response. So I tried out the
suggested changes and my benchmark seems to be running fine. However, have
a couple of questions.

- quite a few of the delay parameters seem to be commented out. Dont we
have to set them as well ?
- The width parameters are independent with the pipeline right ?
- To model a 20 stage pipeline, I have set the dept to 4..

Thanks a lot for your help!

Regards,
Ankita

On Thu, Apr 12, 2012 at 1:21 PM, Mark Browning <mabrownin...@gmail.com>wrote:

> I just did this a few days ago.
>
> Below is a snippet of my config script (you don't even need to recompile!)
>  Not sure about the commented out forwarding paths. You might have been
> getting assert failures if you didn't increase the forwardComSize
> and backComSize, which are the size of the "buffers" holding the stages.
>
> Assuming each system.cpu is a O3CPU, and you want a straight up linear
> scaling of the default 5 stage pipeline. (where "depth" variable is really
> depth multiplier)
>
> for i in xrange(np):
>     system.cpu[i].workload = multiprocesses[i]
>      #main pipeline stages
>     system.cpu[i].fetchToDecodeDelay  = depth
>     system.cpu[i].decodeToRenameDelay = depth
>     system.cpu[i].renameToIEWDelay    = 2*depth
>     system.cpu[i].iewToCommitDelay    = depth
>
>     #forwarding paths
>     system.cpu[i].wbDepth              = depth
>     system.cpu[i].commitToDecodeDelay  = depth
>     #system.cpu[i].commitToFetchDelay  = depth
>      #system.cpu[i].commitToIEWDelay    = depth
>     #system.cpu[i].commitToRenameDelay = depth
>     #system.cpu[i].decodeToFetchDelay  = depth
>     #system.cpu[i].iewToDecodeDelay    = depth
>     #system.cpu[i].iewToFetchDelay     = depth
>      #system.cpu[i].iewToRenameDelay    = depth
>     #system.cpu[i].issueToExecuteDelay = depth
>     #system.cpu[i].renameToDecodeDelay = depth
>     #system.cpu[i].renameToFetchDelay  = depth
>     system.cpu[i].renameToROBDelay     = depth
>
>     system.cpu[i].forwardComSize       = 5*depth
>     system.cpu[i].backComSize          = 5*depth
>
>     #width
>     system.cpu[i].fetchWidth    = width
>     system.cpu[i].decodeWidth   = width
>     system.cpu[i].dispatchWidth = width
>     system.cpu[i].issueWidth    = width
>     system.cpu[i].wbWidth       = width
>     system.cpu[i].renameWidth   = width
>     system.cpu[i].commitWidth   = width
>     system.cpu[i].squashWidth   = width
>
> Good luck!
>
>
> On Thu, Apr 12, 2012 at 1:06 PM, Ankita (Garg) Goel 
> <gargank...@gmail.com>wrote:
>
>> Hi,
>>
>> I want to model deeper pipeline in X86 simulation, around 20-31 stages.
>> The ISCA tutorial slide mentioned that this could be achieved by adding
>> varying amounts of delay in between the existing 7 stages in O3CPU.py.
>> However, when I add some delays, the simulation aborts due to assert
>> failure. Has anyone tried to do this ? Or anyone has any ideas on how this
>> could be done ?
>>
>> Thanks a lot for your help !
>>
>> --
>> Regards,
>> Ankita
>> Graduate Student
>> Department of Computer Science
>> University of Texas at Austin
>>
>>
>>
>> _______________________________________________
>> gem5-users mailing list
>> gem5-users@gem5.org
>> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
>>
>
>
> _______________________________________________
> gem5-users mailing list
> gem5-users@gem5.org
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
>



-- 
Regards,
Ankita
Graduate Student
Department of Computer Science
University of Texas at Austin
_______________________________________________
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to