Zen 3

By: anon (anon.delete@this.ymous.org), October 11, 2020 1:58 am
Room: Moderated Discussions
hobold (hobold.delete@this.vectorizer.org) on October 10, 2020 12:19 pm wrote:
> Maynard Handley (name99.delete@this.name99.org) on October 10, 2020 10:36 am wrote:
> > hobold (hobold.delete@this.vectorizer.org) on October 10, 2020 8:58 am wrote:
>
> [...]
> > > But one cannot reduce latency below zero (no matter what marketing departments
> > > say), so these gains are not very likely to be repeated by AMD.
> >
> > Yes you can :-) Value prediction is real, and done competently provides genuine speedups...
> > As far as I can tell no-one is doing value prediction yet (as always asterisk against Apple...)
> > but it's still a promising technology once everything easier has been done.
>
> Latency is the time you must wait for an unknown result that will be produced in the future.
> Value prediction is re-use of a known result that has been produced in the past.
>
> It is possible to try and guess the future. It is not commonly possible
> to reliably violate causality (in the macroscopic world).
>
> I do not mean to diminish all the ingenious speculative algorithms. But for the benefit of the lurking
> readers, I want to re-iterate that latency times are always strictly greater than zero.
>
> No matter what marketing departments or internet discussion forums say. :-)

Value prediction may predict previously unknown values, much like prefetchers can predict unknown addresses (e.g., Stride prefetcher and its counterpart Stride value predictor). In practice those "unseen before" values may well be addresses (or values feeding address generation e.g., loop induction variable) that the prefetcher would have gotten too.

You might be thinking about instruction reuse which is a different thing : Sodani et al., "Understanding the differences between value prediction and instruction reuse" at MICRO 1998 http://www.cs.cmu.edu/afs/cs.cmu.edu/academic/class/15740-f02/public/doc/discussions/uniprocessors/value_pred/vp_vs_ir_micro98.pdf

On latency, I would contend that in isolation, latency is always greater than 0 because you have to at least fetch the instruction. However with superscalar and OoO the latency of some instructions does not appear on the critical path. Moreover, for instructions that *do* appear on the critical path, superscalar fetch + some optimizations (move elimination, zero/one-idiom elimination and now memory bypassing) can cause instructions to appear has having 0 latency.
< Previous Post in ThreadNext Post in Thread >
TopicPosted ByDate
Zen 3Blue2020/10/08 08:58 AM
  Zen 3Rayla2020/10/08 09:10 AM
  Zen 3Adrian2020/10/08 09:13 AM
    Does anyone know whether Zen 3 has AVX-512? (NT)Foo_2020/10/08 10:54 AM
      Does anyone know whether Zen 3 has AVX-512?Adrian2020/10/08 11:11 AM
  Zen 3 - Number of load/store units2020/10/08 09:21 AM
    Zen 3 - Number of load/store unitsRayla2020/10/08 09:28 AM
      Zen 3 - Number of load/store units2020/10/08 10:22 AM
        Zen 3 - Number of load/store unitsAdrian2020/10/08 10:53 AM
          Zen 3 - Number of load/store unitsTravis Downs2020/10/08 08:45 PM
          Zen 3 - CAD benchmarkPer Hesselgren2020/10/09 06:29 AM
            Zen 3 - CAD benchmarkAdrian2020/10/09 08:27 AM
        Zen 3 - Number of load/store unitsitsmydamnation2020/10/08 01:38 PM
          Zen 3 - Number of load/store unitsGroo2020/10/08 01:48 PM
            Zen 3 - Number of load/store unitsWilco2020/10/08 02:02 PM
              Zen 3 - Number of load/store unitsDummond D. Slow2020/10/08 03:39 PM
                Zen 3 - Number of load/store unitsDoug S2020/10/09 07:11 AM
                  Zen 3 - Number of load/store unitsDummond D. Slow2020/10/09 08:43 AM
                    Zen 3 - Number of load/store unitsDoug S2020/10/09 12:43 PM
                      N7 and N7P are not load/Store units - please fix the topic in your replies (NT)Heikki Kultala2020/10/10 06:37 AM
  Zen 3Jeff S.2020/10/08 11:16 AM
    Zen 3anon2020/10/08 12:57 PM
    Disappointing opening line in paperPaul A. Clayton2020/10/11 05:16 AM
      Thoughts on "Improving the Utilization of µop Caches..."Paul A. Clayton2020/10/14 11:11 AM
        Thoughts on "Improving the Utilization of µop Caches..."anon2020/10/15 10:56 AM
          Thoughts on "Improving the Utilization of µop Caches..."anon2020/10/15 10:57 AM
            Sorry about the messanon2020/10/15 10:58 AM
              Sorry about the messBrett2020/10/16 02:22 AM
          Caching dependence info in µop cachePaul A. Clayton2020/10/16 05:20 AM
            Caching dependence info in µop cacheanon2020/10/16 11:36 AM
              Caching dependence info in µop cachePaul A. Clayton2020/10/18 12:28 PM
  Zen 3juanrga2020/10/09 09:12 AM
  Zen 3Mr. Camel2020/10/09 05:30 PM
    Zen 3anon.12020/10/09 11:44 PM
      Cinebench is terrible benchmarkDavid Kanter2020/10/10 09:36 AM
        Cinebench is terrible benchmarkanon.12020/10/10 11:06 AM
        Cinebench is terrible benchmarkhobold2020/10/10 11:33 AM
          Some comments on benchmarksPaul A. Clayton2020/10/14 11:11 AM
            Some comments on benchmarksMark Roulo2020/10/14 02:21 PM
    Zen 3Adrian2020/10/10 12:59 AM
      Zen 3Adrian2020/10/10 01:18 AM
        Zen 3majord2020/10/15 03:02 AM
  Zen 3hobold2020/10/10 07:58 AM
    Zen 3Maynard Handley2020/10/10 09:36 AM
      Zen 3hobold2020/10/10 11:19 AM
        Zen 3anon2020/10/11 01:58 AM
          Zen 3hobold2020/10/11 11:32 AM
            Zen 3anon2020/10/11 12:07 PM
              Zen 3hobold2020/10/11 01:22 PM
    Zen 3anon2020/10/10 10:51 AM
    Zen 3Michael S2020/10/11 12:16 AM
      Zen 3hobold2020/10/11 01:13 AM
        Zen 3Michael S2020/10/11 01:18 AM
      Zen 3anon.12020/10/11 11:17 AM
  Zen 3David Hess2020/10/12 05:43 AM
    more power? (NT)anonymous22020/10/12 12:26 PM
      I think he's comparing 65W 3700X vs 105W 5800X (NT)John H2020/10/12 03:33 PM
        ?! Those are apples and oranges! (NT)anon2020/10/12 03:49 PM
Reply to this Topic
Name:
Email:
Topic:
Body: No Text
How do you spell avocado?