POWER8 load/store units

By: Gabriele Svelto (gabriele.svelto.delete@this.gmail.com), October 30, 2015 6:34 pm
Room: Moderated Discussions
anon (anon.delete@this.anon.com) on October 30, 2015 6:54 am wrote:
> I don't think it's that much. It has 2 "LU" and 2 "LSU" units, so I think there is a maximum combination of
> 4 per cycle. However the mix I'm not entirely sure of, and there is conflicting information I have not yet
> dug through enough. Some say 2 loads + 2 loads-or-stores per cycle. Some 4 loads or 1 store per cycle. Some
> says a store uses a slot in both LSU and LU, which would be 4 loads, 2 loads + 1 store, or 2 stores.

The POWER8 user manual (available here behind an IBM login or here directly) discuss this in great detail, there's multiple combinations that are possible and the exact limitations aren't spelled out too clearly. On the surface:

- The two LU units can do both GPR loads and FP/VSX/VMX loads
- The two LSU units can do both GPR loads and all type of stores

But, GPR stores employ both an LSU and an LU for their two components (store_agen, store_data), FP/VSX/VMX stores employ both an LSU and an LSU. This limits the potential combinations to:

- 4 GPR loads
- 2 GPR loads and 2 FP/VSX/VMX loads
- 2 GPR stores
- 2 GPR loads and 2 FP/VSX/VMX stores

That being said the description of the L1 cache mentions that it can support up to 4 loads and 1 store per cycle when there are no bank conflicts and that each bank can support either 2 loads or 1 store. The store port in the L1 cache is used either for L2 cache reloads or writes and is 16 bytes wide. The store port is independent from the store instructions (those write in the SDQ, not the L1 directly) so my guess is that the L1 cache can absorb two 8-byte stores per cycle as long as they are adjacent, and thus can be drained together from the SDQ. This also means that while the 2 GPR loads & 2 FP/VSX/VMS stores scenario is possible it cannot be sustained when using vectors as it would generate 32 bytes worth of stores per cycle.
< Previous Post in ThreadNext Post in Thread >
TopicPosted ByDate
Some 'reverse-engineering' of Zenjuanrga2015/10/03 04:48 AM
  Some 'reverse-engineering' of ZenHeikki Kultala2015/10/03 08:01 AM
    Some 'reverse-engineering' of Zenitsmydamnation2015/10/03 03:47 PM
      Some 'reverse-engineering' of ZenAnders2015/10/03 11:04 PM
        Some 'reverse-engineering' of ZenContrarian2015/10/04 11:53 AM
          Some 'reverse-engineering' of ZenJukka Larja2015/10/05 09:15 AM
            Some 'reverse-engineering' of Zenmpx2015/10/05 09:37 AM
              Some 'reverse-engineering' of ZenContrarian2015/10/25 12:25 PM
                Some 'reverse-engineering' of Zenitsmydamnation2015/10/26 01:49 AM
                Some 'reverse-engineering' of Zenjuanrga2015/10/29 02:16 AM
                  Some 'reverse-engineering' of Zenanon2015/10/30 06:54 AM
                    Some 'reverse-engineering' of Zenjuanrga2015/10/30 10:37 AM
                    POWER8 load/store unitsGabriele Svelto2015/10/30 06:34 PM
                Some 'reverse-engineering' of Zenlurker2015/10/29 03:12 PM
                  Some 'reverse-engineering' of ZenDavid Kanter2015/10/30 12:06 AM
                    Some 'reverse-engineering' of Zenlurker2015/10/30 02:39 AM
                      Some 'reverse-engineering' of ZenGabriele Svelto2015/10/30 03:14 AM
                        Some 'reverse-engineering' of Zenlurker2015/10/30 03:41 AM
                      Some 'reverse-engineering' of Zendmcq2015/10/30 05:12 AM
                        Some 'reverse-engineering' of Zenlurker2015/10/30 05:56 AM
                          Some 'reverse-engineering' of Zendmcq2015/10/30 06:09 AM
                            Some 'reverse-engineering' of Zennone2015/10/30 06:16 AM
                          Some 'reverse-engineering' of ZenDavid Kanter2015/10/30 08:16 AM
                            Some 'reverse-engineering' of Zenlurker2015/10/30 08:44 AM
                          Some 'reverse-engineering' of Zenjuanrga2015/10/30 01:00 PM
                            AVX and 128-bit FPUs in Zen(Re:Some 'reverse-engineering' of Zen)Heikki Kultala2015/10/30 03:45 PM
                              AVX and 128-bit FPUs in Zen(Re:Some 'reverse-engineering' of Zen)juanrga2015/10/31 06:20 AM
                                AVX and 128-bit FPUs in Zen(Re:Some 'reverse-engineering' of Zen)Heikki Kultala2015/10/31 02:19 PM
                                  AVX and 128-bit FPUs in Zen(Re:Some 'reverse-engineering' of Zen)juanrga2015/11/01 07:41 AM
                                    AVX and 128-bit FPUs in Zen(Re:Some 'reverse-engineering' of Zen)Anne O. Nymous2015/11/01 09:39 AM
                                AVX and 128-bit FPUs in Zen(Re:Some 'reverse-engineering' of Zen)Matthias Waldhauer2015/11/02 01:26 PM
                                  AVX and 128-bit FPUs in Zen(Re:Some 'reverse-engineering' of Zen)juanrga2015/11/03 03:42 AM
                            Some 'reverse-engineering' of ZenMatthias Waldhauer2015/11/02 11:39 AM
                        Some 'reverse-engineering' of Zenbakaneko2015/10/31 07:28 AM
                          Some 'reverse-engineering' of Zendmcq2015/10/31 08:19 AM
                            Some 'reverse-engineering' of ZenJukka Larja2015/10/31 09:21 AM
                            Some 'reverse-engineering' of Zenbakaneko2015/10/31 10:23 AM
                              Some 'reverse-engineering' of Zendmcq2015/10/31 04:12 PM
                                Some 'reverse-engineering' of Zenbakaneko2015/10/31 05:25 PM
                                  Some 'reverse-engineering' of Zendmcq2015/11/01 07:36 AM
                                    Some 'reverse-engineering' of Zenbakaneko2015/11/01 10:11 AM
                                      Some 'reverse-engineering' of Zendmcq2015/11/01 10:27 AM
                                        Some 'reverse-engineering' of Zenbakaneko2015/11/01 03:35 PM
                                          Some 'reverse-engineering' of Zendmcq2015/11/01 04:52 PM
                                            Some 'reverse-engineering' of Zenbakaneko2015/11/03 03:17 AM
                                              Some 'reverse-engineering' of Zendmcq2015/11/03 04:17 AM
                  Some 'reverse-engineering' of Zenjuanrga2015/10/30 12:43 PM
                    Some 'reverse-engineering' of Zenlurker2015/10/30 02:09 PM
                      Some 'reverse-engineering' of Zenjuanrga2015/10/31 06:58 AM
                        Some 'reverse-engineering' of Zenlurker2015/10/31 08:07 AM
                          Some 'reverse-engineering' of Zenjuanrga2015/10/31 12:50 PM
                            Some 'reverse-engineering' of ZenPoindexter2015/10/31 02:47 PM
                              Some 'reverse-engineering' of Zenlurker2015/10/31 04:06 PM
                                Some 'reverse-engineering' of ZenPoindexter2015/10/31 05:37 PM
                                  Some 'reverse-engineering' of Zenlurker2015/11/01 03:46 AM
                                  Some 'reverse-engineering' of Zenjuanrga2015/11/01 08:16 AM
                                    Some 'reverse-engineering' of ZenMaynard Handley2015/11/01 06:33 PM
                                      Some 'reverse-engineering' of Zenjuanrga2015/11/02 05:06 AM
                                        Zen transistor countHeikki Kultala2015/11/04 01:30 AM
                                          Zen transistor countjuanrga2015/11/05 05:34 AM
                                    Some 'reverse-engineering' of ZenSymmetry2015/11/02 06:56 AM
                                      Some 'reverse-engineering' of ZenDavid Hess2015/11/02 07:16 AM
                                      Some 'reverse-engineering' of Zennobody2015/11/02 08:19 AM
                                        Some 'reverse-engineering' of ZenJukka Larja2015/11/02 09:34 PM
                                          Some 'reverse-engineering' of Zennobody2015/11/03 01:35 AM
                                            Some 'reverse-engineering' of ZenJukka Larja2015/11/03 02:41 AM
                                              Some 'reverse-engineering' of Zennobody2015/11/03 05:10 AM
                                                Some 'reverse-engineering' of ZenJukka Larja2015/11/04 02:52 AM
                                            Some 'reverse-engineering' of ZenKlimax2015/11/03 02:47 AM
                                              Some 'reverse-engineering' of Zennobody2015/11/03 04:19 AM
                                                Some 'reverse-engineering' of ZenKlimax2015/11/03 12:09 PM
                                          Some 'reverse-engineering' of ZenBanana_Comedown2015/11/04 11:17 AM
                                            Some 'reverse-engineering' of ZenJukka Larja2015/11/05 03:51 AM
                                              Some 'reverse-engineering' of ZenBanana_Comedown2015/11/05 01:23 PM
                                      Some 'reverse-engineering' of Zenjuanrga2015/11/03 04:13 AM
                                Some 'reverse-engineering' of Zennobody2015/10/31 08:16 PM
                                  Some 'reverse-engineering' of Zenlurker2015/11/01 03:48 AM
                                    Some 'reverse-engineering' of Zensylt2015/11/01 04:07 AM
                                    Some 'reverse-engineering' of Zennobody2015/11/01 11:49 AM
                                  Some 'reverse-engineering' of Zenmd2015/11/01 01:06 PM
                                    Some 'reverse-engineering' of Zenblu2015/11/01 01:59 PM
                                      Some 'reverse-engineering' of Zenjuanrga2015/11/02 05:10 AM
                              Some 'reverse-engineering' of Zenjuanrga2015/11/01 07:00 AM
                                Some 'reverse-engineering' of ZenPoindexter2015/11/01 09:25 AM
                                  Some 'reverse-engineering' of Zenjuanrga2015/11/02 04:47 AM
                                    Some 'reverse-engineering' of ZenPoindexter2015/11/02 05:39 AM
                                      Some 'reverse-engineering' of Zenjuanrga2015/11/02 01:26 PM
                                        Some 'reverse-engineering' of ZenDan Downs2015/11/02 03:12 PM
                                          Some 'reverse-engineering' of Zenjuanrga2015/11/03 03:51 AM
                            Some 'reverse-engineering' of Zenlurker2015/10/31 03:57 PM
                              Some 'reverse-engineering' of Zenjuanrga2015/11/01 07:26 AM
                                Some 'reverse-engineering' of ZenHeikki Kultala2015/11/01 09:57 AM
                                  Some 'reverse-engineering' of ZenMaynard Handley2015/11/01 06:39 PM
                              Some 'reverse-engineering' of ZenUngo2015/11/01 02:05 PM
                  Some 'reverse-engineering' of Zenquzhujian2015/10/31 10:39 AM
                  Some 'reverse-engineering' of ZenPoindexter2015/11/04 06:10 AM
                    Some 'reverse-engineering' of Zenlurker2015/11/05 01:54 PM
                      Some 'reverse-engineering' of Zennobody2015/11/05 03:28 PM
                      The sad status of tech mediajuanrga2015/11/06 05:19 AM
                        The sad status of tech mediaJoel2015/11/06 06:45 PM
                        The sad status of tech mediaMatthias Waldhauer2015/11/07 03:12 PM
                          The sad status of tech mediaJoel2015/11/07 05:40 PM
Reply to this Topic
Name:
Email:
Topic:
Body: No Text
How do you spell tangerine? 🍊