Cannot reproduce with microcode 0xc6

By: Travis Downs (travis.downs.delete@this.gmail.com), February 26, 2019 3:23 pm
Room: Moderated Discussions
So after discussing a tangentially related matter, I went back to this old issue and ran the reproduction case again, on the same box (Skylake client i7-6700HQ) I collected all the original results. Since then I've updated the microcode several times as new version have been release (thanks, Spectre).

To be surprise, I cannot reproduce the original "bimodality" at all any more. The tests are always consistent: and they are always slow. Before, I would often get the slow result of 7-10 cycles per cache line like the yellow and red values here and also sometimes the much slower result of 16-20 cycles per line (the scattered purple values).

Lo and behold, now I only ever get the really slow values around 18 cycles - my offset vs timing chart looks like this rather than this.

I went and tested Skylake-X and CNL and they both had more or less had only the faster (still slow) timings around 6-8 cycles, like so for CNL.

If anyone has a Skylake client box kicking around, I'd be really interesting in your results and your microcode version. Basically:


git clone https://github.com/travisdowns/bimodal-performance
git checkout rwt
make
./offset-test.sh


and share the result along with the result of:


egrep -m2 'model name|micro' /proc/cpuinfo

Linux-only, sorry for any Windows or Mac users who wanted to get in on the fun (in principle the code should run fine there though, minus the optional page-info stuff - ports welcome).

Maybe there was some microcode change which reduced performance for this type of load? Or maybe my box is just weird somehow?
< Previous Post in ThreadNext Post in Thread >
TopicPosted ByDate
Why does writing to non-sequential lines in L2 perform so poorly?Travis2017/12/20 01:44 PM
  Bridges? Wells? (NT)Micahel S2017/12/20 02:53 PM
    Bridges? Wells? (NT)Travis2017/12/20 03:46 PM
      That should say "huh"? (NT)Travis2017/12/20 03:46 PM
        That should say "huh"?Jeff S.2017/12/20 04:11 PM
          That should say "huh"?Travis2017/12/20 05:34 PM
    Bridges? Wells?Jeff S.2017/12/20 04:17 PM
      Bridges? Wells?Travis2017/12/20 05:37 PM
    Bridges, Wells - positiveMichael S2017/12/21 01:52 AM
      Bridges, Wells - positiveTravis2017/12/21 08:35 AM
        Bridges, Wells - positiveMichael S2017/12/21 09:00 AM
  Why does writing to non-sequential lines in L2 perform so poorly?Linus Torvalds2017/12/20 05:18 PM
    Why does writing to non-sequential lines in L2 perform so poorly?Travis2017/12/20 05:54 PM
      Why does writing to non-sequential lines in L2 perform so poorly?Linus Torvalds2017/12/21 11:12 AM
        Why does writing to non-sequential lines in L2 perform so poorly?anon2017/12/22 02:29 AM
          Why does writing to non-sequential lines in L2 perform so poorly?Linus Torvalds2017/12/22 12:16 PM
            Why does writing to non-sequential lines in L2 perform so poorly?Travis2017/12/23 07:48 PM
            Why does writing to non-sequential lines in L2 perform so poorly?Travis Downs2020/06/13 02:18 PM
              Why does writing to non-sequential lines in L2 perform so poorly?John D. McCalpin2020/06/18 11:50 AM
                Why does writing to non-sequential lines in L2 perform so poorly?Travis Downs2020/06/18 04:32 PM
                  Why does writing to non-sequential lines in L2 perform so poorly?Travis Downs2020/06/18 04:34 PM
    Why does writing to non-sequential lines in L2 perform so poorly?anon.12017/12/21 05:09 PM
      Why does writing to non-sequential lines in L2 perform so poorly?Linus Torvalds2017/12/22 12:20 PM
        Why does writing to non-sequential lines in L2 perform so poorly?Travis2017/12/24 01:09 PM
  Why does writing to non-sequential lines in L2 perform so poorly?Travis2017/12/20 07:52 PM
    Why does writing to non-sequential lines in L2 perform so poorly?Adrian2017/12/20 11:09 PM
      Why does writing to non-sequential lines in L2 perform so poorly?Travis2017/12/21 08:23 AM
    Why does writing to non-sequential lines in L2 perform so poorly?-.-2017/12/27 02:53 AM
      Why does writing to non-sequential lines in L2 perform so poorly?-.-2017/12/27 02:53 AM
        Why does writing to non-sequential lines in L2 perform so poorly?Travis2017/12/27 03:18 PM
  Why does writing to non-sequential lines in L2 perform so poorly?Etienne2017/12/21 01:36 AM
    Why does writing to non-sequential lines in L2 perform so poorly?Michael S2017/12/21 01:58 AM
      Why does writing to non-sequential lines in L2 perform so poorly?Travis2017/12/21 08:26 AM
        Michael ignore my last question - saw your other reply (NT)Travis2017/12/21 08:27 AM
  Why does writing to non-sequential lines in L2 perform so poorly?Nksingg2017/12/26 05:47 AM
    Why does writing to non-sequential lines in L2 perform so poorly?David Kanter2017/12/26 10:48 AM
    Why does writing to non-sequential lines in L2 perform so poorly?Travis2017/12/27 03:33 PM
  Cannot reproduce with microcode 0xc6Travis Downs2019/02/26 03:23 PM
    Cannot reproduce with microcode 0xc6Adrian2019/02/26 08:35 PM
    Cannot reproduce with microcode 0xc6Adrian2019/02/26 09:07 PM
    Cannot reproduce with microcode 0xc6Adrian2019/02/27 04:02 AM
      Cannot reproduce with microcode 0xc6Travis Downs2019/02/27 07:25 AM
        Cannot reproduce with microcode 0xc6Adrian2019/02/28 12:16 AM
          Cannot reproduce with microcode 0xc6Travis Downs2019/03/07 05:51 PM
        Cannot reproduce with microcode 0xc6Adrian2019/02/28 08:54 AM
          Cannot reproduce with microcode 0xc6Travis Downs2019/03/24 05:34 PM
    Cannot reproduce with microcode 0xc6Travis Downs2019/02/27 02:20 PM
Reply to this Topic
Name:
Email:
Topic:
Body: No Text
How do you spell tangerine? 🍊