Hi Andreas,

> Thanks. I really do not understand the return queue argument. Why on earth
> would you need such a large return queue? Surely the agent making the
> requests (the GPU in this case) should have allocated space for the
> response, no?
>

Good question. I believe that buffer is just to get the appropriate overall
minimum latency for memory accesses (i.e. GPGPU-Sim does some level of
functional controller modeling, and the buffer is just for timing). If
there a way to add arbitrary latency to the DRAMCtrl, it would be nice to
aim for no-load latency of roughly 100ns (from when the controller receives
the access to when a response is returned to the Ruby network). Also, if I
have a chance to test out Nilay's patch, I could tune on this setting.

Concerning the configuration, what is the assumed clock speed (tCK), and
> is it operated as a x16 or x32 part? Is the burst length implicit in your
> configuration (or is 8 the default)?
>

The memory modeled in GPGPU-Sim is x32 based on the addressing scheme.
That's where I'd start the mode.

In GDDR5, the core frequency is 1/4 of command frequency (and 1/2 in
GDDR3?). A common channel frequency is 4GHz, resulting in effective channel
bandwidth of 32GT/s. So, a starting baseline of tCK = 1ns should be
sufficient. Does that sound right?

I believe burst length is typically 8 and can be much longer. In practice,
this depend highly on address hashing/interleaving across many controllers
in various different GPUs, so 8 should be a sufficient baseline.


  Joel



On 10/13/14, 10:28 PM, "Joel Hestness via gem5-dev" <gem5-dev@gem5.org>
> wrote:
>
> >Hi Andreas,
> >  Sure thing. We try to closely replicate the parameters used in GPGPU-Sim
> >v3.2.2, which are specified in the Hynix datasheet here:
> >http://www.hynix.com/datasheet/pdf/graphics/H5GQ1H24AFR(Rev1.0).pdf.
> >
> >  Here are relevant excerpts from the GPGPU-Sim GTX480 config file
> >(attached):
> >
> ># The DRAM return queue and the scheduler queue together should provide
> >buffer
> ># to sustain the memory level parallelism to tolerate DRAM latency
> ># To allow 100% DRAM utility, there should at least be enough buffer to
> >sustain
> ># the minimum DRAM latency (100 core cycles).  I.e.
> >#   Total buffer space required = 100 x 924MHz / 700MHz = 132
> >-gpgpu_frfcfs_dram_sched_queue_size 16
> >-gpgpu_dram_return_queue_size 116
> >
> >-dram_data_command_freq_ratio 4  # GDDR5 is QDR
> >-gpgpu_dram_timing_opt "nbk=16:CCD=2:RRD=6:RCD=12:RAS=28:RP=12:RC=40:
> >                        CL=12:WL=4:CDLR=5:WR=12:nbkgrp=4:CCDL=3:RTPL=2"
> >
> >  If anything needs clarification, I'm happy to help sort it out. Just let
> >me know.
> >
> >  Thanks!
> >  Joel
> >
> >
> >
> >On Mon, Oct 13, 2014 at 4:11 PM, Andreas Hansson via gem5-dev <
> >gem5-dev@gem5.org> wrote:
> >
> >> Hi Joel,
> >>
> >> I am happy to spend the 5 minutes creating a GDDR5 configuration. Do you
> >> have any specific data sheet you would like to capture?
> >>
> >> Andreas
> >>
> >> On 10/13/14, 10:09 PM, "Joel Hestness via gem5-dev" <gem5-dev@gem5.org>
> >> wrote:
> >>
> >> >Hi guys,
> >> >
> >> >
> >> >> Thanks for the clarification. I believe the RubyMemoryController is
> >> >> completely Pareto dominated by the vanilla DRAMCtrl module, but if
> >>there
> >> >> is any specific feature/setting missing I would be keen to know.
> >> >>
> >> >> If possible I would like to make sure we use the same controller as a
> >> >> default for all timing simulations (even if the other one would be
> >> >> maintained as a fallback).
> >> >
> >> >
> >> >I'd like to second the desire to have a simple replacement baseline
> >>that
> >> >performs at least as well as the RubyMemoryController in most/all
> >>cases:
> >> >gem5-gpu now has more than 100 users, and as far as I know, we are all
> >> >using Ruby and thus the RubyMemoryController. The RubyMemoryController
> >>is
> >> >pretty simple to configure similarly to DDR3 or GDDR5 and to interpret
> >> >results. It performs surprisingly close to some GPU hardware. If this
> >> >controller goes away, I (and I'm sure other gem5-gpu users) would
> >>prefer
> >> >to
> >> >have something that is known to perform as well and is also easy to
> >> >configure.
> >> >
> >> >I think we (the gem5-gpu crew) are fine with the RubyMemoryController
> >> >going
> >> >away eventually. However, given that there isn't currently a GDDR-like
> >> >DRAMCtrl configuration in gem5, I'd like to second Nilay and Brad that
> >>we
> >> >offer users sufficient time to prepare for RubyMemoryController
> >>removal.
> >> >We
> >> >will need to adapt our heterogeneous Ruby coherence protocols, and
> >>other
> >> >users have their own protocols they'd need to adapt as well.
> >> >
> >> >
> >> >  Joel
> >> >
> >> >
> >> >
> >> >
> >> >
> >> >> On 10/13/14, 9:01 PM, "Nilay Vaish via gem5-dev" <gem5-dev@gem5.org>
> >> >> wrote:
> >> >>
> >> >> >On Mon, 13 Oct 2014, Andreas Hansson via gem5-dev wrote:
> >> >> >
> >> >> >> Hi all,
> >> >> >>
> >> >> >> With Nilay?s recent improvements to Ruby I would like to
> >>understand
> >> >>if
> >> >> >> there is any point in still having the RubyMemoryControl, or if we
> >> >> >> should just clean things up a bit and remove it. I would think the
> >> >>best
> >> >> >> way forward is to clean up the integration of Ruby and classic and
> >> >> >> ensure that there is no duplicated functionality beyond what is
> >> >> >>strictly
> >> >> >> necessary.
> >> >> >>
> >> >> >> Nilay, do you think this would make sense? Is there anyone else
> >>with
> >> >> >>any
> >> >> >> opinions in this matter?
> >> >> >>
> >> >> >
> >> >> >
> >> >> >I was in favor of dropping RubyMemoryControl.  But I had some
> >> >>discussion
> >> >> >with Brad Beckmann from AMD.  Since AMD has some infrastructure in
> >> >>place
> >> >> >already, they would like to retain RubyMemoryControl for the time
> >> >>being.
> >> >> >
> >> >> >I suggest that we retain the memory controller code in ruby for
> >>another
> >> >> >six months or so, and then we will drop it.  In the mean time,  we
> >> >> >will update the interface so that ruby protocols can use classic
> >>memory
> >> >> >controller.  The code for this is already on the reviewboard.  Over
> >> >>this
> >> >> >six month period, I hope, most users would have switched to using
> >> >>classic
> >> >> >controller.
> >> >> >
> >> >> >Thanks
> >> >> >Nilay
> >> >> >_______________________________________________
> >> >> >gem5-dev mailing list
> >> >> >gem5-dev@gem5.org
> >> >> >http://m5sim.org/mailman/listinfo/gem5-dev
> >> >>
> >> >>
> >> >> -- IMPORTANT NOTICE: The contents of this email and any attachments
> >>are
> >> >> confidential and may also be privileged. If you are not the intended
> >> >> recipient, please notify the sender immediately and do not disclose
> >>the
> >> >> contents to any other person, use it for any purpose, or store or
> >>copy
> >> >>the
> >> >> information in any medium.  Thank you.
> >> >>
> >> >> ARM Limited, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ,
> >> >> Registered in England & Wales, Company No:  2557590
> >> >> ARM Holdings plc, Registered office 110 Fulbourn Road, Cambridge CB1
> >> >>9NJ,
> >> >> Registered in England & Wales, Company No:  2548782
> >> >> _______________________________________________
> >> >> gem5-dev mailing list
> >> >> gem5-dev@gem5.org
> >> >> http://m5sim.org/mailman/listinfo/gem5-dev
> >> >>
> >> >
> >> >
> >> >
> >> >--
> >> >  Joel Hestness
> >> >  PhD Student, Computer Architecture
> >> >  Dept. of Computer Science, University of Wisconsin - Madison
> >> >  http://pages.cs.wisc.edu/~hestness/
> >> >_______________________________________________
> >> >gem5-dev mailing list
> >> >gem5-dev@gem5.org
> >> >http://m5sim.org/mailman/listinfo/gem5-dev
> >> >
> >>
> >>
> >> -- IMPORTANT NOTICE: The contents of this email and any attachments are
> >> confidential and may also be privileged. If you are not the intended
> >> recipient, please notify the sender immediately and do not disclose the
> >> contents to any other person, use it for any purpose, or store or copy
> >>the
> >> information in any medium.  Thank you.
> >>
> >> ARM Limited, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ,
> >> Registered in England & Wales, Company No:  2557590
> >> ARM Holdings plc, Registered office 110 Fulbourn Road, Cambridge CB1
> >>9NJ,
> >> Registered in England & Wales, Company No:  2548782
> >>
> >> _______________________________________________
> >> gem5-dev mailing list
> >> gem5-dev@gem5.org
> >> http://m5sim.org/mailman/listinfo/gem5-dev
> >>
> >
> >
> >
> >--
> >  Joel Hestness
> >  PhD Student, Computer Architecture
> >  Dept. of Computer Science, University of Wisconsin - Madison
> >  http://pages.cs.wisc.edu/~hestness/
> >_______________________________________________
> >gem5-dev mailing list
> >gem5-dev@gem5.org
> >http://m5sim.org/mailman/listinfo/gem5-dev
> >
>
>
> -- IMPORTANT NOTICE: The contents of this email and any attachments are
> confidential and may also be privileged. If you are not the intended
> recipient, please notify the sender immediately and do not disclose the
> contents to any other person, use it for any purpose, or store or copy the
> information in any medium.  Thank you.
>
> ARM Limited, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ,
> Registered in England & Wales, Company No:  2557590
> ARM Holdings plc, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ,
> Registered in England & Wales, Company No:  2548782
>
> _______________________________________________
> gem5-dev mailing list
> gem5-dev@gem5.org
> http://m5sim.org/mailman/listinfo/gem5-dev
>


-- 
  Joel Hestness
  PhD Student, Computer Architecture
  Dept. of Computer Science, University of Wisconsin - Madison
  http://pages.cs.wisc.edu/~hestness/
_______________________________________________
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to