AVX-512 downclocking not as bad as thought?

By: Maynard Handley (name99.delete@this.name99.org), August 24, 2018 11:03 am
Room: Moderated Discussions
Travis (travis.downs.delete@this.gmail.com) on August 24, 2018 1:01 am wrote:
> With chips that support AVX-512 you have three speed "tiers" the CPU can be running in, let's call them "base",
> "avx2" and "avx-512" speeds, from fastest to slowest. This is described on wikichip and other places.
>
> The tiers aren't actually strictly defined by AVX2 and AVX-512: there are light and
> heavy instructions, so only heavy AVX-512 have to suffer the AVX-512 speed, light AVX-512
> is grouped with heavy AVX-256, and light AVX-256 could be as cheap as scalar.
>
> Earlier energy saving transitions relating to AVX2 kicked in as soon as you execute a single
> instruction, and the assumption seems to be that this is true for this stuff too: e.g., if
> you run one heavy AVX-512 instruction, you'll get downclocked to the slow AVX-512 speed.
>
> This doesn't seem to be the case, at least based on the one Skylake-W 2104 CPU I tested. The three
> tiers exist, but you only drop down if you run "enough" of the heavy instructions. Enough is quite
> a bit: even a long loop of back-to-back serial AVX2 FMAs (which execute in this case at one per cycle
> since they are dependent) doesn't trigger the AVX2 downclock (it runs at the full nominal "scalar"
> speed of 3.2 GHz). Similarly for AVX-512: although any AVX-512 instruction triggers downclocking
> to the middle AVX2 tier, even a stream of 1 FMAD every 4 or even 2 cycles doesn't set it down lower.
> The lowest speed is only reached if FMAs come at a rate of more than 1 every 2 cycles.
>
> Note that this rule only applies to the "heavy" instructions. Light instructions do seem to activate
> their speed even if they are very sparse: but since AVX2 light is in the fastest tier, this only
> matters for light AVX-512 instructions, which will put the CPU into the AVX2 speed tier.
>
> So at least with respect to the "heavy" instructions, you
> can use quite a few before hitting the dreaded downclock.
>
> If anyone wants to run my test on a more interesting system than the W-2104, you can find it here:
>
> https://github.com/travisdowns/avx-turbo
>
> By default it will run on 1 core up to the number of cores you have so you can see
> the progression as active cores increase. In particular, you can use it to verify if
> you're getting the published relationship between code type and active core count.

What is the concern that they are trying to deal with?
I can understand that there may be a legal issue --- they've created a situation where they seem to feel obligated to always hit a certain "guaranteed" frequency regardless, and now that they're using that as a segmentation device they're stuck.

But let's ignore that and focus on engineering. Why would the existing thermal modeling not be good enough (and in-fact optimal) for handling this?
You run instructions, the core heats up (or doesn't) and throttles (or doesn't), you do better with a better cooling system, or not using the GPU, etc etc. All without any special segregating "these instructions have to be counted, and after a certain count frequency switches regardless".

Is there a real (and realistic) fear that these instructions can generate so much heat so fast that the existing thermal tracking is too slow? And something that could be fast enough (eg as has been suggested, limiting instruction throughput at some point --- maybe issue, maybe decode) is not realistic why? Because the entire thermal modeling system runs at say 100th CPU frequency and it was too hard at the time to bolt on a new, better targeted, system?
< Previous Post in ThreadNext Post in Thread >
TopicPosted ByDate
AVX-512 downclocking not as bad as thought?Travis2018/08/24 12:01 AM
  AVX-512 downclocking not as bad as thought?Ricardo B2018/08/24 04:22 AM
    AVX-512 downclocking not as bad as thought?David Hess2018/08/24 09:08 PM
      AVX-512 downclocking not as bad as thought?Travis2018/08/24 09:54 PM
        AVX-512 downclocking not as bad as thought?anon2018/08/25 04:06 AM
          AVX-512 downclocking not as bad as thought?Travis2018/08/25 07:34 PM
        AVX-512 downclocking not as bad as thought?David Hess2018/08/25 09:44 AM
          AVX-512 downclocking not as bad as thought?Travis2018/08/25 07:35 PM
  AVX-512 downclocking not as bad as thought?Jeff S.2018/08/24 06:22 AM
    AVX-512 downclocking not as bad as thought?Travis2018/08/24 07:41 AM
      AVX-512 downclocking not as bad as thought?Jeff S.2018/08/24 09:24 AM
  AVX-512 downclocking not as bad as thought?Maynard Handley2018/08/24 11:03 AM
    AVX-512 downclocking not as bad as thought?Jeff S.2018/08/24 11:24 AM
      AVX-512 downclocking not as bad as thought?Maynard Handley2018/08/24 12:26 PM
        AVX-512 downclocking not as bad as thought?Jeff S.2018/08/24 12:39 PM
        AVX-512 downclocking not as bad as thought?megabytephreak2018/08/24 12:43 PM
          AVX-512 downclocking not as bad as thought?Maynard Handley2018/08/24 03:59 PM
          AVX-512 downclocking not as bad as thought?someone2018/09/12 12:20 AM
            AVX-512 downclocking not as bad as thought?anonymou52018/09/12 06:39 AM
        AVX-512 downclocking not as bad as thought?Travis2018/08/24 02:48 PM
    AVX-512 downclocking not as bad as thought?David Hess2018/08/24 09:26 PM
  Gold 6130 resultsTravis2018/08/24 03:49 PM
    Gold 6130 results-.-2018/08/24 08:08 PM
      Gold 6130 resultsTravis2018/08/24 10:02 PM
        Gold 6130 results-.-2018/08/25 02:27 AM
          Gold 6130 resultsTravis2018/08/25 07:37 PM
  AVX-512 downclocking not as bad as thought?Adrian2018/08/24 08:30 PM
    AVX-512 downclocking not as bad as thought?Adrian2018/08/24 08:36 PM
      AVX-512 downclocking not as bad as thought?Adrian2018/08/24 08:39 PM
        AVX-512 downclocking not as bad as thought?Travis2018/08/24 10:06 PM
          AVX-512 downclocking not as bad as thought?Adrian2018/08/24 10:28 PM
  AVX-512 downclocking not as bad as thought?Royi2018/08/25 03:36 AM
    AVX-512 downclocking not as bad as thought?Travis Downs2018/08/25 08:18 AM
      AVX-512 possibly in its own clock domain?Brett2018/08/25 12:58 PM
        AVX-512 possibly in its own clock domain?Travis2018/08/25 07:40 PM
          AVX-512 possibly in its own clock domain?Brett2018/08/26 08:48 AM
            AVX-512 possibly in its own clock domain?Maynard Handley2018/08/26 04:28 PM
              AVX-512 possibly in its own clock domain?none2018/08/26 08:40 PM
                AVX-512 possibly in its own clock domain?Maynard Handley2018/08/27 09:37 AM
                  AVX-512 possibly in its own clock domain?none2018/08/27 10:28 AM
        AVX-512 possibly in its own clock domain?David Hess2018/08/26 09:20 AM
          AVX-512 possibly in its own clock domain?Maynard Handley2018/08/26 04:35 PM
            AVX-512 possibly in its own clock domain?Gabriele Svelto2018/08/27 12:46 PM
            AVX-512 possibly in its own clock domain?David Hess2018/08/27 06:03 PM
  AVX-512 downclocking not as bad as thought?Travis2018/09/07 07:32 PM
    AVX-512 downclocking not as bad as thought?anonymou52018/09/07 08:03 PM
      AVX-512 downclocking not as bad as thought?Travis2018/09/09 07:16 PM
    AVX-512 downclocking not as bad as thought?Tim McCaffrey2018/09/08 07:55 AM
      AVX-512 downclocking not as bad as thought?Travis Downs2018/09/08 02:21 PM
Reply to this Topic
Name:
Email:
Topic:
Body: No Text
How do you spell avocado?