On 01.02.2013 17:33, Nilay wrote: 

> On Fri, February 1, 2013 4:13
pm, Mitch Hayenga wrote:
> 
>> Hi all, My advisor is teaching our
graduate parallel computer architecture class this semester and he has a
ton of students (40+ I think). Given so many students, he is trying to
find additional ideas for those students who can't come up with project
ideas on their own. Often we try to make the student project results
useful beyond the class. So I was wondering if any of the gem5-devs knew
of places where they would like to see gem5 improvement, but the given
task is too time consuming given their other tasks/objectives. These
tasks should be able to be tied in with the learning that should occur
in a grad comp arch class. Here are some I've come up with: 1) SE TLB
latency modeling TLBs lookups in SE mode respond immediately. Modify
this behavior to properly model lookup latency. A simple class project
could be doing this in addition to trying to make/model TLB prefetchers,
but the main benefit would be SE TLB latency modeling. 2) Gem5 Classic
Coherence Modify the coherence protocol in gem5-classic to behave more
as you would expect a MOESI protocol to. I've posted myself on this
previously (
http://www.mail-archive.com/gem5-users@gem5.org/msg01021.html [1]). They
could also try to extend the protocol. 3) Extended prefetchers Add more
complicated/intelligent prefetchers to gem5. 4) Loop buffer
modeling/prediction in O3 Any other places where a minor issue exists,
you lack the time to fix it, and you think it could make a good parallel
computer architecture class project?
> 
> Some things from my todo list
--
> 
> 1. support for smt in x86 architecture
> 2. three level
coherence protocol in ruby
> 3. verifying coherence protocol / memory
model
> 4. inorder cpu for x86
> 5. better branch prediction / prefetch
algorithms.
> 
> --
> Nilay
> 
>
_______________________________________________
> gem5-dev mailing
list
> gem5-dev@gem5.org
> http://m5sim.org/mailman/listinfo/gem5-dev
[2]

1. HW Prefetching (different pre-fetchers, ones that work better,
handing priority through the entire memory system) 

2. SW prefetching,
currently we do a bad job of this in the pipeline (it can stall at the
head) and exposing the fact that it's a prefetch to the system 

3.
Temporal/Non-temporal loads/stores (e.g. stores that bypass layers of
the caching hierarchy) 

4. Support in classic memory system for
write-line-unique (e.g. if the L1 cache has outstanding requests for the
entire line, there is no need to do a RMW; same thing for an I/O device)


Thanks, 

Ali 

 

Links:
------
[1]
http://www.mail-archive.com/gem5-users@gem5.org/msg01021.html
[2]
http://m5sim.org/mailman/listinfo/gem5-dev
_______________________________________________
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to