optimized version

Article: Knights Landing Details
By: Michael S (already5chosen.delete@this.yahoo.com), January 7, 2014 10:42 am
Room: Moderated Discussions
Maynard Handley (name99.delete@this.name99.org) on January 6, 2014 6:52 pm wrote:
> Eric Bron (eric.bron.delete@this.zvisuel.privatefortest.com) on January 6, 2014 6:35 am wrote:
> > I have to confess that I was too quick to post the previous versions, well optimized code for
> > arrays will looks like (with far higher load port pressure than I was initially stating)
> >
> > .B3.3:: ; Preds .B3.1 .B3.3
> > vaddpd zmm0, zmm0, ZMMWORD PTR [rcx+rax*8] ;56.11
> > add rax, 8 ;53.25
> > cmp rax, r9 ;53.19
> > jl .B3.3 ; Prob 82% ;53.19
> > vshuff32x4 zmm1, zmm0, zmm0, 238 ;58.12
> > vaddpd zmm0, zmm1, zmm0 ;58.12
> > vpermpd zmm2, zmm0, 78 ;58.12
> > vaddpd zmm3, zmm0, zmm2 ;58.12
> > vpermpd zmm4, zmm3, 177 ;58.12
> > vaddpd zmm5, zmm3, zmm4 ;58.12
> >
> >
>
> So what I said.
>
> No-one cares about the cross lane crap at the end. The part that
> matters is the loop, which is one load per vector FP op.
> And this strikes me as the most common low-load pattern. Just as common would be
> a dot product which would need two loads in the inner loop along with one FMAC.
> I just don't see how you can claim that the DYNAMIC instruction
> count is "commonly" less than one load per vector FP op.

Hopefully, in intended workloads both dense matrix multiplication and convolution between long vector and short-but-not-very-short vector are more common then individual isolated dot product.
DGEMM and CONV can have load to arithmetic vector op ratio significantly lower than one. Unfortunately, on AVX-512F ISA the reduction in load to arithmetic vector op ratio looks impossible without accompanying reduction in arithmetic vector op to total # of instructions ratio. The later is not a problem on uArchs like Skylake (assuming that Skylake inherits HSV arrangement of execution ports), but it will have significant negative impact on KNL, assuming that David is correct about two FMAC-capable VPUs per dual-issue core.

That's how will look my first attempt of inner DGEMM loop on Skylake:

// multiply 2 rows by 16 columns
// 3 sets of accumulators (12 total) required to cover FMA latency
accA00[0..7] = 0;
accA08[0..7] = 0;
accA10[0..7] = 0;
accA18[0..7] = 0;
accB00[0..7] = 0;
accB08[0..7] = 0;
accB10[0..7] = 0;
accB18[0..7] = 0;
accC00[0..7] = 0;
accC08[0..7] = 0;
accC10[0..7] = 0;
accC18[0..7] = 0;

for (k=0; k < N; k += 8) (
rval0[0..7] = row0[k+8..k+15]; // load
rval1[0..7] = row1[k+8..k+15]; // load

c0[0..7] = col[0..7]; // load
c8[0..7] = col[8..15]; // load
r0[0..7] = rval0[0]; // broadcast
r1[0..7] = rval1[0]; // broadcast
accA00[0..7] += c0[0..7] * r0; // FMA
accA08[0..7] += c8[0..7] * r0; // FMA
accA10[0..7] += c0[0..7] * r1; // FMA
accA18[0..7] += c8[0..7] * r1; // FMA
col += M;

c0[0..7] = col[0..7]; // load
c8[0..7] = col[8..15]; // load
r0[0..7] = rval0[1]; // broadcast
r1[0..7] = rval1[1]; // broadcast
accB00[0..7] += c0[0..7] * r0; // FMA
accB08[0..7] += c8[0..7] * r0; // FMA
accB10[0..7] += c0[0..7] * r1; // FMA
accB18[0..7] += c8[0..7] * r1; // FMA
col += M;

c0[0..7] = col[0..7]; // load
c8[0..7] = col[8..15]; // load
r0[0..7] = rval0[2]; // broadcast
r1[0..7] = rval1[2]; // broadcast
accC00[0..7] += c0[0..7] * r0; // FMA
accC08[0..7] += c8[0..7] * r0; // FMA
accC10[0..7] += c0[0..7] * r1; // FMA
accC18[0..7] += c8[0..7] * r1; // FMA
col += M;

c0[0..7] = col[0..7]; // load
c8[0..7] = col[8..15]; // load
r0[0..7] = rval0[3]; // broadcast
r1[0..7] = rval1[3]; // broadcast
accA00[0..7] += c0[0..7] * r0; // FMA
accA08[0..7] += c8[0..7] * r0; // FMA
accA10[0..7] += c0[0..7] * r1; // FMA
accA18[0..7] += c8[0..7] * r1; // FMA
col += M;

c0[0..7] = col[0..7]; // load
c8[0..7] = col[8..15]; // load
r0[0..7] = rval0[4]; // broadcast
r1[0..7] = rval1[4]; // broadcast
accB00[0..7] += c0[0..7] * r0; // FMA
accB08[0..7] += c8[0..7] * r0; // FMA
accB10[0..7] += c0[0..7] * r1; // FMA
accB18[0..7] += c8[0..7] * r1; // FMA
col += M;

c0[0..7] = col[0..7]; // load
c8[0..7] = col[8..15]; // load
r0[0..7] = rval0[5]; // broadcast
r1[0..7] = rval1[5]; // broadcast
accC00[0..7] += c0[0..7] * r0; // FMA
accC08[0..7] += c8[0..7] * r0; // FMA
accC10[0..7] += c0[0..7] * r1; // FMA
accC18[0..7] += c8[0..7] * r1; // FMA
col += M;

c0[0..7] = col[0..7]; // load
c8[0..7] = col[8..15]; // load
r0[0..7] = rval0[6]; // broadcast
r1[0..7] = rval1[6]; // broadcast
accA00[0..7] += c0[0..7] * r0; // FMA
accA08[0..7] += c8[0..7] * r0; // FMA
accA10[0..7] += c0[0..7] * r1; // FMA
accA18[0..7] += c8[0..7] * r1; // FMA
col += M;

c0[0..7] = col[0..7]; // load
c8[0..7] = col[8..15]; // load
r0[0..7] = rval0[7]; // broadcast
r1[0..7] = rval1[7]; // broadcast
accB00[0..7] += c0[0..7] * r0; // FMA
accB08[0..7] += c8[0..7] * r0; // FMA
accB10[0..7] += c0[0..7] * r1; // FMA
accB18[0..7] += c8[0..7] * r1; // FMA
col += M;
}
res0[0..7] = accA00[0..7] + accB00[0..7] + accC00[0..7];
res0[8..15] = accA08[0..7] + accB08[0..7] + accC08[0..7];
res1[0..7] = accA10[0..7] + accB10[0..7] + accC10[0..7];
res1[8..15] = accA18[0..7] + accB18[0..7] + accC18[0..7];

Inner loop contains 18 loads per 32 FMA operations. If such load pressure is still too high, it is always possible to switch to even bigger kernel,
e.g. 4 rows by 16 columns (20 loads per 64 FMA oprations).

Unfortunately, simple ideas like those are only good for Skylake that has decode/issue bandwidth to spare. They will not work at all on decode-limited KNL.


< Previous Post in ThreadNext Post in Thread >
TopicPosted ByDate
Knights Landing details (new article)David Kanter2014/01/03 12:58 AM
  eDRAM as cacheiz2014/01/03 04:39 AM
    eDRAM optionsEric Bron2014/01/09 03:45 AM
  Knights Landing details (new article)Emil Briggs2014/01/03 06:06 AM
  Knights Landing details (new article)Michael S2014/01/03 07:05 AM
    PCI-E and QPIDavid Kanter2014/01/03 12:11 PM
  eDRAM still seems too expensive ...Mark Roulo2014/01/03 10:48 AM
    Nevermind ... I see that you addressed this :-)Mark Roulo2014/01/03 10:51 AM
    eDRAM still seems too expensive ...Eric Bron2014/01/03 01:42 PM
  eDRAM or stacked DRAM?Patrick Chase2014/01/03 11:21 AM
    eDRAM or stacked DRAM?Wes Felter2014/01/03 03:00 PM
      eDRAM or stacked DRAM?Patrick Chase2014/01/03 07:26 PM
        eDRAM or stacked DRAM?tarlinian2014/06/23 09:59 PM
          eDRAM or stacked DRAM?Maynard Handley2014/06/24 01:47 AM
            eDRAM or stacked DRAM?Michael S2014/06/24 03:13 AM
            eDRAM or stacked DRAM?David Kanter2014/06/24 12:09 PM
              eDRAM or stacked DRAM?anon2014/06/24 07:50 PM
                eDRAM or stacked DRAM?Eric Bron2014/06/24 10:02 PM
                  eDRAM or stacked DRAM?anon2014/06/24 10:39 PM
                eDRAM or stacked DRAM?Michael S2014/06/25 01:46 AM
              eDRAM or stacked DRAM?Michael S2014/06/25 01:29 AM
          eDRAM or stacked DRAM?Eric Bron2014/06/24 05:37 AM
            eDRAM or stacked DRAM?tarlinian2014/06/24 08:53 AM
              eDRAM or stacked DRAM?Eric Bron2014/06/24 09:09 AM
                eDRAM or stacked DRAM?tarlinian2014/06/24 09:40 AM
                  eDRAM or stacked DRAM?Eric Bron2014/06/24 10:10 AM
                    eDRAM or stacked DRAM?Eric Bron2014/06/24 10:12 AM
          eDRAM or stacked DRAM?Wes Felter2014/06/24 10:09 PM
            eDRAM or stacked DRAM?Michael S2014/06/25 02:02 AM
  Why not tag-inclusive L3?Paul A. Clayton2014/01/03 04:28 PM
    Why not tag-inclusive L3?Eric Bron2014/01/04 03:22 AM
  Knights Landing L/S bandwidthNicolas Capens2014/01/04 05:43 AM
    Knights Landing L/S bandwidthEric Bron2014/01/04 06:20 AM
      Knights Landing L/S bandwidthNicolas Capens2014/01/04 02:55 PM
        Knights Landing L/S bandwidthEric Bron2014/01/04 03:27 PM
          Knights Landing L/S bandwidthhobold2014/01/04 04:23 PM
            Knights Landing L/S bandwidthEric Bron2014/01/04 05:20 PM
              Knights Landing L/S bandwidthMichael S2014/01/05 03:42 AM
                Knights Landing L/S bandwidthEric Bron2014/01/05 03:49 AM
                  Knights Landing L/S bandwidthPatrick Chase2014/01/11 08:13 PM
                    Knights Landing L/S bandwidthNicolas Capens2014/01/13 08:39 PM
                Knights Landing L/S bandwidthNicolas Capens2014/01/05 03:18 PM
                  Knights Landing L/S bandwidthMichael S2014/01/06 04:09 AM
                    Knights Landing L/S bandwidthEric Bron2014/01/06 05:11 AM
                      Knights Landing L/S bandwidthMichael S2014/01/06 05:40 AM
                        Knights Landing L/S bandwidthEric Bron2014/01/06 05:54 AM
                        Knights Landing L/S bandwidthEric Bron2014/01/08 09:00 AM
                    Knights Landing L/S bandwidthNicolas Capens2014/01/07 03:31 PM
                      Knights Landing L/S bandwidthMichael S2014/01/07 04:17 PM
                        Knights Landing L/S bandwidthNicolas Capens2014/01/07 09:55 PM
                          Knights Landing L/S bandwidthMichael S2014/01/08 01:42 AM
                            Knights Landing L/S bandwidthGabriele Svelto2014/01/08 08:30 AM
                              Occam's razorNicolas Capens2014/01/08 02:33 PM
                                Occam's razorGabriele Svelto2014/01/08 02:51 PM
                                  Occam's razorEric Bron2014/01/08 03:28 PM
                                    Occam's razorbakaneko2014/01/09 04:45 AM
                                      Occam's razoranon2014/01/09 05:02 AM
                                        Occam's razorbakaneko2014/01/09 06:24 AM
                                          Occam's razorbakaneko2014/01/09 06:51 AM
                                            Occam's razoranon2014/01/09 07:18 AM
                                          Occam's razoranon2014/01/09 07:16 AM
                                            Occam's razorbakaneko2014/01/09 08:43 AM
                                              Occam's razoranon2014/01/09 09:17 AM
                                                Occam's razorbakaneko2014/01/09 11:12 AM
                                                  Occam's razorEric Bron2014/01/09 11:18 AM
                                                    Occam's razorbakaneko2014/01/09 11:58 AM
                                                  Occam's razoranon2014/01/09 12:35 PM
                                                    Occam's razorbakaneko2014/01/12 10:48 AM
                                                  99.9% not a new extensionNicolas Capens2014/01/10 11:39 AM
                                                    Compiler complexityGabriele Svelto2014/01/11 03:58 AM
                                                      Compiler complexityNicolas Capens2014/01/11 01:20 PM
                                                        Compiler complexityGabriele Svelto2014/01/11 03:17 PM
                                                          Patent pendingNicolas Capens2014/01/14 07:21 PM
                                                    99.9% not a new extensionbakaneko2014/01/12 11:08 AM
                                  L0 data cacheEric Bron2014/01/08 04:52 PM
                                  Occam's razorDavid Kanter2014/01/08 04:53 PM
                                    Occam's razorNicolas Capens2014/01/09 03:07 AM
                                      Occam's razorRicardo B2014/01/09 05:21 AM
                                        Virtually indexed, untaggedNicolas Capens2014/01/10 11:27 AM
                                          Virtually indexed, untaggedGabriele Svelto2014/01/11 04:08 AM
                                            Virtually indexed, untaggedNicolas Capens2014/01/11 09:45 PM
                                              Virtually indexed, untaggedDavid Kanter2014/01/12 02:13 AM
                                                Virtually indexed, untaggedanon2014/01/12 04:02 AM
                                                Virtually indexed, untaggedNicolas Capens2014/01/16 09:55 AM
                                              Virtually indexed, untaggedMichael S2014/01/12 04:09 AM
                                                Virtually indexed, untaggedNicolas Capens2014/01/16 10:47 AM
                                      Occam's razorDavid Kanter2014/01/09 06:42 PM
                                        Occam's razorNicolas Capens2014/01/10 02:22 PM
                                          Occam's razorDavid Kanter2014/01/10 04:06 PM
                                            MEM : ALU ratioNicolas Capens2014/01/11 12:24 AM
                                              MEM : ALU ratioGabriele Svelto2014/01/11 03:47 AM
                                                MEM : ALU ratioEric Bron2014/01/11 04:41 AM
                                                  MEM : ALU ratioEric Bron2014/01/11 05:06 AM
                                                    MEM : ALU ratioDavid Kanter2014/01/11 08:28 PM
                                                      MEM : ALU ratioEric Bron nli2014/01/12 02:54 AM
                                                  MEM : ALU ratioGabriele Svelto2014/01/11 10:15 AM
                                                MEM : ALU ratioNicolas Capens2014/01/14 06:56 PM
                                                  Etiquette in linking to papersPaul A. Clayton2014/01/14 07:44 PM
                                                  MEM : ALU ratioanon2014/01/14 08:32 PM
                                                    L0 power costNicolas Capens2014/01/16 02:05 PM
                                                      L0 power costanon2014/01/16 10:01 PM
                                                        L0 power costNicolas Capens2014/01/19 12:30 AM
                                                          Links revealedPaul A. Clayton2014/01/19 04:47 PM
                                                          L0 power costanon2014/01/20 01:19 AM
                                                            L0 power costNicolas Capens2014/01/20 02:49 PM
                                                              L0 power costanon2014/01/21 01:18 AM
                                                                Q.E.D.Nicolas Capens2014/01/21 08:44 PM
                                                                  Q.E.D.anon2014/01/21 09:24 PM
                                                                    Straw manNicolas Capens2014/01/23 11:56 PM
                                                                      Straw mananon2014/01/25 06:46 AM
                                                                        Still waiting for an explanationNicolas Capens2014/01/26 12:19 AM
                                                                          Still waiting for an explanationExophase2014/01/26 01:13 PM
                                                                            Still waiting for an explanationbakaneko2014/01/26 11:52 PM
                                                                  Q.E.D.Ricardo B2014/01/22 06:58 PM
                                                                    Q.E.D.Michael S2014/01/23 04:59 AM
                                                                      L0 entry countNicolas Capens2014/01/24 01:11 AM
                                                                        L0 entry countEric Bron2014/01/24 02:08 AM
                                                                          L0 entry countMichael S2014/01/24 06:18 AM
                                                                            L0 entry countEric Bron2014/01/24 07:15 AM
                                                                              L0 entry countMichael S2014/01/24 08:10 AM
                                                                                L0 entry countEric Bron2014/01/24 08:20 AM
                                                                          L0 entry countNicolas Capens2014/01/24 02:33 PM
                                                                            L0 entry countEric Bron2014/01/24 03:20 PM
                                                                              L0 entry count and L1 read port orthogonalityNicolas Capens2014/01/26 01:14 AM
                                                                                L0 entry count and L1 read port orthogonalityEric Bron2014/01/26 03:49 AM
                                                                    L0 hit rateNicolas Capens2014/01/24 12:49 AM
                                                                      L0 hit rateRicardo B2014/01/24 06:42 AM
                                                                        L0 hit rateExophase2014/01/24 01:37 PM
                                                                          L0 hit rateEric Bron2014/01/24 02:12 PM
                                                                        L0 vs RF powerNicolas Capens2014/01/24 02:43 PM
                                              MEM : ALU ratioDavid Kanter2014/01/11 01:47 PM
                                                MEM : ALU ratioNicolas Capens2014/01/16 09:23 AM
                                                  MEM : ALU ratioStubabe2014/01/17 12:58 PM
                                                    MEM : ALU ratioStubabe2014/01/17 01:42 PM
                                                      MEM : ALU ratioMichael S2014/01/18 04:57 PM
                                                        MEM : ALU ratiobakaneko2014/01/19 12:47 AM
                                                    MEM : ALU ratioNicolas Capens2014/01/20 03:48 PM
                                                      It's called "tunnel vision" (NT)iz2014/01/20 04:36 PM
                                                      MEM : ALU ratioMichael S2014/01/20 04:37 PM
                                                        MEM : ALU ratioStubabe2014/01/21 04:54 PM
                                                        MEM : ALU ratioNicolas Capens2014/01/21 10:07 PM
                                                          MEM : ALU ratioMichael S2014/01/22 08:17 AM
                                                            MEM : ALU ratioNicolas Capens2014/01/24 03:33 PM
                                                      MEM : ALU ratioStubabe2014/01/21 04:32 PM
                                                        MEM : ALU ratioMichael S2014/01/22 08:56 AM
                                                          MEM : ALU ratioStubabe2014/01/23 09:06 AM
                                                            MEM : ALU ratioEric Bron2014/01/23 09:45 AM
                                                              editEric Bron2014/01/23 09:49 AM
                                                            MEM : ALU ratioMichael S2014/01/23 09:58 AM
                                                              MEM : ALU ratioEric Bron2014/01/23 10:29 AM
                                                                MEM : ALU ratioMichael S2014/01/23 10:33 AM
                                                              MEM : ALU ratioStubabe2014/01/24 04:50 AM
                                                MEM : ALU ratiobakaneko2014/01/23 10:36 AM
                                              MEM : ALU ratioNoSpammer2014/01/11 03:39 PM
                                                L1 vs L0 access costNicolas Capens2014/01/16 03:17 PM
                                                  L1 vs L0 access costNoSpammer2014/01/19 01:48 PM
                                                    L1 vs L0 access costdmcq2014/01/22 05:45 AM
                                                      L1 vs L0 access costGabriele Svelto2014/01/22 07:29 AM
                                                        L1 vs L0 access costdmcq2014/01/22 01:33 PM
                                                          L1 vs L0 access costGabriele Svelto2014/01/22 04:33 PM
                                                            L1 vs L0 access costdmcq2014/01/24 04:19 AM
                                                    L1 vs L0 access costNicolas Capens2014/01/24 02:16 AM
                                      Occam's razorPatrick Chase2014/01/13 11:19 AM
                                  Occam's razorNicolas Capens2014/01/09 12:40 AM
                                    Occam's razorGabriele Svelto2014/01/09 02:41 AM
                                      Occam's razorEric Bron2014/01/09 02:54 AM
                                        Occam's razorGabriele Svelto2014/01/09 06:35 AM
                                          Occam's razorEric Bron2014/01/09 07:14 AM
                                            avoiding redundant loadsEric Bron2014/01/09 07:18 AM
                                            AVX2 versionEric Bron2014/01/09 07:32 AM
                                      Occam's razorAmiba Gelos2014/01/09 03:01 AM
                                        Occam's razorEric Bron2014/01/09 03:06 AM
                                          Occam's razorAmiba Gelos2014/01/09 03:43 AM
                                            Occam's razorEric Bron2014/01/09 04:02 AM
                                        L0 access latencyNicolas Capens2014/01/09 04:27 AM
                                          L0 access latencyAmiba Gelos2014/01/09 05:16 AM
                                            compared to L0$ i would say banking is far more likely (NT)Amiba Gelos2014/01/09 05:20 AM
                                            L0 access latencyNicolas Capens2014/01/10 03:20 PM
                                      Occam's razorNicolas Capens2014/01/09 04:19 AM
                                    Occam's razorNoSpammer2014/01/09 12:55 PM
                                      Occam's razorNicolas Capens2014/01/10 03:40 PM
                                        Occam's razorMichael S2014/01/11 10:21 AM
                                        Occam's razorMichael S2014/01/12 03:21 PM
                                          KNC compiler outputNicolas Capens2014/01/16 06:39 PM
                                            KNC compiler outputMichael S2014/01/18 05:13 PM
                                    L0 cache coherencyDavid Kanter2014/01/11 08:39 PM
                                Occam's razoranon2014/01/09 05:12 AM
                            Knights Landing L/S bandwidthEric Bron2014/01/08 10:46 AM
                              Knights Landing L/S bandwidthMichael S2014/01/08 11:23 AM
                            Knights Landing L/S bandwidthNicolas Capens2014/01/08 02:02 PM
                              Knights Landing L/S bandwidthMichael S2014/01/08 02:29 PM
                                Knights Landing L/S bandwidthEric Bron2014/01/08 02:54 PM
                                  Knights Landing L/S bandwidthMichael S2014/01/08 03:00 PM
                                    Knights Landing L/S bandwidthEric Bron2014/01/08 03:13 PM
                                      Knights Landing L/S bandwidthMichael S2014/01/08 03:28 PM
                                        Knights Landing L/S bandwidthEric Bron2014/01/08 03:32 PM
                                          Knights Landing L/S bandwidthMichael S2014/01/08 03:40 PM
                                            Knights Landing L/S bandwidthEric Bron2014/01/08 03:51 PM
                                              Knights Landing L/S bandwidthMichael S2014/01/09 12:18 PM
                          Knights Landing L/S bandwidthPatrick Chase2014/01/12 10:03 PM
                            Also page/line splits?David Kanter2014/01/12 10:50 PM
                              Also page/line splits?anon2014/01/13 01:44 AM
                                Also page/line splits?none2014/01/13 03:09 AM
                                  Also page/line splits?anon2014/01/13 04:19 AM
                            Knights Landing L/S bandwidthExophase2014/01/13 12:15 AM
                            Knights Landing L/S bandwidthanon2014/01/13 01:41 AM
                              Knights Landing L/S bandwidthPatrick Chase2014/01/13 11:14 AM
                            Aliased writesNicolas Capens2014/01/14 09:46 PM
                      Knights Landing L/S bandwidthRicardo B2014/01/07 04:27 PM
                        Knights Landing L/S bandwidthNicolas Capens2014/01/07 10:28 PM
                          Knights Landing L/S bandwidthRicardo B2014/01/08 02:13 AM
                            Knights Landing L/S bandwidthEric Bron2014/01/08 11:10 AM
                            Knights Landing L/S bandwidthNicolas Capens2014/01/08 03:31 PM
                              Knights Landing L/S bandwidthRicardo B2014/01/08 03:58 PM
                                Knights Landing L/S bandwidthG. Gouvine2014/01/09 09:10 AM
                                  Knights Landing L/S bandwidthRicardo B2014/01/09 11:19 AM
                                    Efficient load queue vs. efficient L0 cacheNicolas Capens2014/01/11 12:28 PM
                                      Efficient load queue vs. efficient L0 cacheG. Gouvine2014/01/13 02:11 AM
                                        Efficient load queue vs. efficient L0 cacheMichael S2014/01/13 03:43 AM
                                Register file read port requirementsNicolas Capens2014/01/11 12:55 AM
                                  Register file read port requirementsRicardo B2014/01/11 05:24 AM
                                    Register file read port requirementsEric Bron2014/01/11 05:32 AM
                                      Register file read port requirementsMichael S2014/01/11 09:57 AM
                                        Register file read port requirementsEric Bron2014/01/11 11:16 AM
                                          Register file read port requirementsMichael S2014/01/11 11:46 AM
                                            Register file read port requirementsEric Bron2014/01/11 12:12 PM
                                              Register file read port requirementsMichael S2014/01/11 12:36 PM
                                                Register file read port requirementsEric Bron2014/01/11 12:51 PM
                                              Register file read port requirementsPatrick Chase2014/01/13 02:27 PM
                                                Register file read port requirementsEric Bron2014/01/13 04:24 PM
                                                  Register file read port requirementsPatrick Chase2014/01/13 06:02 PM
                                                    Register file read port requirementsEric Bron2014/01/14 04:50 AM
                                                      Register file read port requirementsMichael S2014/01/14 11:36 AM
                                                        Register file read port requirementsEric Bron nli2014/01/14 01:04 PM
                                            Register file read port requirementsPatrick Chase2014/01/13 02:17 PM
                                              Register file read port requirementsMichael S2014/01/15 04:27 AM
                                        Register file read port requirementsEric Bron2014/01/11 11:28 AM
                                          Register file read port requirementsMichael S2014/01/11 12:07 PM
                                            Register file read port requirementsPatrick Chase2014/01/13 02:40 PM
                                          Register file read port requirementsPatrick Chase2014/01/13 02:34 PM
                                      Register file read port requirementsRicardo B2014/01/11 12:55 PM
                                        Register file read port requirementsEric Bron2014/01/11 01:17 PM
                                          Register file read port requirementsRicardo B2014/01/11 02:36 PM
                                            Register file read port requirementsEric Bron2014/01/11 02:42 PM
                                              Register file read port requirementsRicardo B2014/01/11 03:20 PM
                                                Register file read port requirementsEric Bron2014/01/11 03:26 PM
                                                  Register file read port requirementsMichael S2014/01/11 04:07 PM
                                                    Register file read port requirementsRicardo B2014/01/11 04:38 PM
                                                      Register file read port requirementsMichael S2014/01/11 04:49 PM
                                                Register file read port requirementsEric Bron2014/01/11 03:39 PM
                                                  Register file read port requirementsEric Bron2014/01/11 03:41 PM
                                                  Register file read port requirementsRicardo B2014/01/11 04:30 PM
                                    Register file read port requirementsNicolas Capens2014/01/11 12:09 PM
              Knights Landing L/S bandwidthanon2014/01/05 06:55 AM
                Knights Landing L/S bandwidthEric Bron2014/01/05 07:30 AM
                  Knights Landing L/S bandwidthanon2014/01/06 01:07 AM
                    Knights Landing L/S bandwidthEric Bron2014/01/06 02:38 AM
                      Knights Landing L/S bandwidthanon2014/01/06 04:01 AM
                        Knights Landing L/S bandwidthEric Bron2014/01/06 04:44 AM
                          Knights Landing L/S bandwidthanon2014/01/06 05:39 AM
                            Knights Landing L/S bandwidthEric Bron2014/01/06 06:00 AM
                              Knights Landing L/S bandwidthanon2014/01/06 06:44 AM
                                Knights Landing L/S bandwidthMichael S2014/01/06 08:54 AM
                                  Knights Landing L/S bandwidthEric Bron2014/01/06 10:11 AM
                                    Knights Landing L/S bandwidthMichael S2014/01/06 10:14 AM
                                      Knights Landing L/S bandwidthEric Bron2014/01/06 11:37 AM
                                        Knights Landing L/S bandwidthRicardo B2014/01/08 06:25 AM
                                          Knights Landing L/S bandwidthEric Bron2014/01/08 08:36 AM
                                            Knights Landing L/S bandwidthEric Bron2014/01/08 08:41 AM
                                            KNC code generator with EVEX back-end?Michael S2014/01/08 09:43 AM
                                              KNC code generator with EVEX back-end?Exophase2014/01/08 10:00 AM
                                                KNC code generator with EVEX back-end?Ricardo B2014/01/08 11:39 AM
                                                  KNC code generator with EVEX back-end?Eric Bron2014/01/08 12:15 PM
                                                    KNC code generator with EVEX back-end?Exophase2014/01/08 01:17 PM
                                                      KNC code generator with EVEX back-end?Ricardo B2014/01/08 02:06 PM
                                                        KNC code generator with EVEX back-end?Exophase2014/01/08 02:24 PM
                                                        KNC code generator with EVEX back-end?Eric Bron2014/01/08 02:38 PM
                                                    KNC code generator with EVEX back-end?Michael S2014/01/08 01:54 PM
                                              KNC code generator with EVEX back-end?Eric Bron2014/01/08 10:25 AM
                                              KNC code generator with EVEX back-end?Eric Bron2014/01/08 10:35 AM
                                                KNC code generator with EVEX back-end?Michael S2014/01/08 11:07 AM
                                                  KNC code generator with EVEX back-end?Eric Bron2014/01/08 11:24 AM
                                                    KNC code generator with EVEX back-end?Michael S2014/01/08 11:43 AM
                                                      KNC code generator with EVEX back-end?Eric Bron2014/01/08 01:23 PM
                                              KNC code generator with EVEX back-end?Eric Bron2014/01/08 10:43 AM
                                          AVX2 code much different than AVX-512Eric Bron2014/01/08 08:52 AM
                                            evil questionhobold2014/01/08 10:22 AM
                                              evil questionEric Bron2014/01/08 10:27 AM
                                                evil questionhobold2014/01/08 02:33 PM
                                                  evil questionMichael S2014/01/08 02:37 PM
                                                    stupid question (was: evil question)hobold2014/01/09 05:41 AM
                                                      stupid question (was: evil question)Eric Bron2014/01/09 05:52 AM
                                                        stupid question (was: evil question)Michael S2014/01/09 08:00 AM
                                                          stupid question (was: evil question)Michael S2014/01/09 08:12 AM
                                                            stupid question (was: evil question)Eric Bron2014/01/09 10:47 AM
                                                              stupid question (was: evil question)Michael S2014/01/09 11:48 AM
                                                                more decisive (hopefully) test caseMichael S2014/01/09 12:01 PM
                                                                  more decisive (hopefully) test caseEric Bron2014/01/09 12:08 PM
                                                                    more decisive (hopefully) test caseMichael S2014/01/09 12:24 PM
                                                                      more decisive (hopefully) test caseEric Bron2014/01/09 12:27 PM
                                                                        more decisive (hopefully) test caseMichael S2014/01/09 12:33 PM
                                                                  AVX2Eric Bron2014/01/09 12:14 PM
                                                                    AVX2Michael S2014/01/09 12:30 PM
                                                                      AVX2Eric Bron2014/01/09 12:40 PM
                                                                  another tryMichael S2014/01/09 03:02 PM
                                                                    another tryEric Bron2014/01/09 03:33 PM
                                                                      another tryMichael S2014/01/09 04:20 PM
                                                                      another try - ignore misformated mess aboveMichael S2014/01/09 04:24 PM
                                                                        another try - ignore misformated mess aboveGabriele Svelto2014/01/10 01:01 AM
                                                                          another try - ignore misformated mess aboveEric Bron2014/01/10 03:05 AM
                                                                            another try - ignore misformated mess aboveMichael S2014/01/11 10:23 AM
                                                                              another try - ignore misformated mess aboveEric Bron2014/01/11 11:08 AM
                                                                                another try - ignore misformated mess aboveMichael S2014/01/11 12:09 PM
                                                                                  another try - ignore misformated mess aboveMichael S2014/01/11 12:12 PM
                                                                                    another try - ignore misformated mess aboveEric Bron2014/01/11 12:24 PM
                                                                                      another try - ignore misformated mess aboveMichael S2014/01/11 01:24 PM
                                                                                        another try - ignore misformated mess aboveEric Bron2014/01/11 02:11 PM
                                                                                          another try - ignore misformated mess aboveMichael S2014/01/11 02:18 PM
                                                                                            another try - ignore misformated mess aboveEric Bron2014/01/11 02:27 PM
                                                                                              another try - ignore misformated mess aboveMichael S2014/01/11 02:29 PM
                                                                                                another try - ignore misformated mess aboveEric Bron2014/01/11 02:46 PM
                                                                                                  another try - ignore misformated mess aboveEric Bron2014/01/11 02:46 PM
                                                                                                  another try - ignore misformated mess aboveMichael S2014/01/11 03:28 PM
                                                                                        another try - ignore misformated mess aboveEric Bron2014/01/11 02:17 PM
                                                                                          another try - ignore misformated mess aboveMichael S2014/01/11 02:24 PM
                                                                    KNC versionMichael S2014/01/11 05:19 PM
                                                                      KNC versionEric Bron nli2014/01/12 02:59 AM
                                                                        KNC versionGabriele Svelto2014/01/12 09:06 AM
                                                  evil questionEric Bron2014/01/08 02:41 PM
              Knights Landing L/S bandwidthPatrick Chase2014/01/05 11:20 PM
                Knights Landing L/S bandwidthEric Bron2014/01/06 02:45 AM
                  Knights Landing L/S bandwidthanon2014/01/06 04:12 AM
                    Knights Landing L/S bandwidthMichael S2014/01/06 04:17 AM
                      Knights Landing L/S bandwidthanon2014/01/06 05:20 AM
          Knights Landing L/S bandwidthNicolas Capens2014/01/04 05:34 PM
            Knights Landing L/S bandwidthEric Bron2014/01/04 05:44 PM
              Knights Landing L/S bandwidthNicolas Capens2014/01/05 12:25 PM
                Knights Landing L/S bandwidthEric Bron2014/01/05 01:50 PM
                  Knights Landing L/S bandwidthNicolas Capens2014/01/05 03:34 PM
                    Might even help with gatherNicolas Capens2014/01/05 03:40 PM
                      What is an L0 cache?David Kanter2014/01/05 10:44 PM
                        What is an L0 cache?anon2014/01/06 05:57 AM
                          What is an L0 cache?Nicolas Capens2014/01/06 12:57 PM
                            What is an L0 cache?anon2014/01/06 02:18 PM
    Knights Landing L/S bandwidthDavid Kanter2014/01/04 10:58 AM
      Knights Landing L/S bandwidthNicolas Capens2014/01/04 04:24 PM
        Knights Landing L/S bandwidthEric Bron2014/01/04 04:46 PM
          Knights Landing L/S bandwidthKonrad Schwarz2014/01/08 12:48 AM
            Knights Landing L/S bandwidthMichael S2014/01/08 02:45 AM
        Knights Landing L/S bandwidthDavid Kanter2014/01/05 01:44 AM
          Knights Landing L/S bandwidthEric Bron2014/01/05 03:55 AM
          Knights Landing L/S bandwidthNicolas Capens2014/01/05 12:18 PM
            Knights Landing L/S bandwidthMaynard Handley2014/01/05 11:33 PM
              Knights Landing L/S bandwidthEric Bron2014/01/06 04:02 AM
                Knights Landing L/S bandwidthMichael S2014/01/06 04:23 AM
                  Knights Landing L/S bandwidthEric Bron2014/01/06 04:35 AM
                    Knights Landing L/S bandwidthMichael S2014/01/06 05:20 AM
                      Knights Landing L/S bandwidthMichael S2014/01/06 05:32 AM
                      Knights Landing L/S bandwidthEric Bron2014/01/06 05:36 AM
                        Knights Landing L/S bandwidthMichael S2014/01/06 06:00 AM
                          Knights Landing L/S bandwidthEric Bron2014/01/06 06:07 AM
                          Knights Landing L/S bandwidthEric Bron2014/01/06 06:14 AM
                            editsEric Bron2014/01/06 06:22 AM
                              optimized versionEric Bron2014/01/06 06:35 AM
                                yet more optimized versionEric Bron2014/01/06 06:42 AM
                                  latest version for todayEric Bron2014/01/06 06:51 AM
                                    Probably just L2 bandwith limitedNicolas Capens2014/01/06 11:48 AM
                                  yet more optimized versionMaynard Handley2014/01/06 06:54 PM
                                optimized versionMaynard Handley2014/01/06 06:52 PM
                                  optimized versionMichael S2014/01/07 10:42 AM
                                    optimized versionNicolas Capens2014/01/07 12:36 PM
                                      optimized versionMichael S2014/01/07 03:41 PM
                                        optimized versionNicolas Capens2014/01/07 10:52 PM
                                          optimized versionMichael S2014/01/08 02:10 AM
                                    optimized versionEric Bron2014/01/07 02:34 PM
                                      optimized versionMichael S2014/01/07 03:18 PM
                                        optimized versionEric Bron2014/01/07 03:30 PM
                                          optimized versionEric Bron2014/01/07 03:33 PM
                                            optimized versionMichael S2014/01/07 03:57 PM
                                    optimized versionMaynard Handley2014/01/07 06:50 PM
                                      optimized versionMichael S2014/01/08 02:39 AM
                Knights Landing L/S bandwidthMaynard Handley2014/01/06 06:47 PM
              Knights Landing L/S bandwidthNicolas Capens2014/01/06 09:18 AM
                Knights Landing L/S bandwidthMaynard Handley2014/01/06 06:56 PM
                  Knights Landing L/S bandwidthNicolas Capens2014/01/07 12:18 PM
        Knights Landing L/S bandwidthNoSpammer2014/01/05 01:15 PM
          Knights Landing L/S bandwidthNicolas Capens2014/01/05 03:06 PM
            Knights Landing L/S bandwidthNoSpammer2014/01/06 04:20 AM
              Knights Landing L/S bandwidthNicolas Capens2014/01/06 11:54 AM
                Knights Landing L/S bandwidthNoSpammer2014/01/06 01:24 PM
                  Knights Landing L/S bandwidthNicolas Capens2014/01/06 09:15 PM
                    Knights Landing L/S bandwidthNoSpammer2014/01/07 03:58 AM
                      Knights Landing L/S bandwidthNicolas Capens2014/01/07 03:18 PM
                        Knights Landing L/S bandwidthNoSpammer2014/01/08 01:38 PM
                          Knights Landing L/S bandwidthNicolas Capens2014/01/08 11:14 PM
  AVX512F questionMichael S2014/01/06 10:18 AM
    AVX512F questionNicolas Capens2014/01/06 12:01 PM
  Knights Landing - time for obituary?Michael S2018/07/31 03:00 PM
    Knights Landing - time for obituary?Adrian2018/07/31 09:24 PM
      Knights Landing - time for obituary?SoftwareEngineer2018/08/01 02:15 AM
        auto-vectorization is a dead endMichael S2018/08/01 03:48 AM
          Auto-vectorization of random C is a dead endMark Roulo2018/08/01 11:07 AM
            Auto-vectorization of random C is a dead endPassing Through2018/08/01 01:35 PM
              Auto-vectorization of random C is a dead endDavid Kanter2018/08/01 10:44 PM
                Auto-vectorization of random C is a dead endPassing Through2018/08/02 01:51 AM
            Auto-vectorization of random C is a dead endSoftwareEngineer2018/08/02 01:19 AM
              Auto-vectorization of random C is a dead endMark Roulo2018/08/02 09:50 AM
                Auto-vectorization of random C is a dead endMichael S2018/08/02 12:11 PM
                  Auto-vectorization of random C is a dead endj2018/08/02 11:37 PM
                    Auto-vectorization of random C is a dead endMichael S2018/08/03 03:50 AM
                      Auto-vectorization of random C is a dead endrwessel2018/08/03 11:06 PM
                  Auto-vectorization of random C is a dead endRicardo B2018/08/03 04:20 AM
                    Auto-vectorization of random C is a dead endMichael S2018/08/03 05:37 AM
                      Auto-vectorization of random C is a dead endRicardo B2018/08/03 11:22 AM
            Auto-vectorization of random C is a dead endTravis2018/08/03 07:58 PM
              Potential way to autovectorization in the future. Jouni Osmala2018/08/03 10:22 PM
                Potential way to autovectorization in the future. Jukka Larja2018/08/04 04:03 AM
                  Potential way to autovectorization in the future. Passing Through2018/08/04 06:47 AM
                Potential way to autovectorization in the future. Travis2018/08/04 01:50 PM
                  Potential way to autovectorization in the future. Michael S2018/08/04 02:33 PM
                    Potential way to autovectorization in the future. Travis2018/08/04 02:48 PM
                    Potential way to autovectorization in the future. Passing Through2018/08/04 02:58 PM
                  Skylake server/client AVX PRF speculationJeff S.2018/08/04 05:42 PM
                    Skylake server/client AVX PRF speculationanonymou52018/08/04 06:21 PM
                      Skylake server/client AVX PRF speculationJeff S.2018/08/04 06:38 PM
                        Skylake server/client AVX PRF speculationanonymou52018/08/04 07:45 PM
                          Skylake server/client AVX PRF speculationJeff S.2018/08/04 08:08 PM
                            Skylake server/client AVX PRF speculationanonymou52018/08/04 08:18 PM
                              Skylake server/client AVX PRF speculationNomad2018/08/05 11:10 PM
                                Skylake server/client AVX PRF speculationanonymou52018/08/06 12:14 PM
                                Skylake server/client AVX PRF speculationTravis2018/08/06 08:43 PM
                            Skylake server/client AVX PRF speculationTravis2018/08/06 08:39 PM
              Auto-vectorization of random C is a dead endBrett2018/08/04 01:55 PM
                Auto-vectorization of random C is a dead endTravis2018/08/04 02:38 PM
                  Auto-vectorization of random C is a dead endPassing Through2018/08/04 03:00 PM
                    New record for shortest post by Ireland - AI crashed? (NT)Travis2018/08/04 03:34 PM
                      New record for shortest post by Ireland - AI crashed?Passing Through2018/08/04 04:12 PM
                        New record for shortest post by Ireland - AI crashed?anonymou52018/08/04 06:00 PM
                          New record for shortest post by Ireland - AI crashed?Brett2018/08/04 06:40 PM
                            New record for shortest post by Ireland - AI crashed?anonymou52018/08/04 07:38 PM
                  Auto-vectorization of random C is a dead endnoko2018/08/04 09:46 PM
        The story of ispc (a 12 entry blog series)Simon Farnsworth2018/08/01 03:50 AM
          the 1st link is empty (NT)Michael S2018/08/01 04:05 AM
            the 1st link is emptySimon Farnsworth2018/08/01 06:42 AM
          Interesting read, thanks! (NT)SoftwareEngineer2018/08/01 06:57 AM
          Amazing readLaurent2018/08/01 09:00 AM
            Amazing readPassing Through2018/08/01 01:13 PM
              Amazing readDoug S2018/08/01 02:30 PM
                Amazing readPassing Through2018/08/01 02:49 PM
          ISPC vs OpenCL?j2018/08/02 11:41 PM
            ISPC vs OpenCL?coppcie2018/08/03 03:55 AM
            ISPC vs OpenCL?Passing Through2018/08/03 04:07 AM
              Go awayForum Reader2018/08/03 08:11 AM
              ISPC vs OpenCL?Gian-Carlo Pascutto2018/09/11 06:50 AM
            ISPC vs OpenCL?SoftwareEngineer2018/08/03 04:18 AM
        Knights Landing - time for obituary?Kevin G2018/08/01 07:14 AM
          Knights Landing - time for obituary?SoftwareEngineer2018/08/01 07:29 AM
        Knights Landing - time for obituary?Passing Through2018/08/01 07:38 AM
          Knights Landing - time for obituary?Eric Bron2018/08/02 06:57 AM
            Knights Landing - time for obituary?Passing Through2018/08/02 12:29 PM
              Knights Landing - time for obituary?Eric Bron2018/08/02 01:49 PM
                Knights Landing - time for obituary?Passing Through2018/08/02 02:17 PM
          chess algorithms vs, low level optimizationsEric Bron2018/08/02 07:15 AM
            AlphaZero vs StockfishMichael S2018/08/02 07:55 AM
              AlphaZero vs StockfishEric Bron2018/08/02 08:24 AM
                AlphaZero vs StockfishMichael S2018/08/02 09:01 AM
                  AlphaZero vs StockfishEric Bron2018/08/02 09:11 AM
                  Leela 4th vs all othersEric Bron nli2018/09/11 03:40 AM
              AlphaZero vs StockfishGian-Carlo Pascutto2018/09/11 06:31 AM
                AlphaZero vs StockfishEric Bron2018/09/11 09:26 AM
                  AlphaZero vs StockfishEric Bron2018/09/11 09:58 AM
        C/C++ and vector/parallel/distributedRichardC2018/08/02 05:50 AM
      Knights Landing - time for obituary?Passing Through2018/08/01 07:52 AM
        Knights Landing - time for obituary?Kevin G2018/08/01 02:03 PM
          Knights Landing - time for obituary?Passing Through2018/08/01 02:33 PM
      Knights Landing - time for obituary?Kevin G2018/08/01 08:26 AM
        Knights Landing - time for obituary?Kevin G2018/08/01 08:26 AM
        Knights Landing - time for obituary?juanrga2018/08/01 02:26 PM
          Knights Landing - time for obituary?hobel2018/08/02 05:46 AM
    Knights Landing - time for obituary?juanrga2018/07/31 11:25 PM
      Right, time for obituary for whole LRB lineageAM2018/08/02 11:46 AM
        Right, time for obituary for whole LRB lineageAdrian2018/08/02 11:46 PM
          LRBNI, AVX512, etc...Michael S2018/08/03 05:23 AM
        Right, time for obituary for whole LRB lineagejuanrga2018/08/03 04:11 AM
Reply to this Topic
Name:
Email:
Topic:
Body: No Text
How do you spell green?