> On Feb. 25, 2015, 4:32 p.m., Steve Reinhardt wrote:
> > Took me longer to review this just because I'm not sure what to think of 
> > it.  It's not pretty, but I don't have better ideas, so it's hard to object.
> > 
> > One thing that bothers me is that, while it's noble to try and generalize 
> > things, despite the generic-sounding "--external-memory-system" switch, 
> > many of the low-level details seem very sst-specific (like 
> > 'port_type="sst"' as an obvious one).  Would it be more appropriate just to 
> > call the option "--sst-memory"?
> > 
> > Also, the ExternalCache thing looks like it should be a subclass, even 
> > though it's just a function.  I can see how the function is more 
> > convenient, but making it a subclass would allow some better encapsulation 
> > of the cpu_side __getattr__/__setattr__ hack.
> > 
> > These are just general thoughts though... I'm very interested in others' 
> > input.

There is some truth to this complaint.  I think there is a little room for 
improvement, though.


> On Feb. 25, 2015, 4:32 p.m., Steve Reinhardt wrote:
> > configs/common/CacheConfig.py, line 130
> > <http://reviews.gem5.org/r/2668/diff/1/?file=43775#file43775line130>
> >
> >     I assume this naming is also specific to sst

Not here.

The naming just has to agree with the configuration "on the other side", which 
in this case is the ext/sst/tests/test6_arm_4c.py in this patchset.  However as 
long as any other simulator we hook up with is cool with the same naming, it 
doesn't need to be changed.


> On Feb. 25, 2015, 4:32 p.m., Steve Reinhardt wrote:
> > configs/common/CacheConfig.py, line 50
> > <http://reviews.gem5.org/r/2668/diff/1/?file=43775#file43775line50>
> >
> >     This seems obviously specific to sst here

Correct that port_type="sst" is SST specific because the 
ext/sst/Ext{Master,Slave} code registers a handler for handler_name "sst".  
Perhaps --external-memory-system could take a string argument that could be 
stuck here?  We'd use --external-memory-system="sst" on the command line.


> On Feb. 25, 2015, 4:32 p.m., Steve Reinhardt wrote:
> > src/mem/ExternalSlave.py, line 57
> > <http://reviews.gem5.org/r/2668/diff/1/?file=43782#file43782line57>
> >
> >     To me, this clearly straddles the line between "clever" and 
> > "horrifying" :).  If nothing else, it would be nice to put these in an 
> > ExternalCache subclass.

Clever/Horrifying... Yes. :)

My concern here is that creating a new class doesn't seem to solve the problem. 
 As best I can tell, you just end up moving this unsightly hack to the new 
class instead.  But the value of not having to create new conditional 
statements to set either "port" (for external memory) or "cpu_side" (for gem5's 
internal caches) seems worth this bit of nastiness.


- Curtis


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviews.gem5.org/r/2668/#review5914
-----------------------------------------------------------


On Feb. 20, 2015, 6:47 p.m., Curtis Dunham wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviews.gem5.org/r/2668/
> -----------------------------------------------------------
> 
> (Updated Feb. 20, 2015, 6:47 p.m.)
> 
> 
> Review request for Default.
> 
> 
> Repository: gem5
> 
> 
> Description
> -------
> 
> Changeset 10709:a3b771cd744c
> ---------------------------
> config: Support full-system with SST's memory system
> 
> This patch adds an example configuration in ext/sst/tests/ that allows
> an SST/gem5 instance to simulate a 4-core AArch64 system with SST's
> memHierarchy components providing all the caches and memories.
> 
> 
> Diffs
> -----
> 
>   configs/common/CacheConfig.py c6cb94a14fea4c59780d73d1623d7031bcede6af 
>   configs/common/FSConfig.py c6cb94a14fea4c59780d73d1623d7031bcede6af 
>   configs/common/MemConfig.py c6cb94a14fea4c59780d73d1623d7031bcede6af 
>   configs/common/Options.py c6cb94a14fea4c59780d73d1623d7031bcede6af 
>   configs/example/fs.py c6cb94a14fea4c59780d73d1623d7031bcede6af 
>   ext/sst/tests/test6_arm_4c.py PRE-CREATION 
>   src/dev/arm/RealView.py c6cb94a14fea4c59780d73d1623d7031bcede6af 
>   src/mem/ExternalSlave.py c6cb94a14fea4c59780d73d1623d7031bcede6af 
> 
> Diff: http://reviews.gem5.org/r/2668/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Curtis Dunham
> 
>

_______________________________________________
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to