Thoughts and questions on the Cortex A9

By: Gabriele Svelto (gabriele.svelto.delete@this.gmail.com), September 26, 2009 2:46 am
Room: Moderated Discussions
Skimming through the information available on the Cortex A9 I have noticed that there are quite a bit of peculiarities in the design. Here's a quick run-down to fuel discussion:

- Out-of-order completion is mentioned though there is very little information about it. The only other mention I found was that an instructions 'releases the resources it is consuming early'. Maybe it means that an instruction can write-back its result and free the renamed register before completion if it safe to do so?

- It seems that the LSU is skewed as they mention a single-cycle load-to-use penalty (same as on the Cortex A8). A hardware prefetcher is also mentioned but there is no information about it.

- Some sort of load-store forwarding mechanism is mentioned in the white paper though it is not described how it works or what it does exactly. Maybe back-to-back load/store couples have a lower latency because the data is allowed to bypass some stages and go directly to the store queue?

- The L1s in Cortex A8 were PIPT, I believe this still holds true for the A9. This means that the TLB must be fairly small, a potentially significant disadvantage in more desktop-oriented workloads. I wonder if there is a second-level TLB in there.

- When configured with an L2 cache, the L2 is exclusive (yay for K7!), certainly a good thing for the smaller incarnations of the A9.

- The A9 has fast loop mode for lower-power operation but in the diagrams available it is depicted as being before the decode stage. This is similar to Conroe/Penryn cores which is strange because it comes after the pre-decode stage, something that the A9 shouldn't have. I would have expected it after the decode stage (like on Nehalem) so I was wondering if its sole purpose is to shut off the L1 I-cache for power savings.

- Finally it seems that they put a lot of effort into making I/O operations as well as thread-related operations very fast. The ACP for example is absolutely brilliant: on current consoles it is normal practice to lock part of the L2 to and write the GPU command buffer into it, then send it over using DMA to save an unnecessary read-write-read copy. Having this done transparently is simply excellent. It seems to me that they've done quite some work to make operations which usually disrupt an OoOE actually run very fast (peripheral I/O, TLS access and cache-to-cache transfers). On this topic I'd like to know more about the GIQ too because interrupt handling is an area which is often underestimated from a performance POV.
 Next Post in Thread >
TopicPosted ByDate
Thoughts and questions on the Cortex A9Gabriele Svelto09/26/09 02:46 AM
  Thoughts and questions on the Cortex A9none09/26/09 03:27 AM
    Thoughts and questions on the Cortex A9jeff09/27/09 05:06 AM
      Thoughts and questions on the Cortex A9Michael S09/27/09 05:29 AM
        Thoughts and questions on the Cortex A9none09/27/09 06:01 AM
          Thoughts and questions on the Cortex A9Howard Chu09/27/09 10:39 AM
      Thoughts and questions on the Cortex A9Wilco09/27/09 07:03 AM
        Thoughts and questions on the Cortex A9jeff09/27/09 08:00 AM
          Thoughts and questions on the Cortex A9a reader09/27/09 08:17 AM
            Thoughts and questions on the Cortex A9David Kanter09/27/09 08:37 AM
              Thoughts and questions on the Cortex A9a reader09/27/09 08:46 AM
                Thoughts and questions on the Cortex A9Mat10/01/09 01:04 PM
                  Thoughts and questions on the Cortex A9Wilco10/01/09 06:09 PM
                    Thoughts and questions on the Cortex A9anon10/01/09 08:19 PM
            Thoughts and questions on the Cortex A9RagingDragon09/28/09 05:11 PM
          Thoughts and questions on the Cortex A9Linus Torvalds09/27/09 09:05 AM
            OOO hw vs SW&in-order hwno thanks09/27/09 04:47 PM
              OOO hw vs SW&in-order hwLinus Torvalds09/28/09 06:22 AM
                OOO hw vs SW&in-order hw?09/28/09 11:37 AM
                  OOO hw vs SW&in-order hwRagingDragon09/28/09 05:22 PM
                  OOO hw vs SW&in-order hwMegol09/29/09 04:35 AM
                OOO hw vs SW&in-order hwAnders Jensen09/28/09 11:50 PM
                  OOO hw vs SW&in-order hwLinus Torvalds09/29/09 07:44 AM
                    OOO hw vs SW&in-order hwMark Roulo09/29/09 09:58 AM
                      OOO hw vs SW&in-order hwLinus Torvalds09/29/09 10:30 AM
                        3- and 4-issue in-order CPUsMark Roulo09/29/09 11:06 AM
                          3- and 4-issue in-order CPUsLinus Torvalds09/29/09 11:29 AM
                          3- and 4-issue in-order CPUsGian-Carlo Pascutto09/30/09 12:35 AM
                          3- and 4-issue in-order CPUsMichael S09/30/09 02:01 AM
                    OOO hw vs SW&in-order hwmpx09/30/09 04:14 AM
                    OOO hw vs SW&in-order hwPun Zu10/02/09 02:44 AM
                      OOO hw vs SW&in-order hwnone10/02/09 05:22 AM
                      OOO hw vs SW&in-order hwLinus Torvalds10/02/09 07:11 AM
                        OOO hw vs SW&in-order hwa reader10/02/09 09:30 AM
                          OOO hw vs SW&in-order hwLinus Torvalds10/02/09 09:59 AM
                            MoorestownDavid Kanter10/02/09 10:59 AM
                              What's the difference between Moorestown and Pine Trail cores?anon10/03/09 08:37 PM
                              Moorestownnone11/03/09 04:34 PM
                                MoorestownAnon11/04/09 03:17 PM
                                  Moorestownnone11/05/09 01:38 AM
                                    MoorestownDavid Kanter11/05/09 04:45 PM
                                      MoorestownIntelUser200011/06/09 04:17 AM
                                      MoorestownAnon11/06/09 01:51 PM
                                        Moorestownnone11/07/09 07:07 AM
                            OOO hw vs SW&in-order hwAnon10/02/09 07:55 PM
                              Cluebat for graphicsDavid Kanter10/02/09 09:19 PM
                                Cluebat for graphicsAnon10/03/09 05:45 PM
                                  Cluebat for graphicsDavid Kanter10/04/09 01:57 AM
                                    Cluebat for graphicsAnon10/04/09 08:15 PM
                                      Cluebat for graphicsDavid Kanter10/05/09 03:09 AM
                                        Cluebat for graphicsAnon10/05/09 03:36 PM
                                          Cluebat for graphicsDavid Kanter10/05/09 09:54 PM
                                            Cluebat for graphicsAnon10/06/09 05:58 PM
                              OOO hw vs SW&in-order hwLinus Torvalds10/03/09 06:58 AM
                            OOO hw vs SW&in-order hwslacker10/02/09 09:11 PM
                            Linux graphics driversRagingDragon10/03/09 08:27 PM
                              Linux graphics driversanon10/04/09 07:15 AM
                                Linux graphics driversnone10/04/09 10:12 AM
            Thoughts and questions on the Cortex A9jeff09/27/09 06:31 PM
        Thoughts and questions on the Cortex A9someone09/27/09 09:30 AM
          Thoughts and questions on the Cortex A9none09/27/09 10:09 AM
            Thoughts and questions on the Cortex A9Wilco09/27/09 11:35 AM
              Thoughts and questions on the Cortex A9someone09/27/09 11:55 AM
                Thoughts and questions on the Cortex A9Wilco09/28/09 02:08 AM
                  Thoughts and questions on the Cortex A9someone09/28/09 05:58 AM
                    Thoughts and questions on the Cortex A9none09/28/09 06:18 AM
                      Thoughts and questions on the Cortex A9someone09/28/09 07:35 AM
                    Thoughts and questions on the Cortex A9Wilco09/28/09 08:25 AM
                      Thoughts and questions on the Cortex A9Michael S09/28/09 11:02 AM
                        Thoughts and questions on the Cortex A9Wilco09/29/09 01:35 AM
                    Thoughts and questions on the Cortex A9Chuck09/28/09 07:15 PM
              samplesAM09/27/09 11:20 PM
                samplesWilco09/28/09 01:51 AM
                  samplesAM09/28/09 04:16 AM
              Shrinks and process techDavid Kanter09/29/09 01:22 AM
            Thoughts and questions on the Cortex A9someone09/27/09 11:42 AM
              Thoughts and questions on the Cortex A9none09/27/09 12:52 PM
              Atom to stay in-oder or go OoO?AM09/27/09 11:09 PM
                Atom to stay in-oder or go OoO?Ungo09/28/09 05:34 AM
                  Atom to stay in-oder or go OoO?a reader09/28/09 10:15 AM
                    Atom to stay in-oder or go OoO?anon09/28/09 07:25 PM
                  Atom to stay in-oder or go OoO?AM09/30/09 03:32 AM
                    Atom to stay in-oder or go OoO?baxeel09/30/09 08:25 AM
                      Atom to stay in-oder or go OoO?AM09/30/09 11:12 PM
                    Atom to stay in-oder or go OoO?Ungo10/01/09 03:00 AM
                      Atom to stay in-oder or go OoO?AM10/01/09 05:08 AM
                        Atom to stay in-oder or go OoO?anonymous10/01/09 05:33 AM
                          Atom to stay in-oder or go OoO?AM10/03/09 07:24 AM
                        Atom to stay in-oder or go OoO?Pun Zu10/02/09 01:30 AM
                        Atom to stay in-oder or go OoO?Ungo10/02/09 01:11 PM
                          Atom to stay in-oder or go OoO?AM10/03/09 07:22 AM
                            Atom to stay in-oder or go OoO?Ungo10/03/09 02:53 PM
                              Atom to stay in-oder or go OoO?AM10/04/09 08:44 AM
                                Atom to stay in-oder or go OoO?David Kanter10/04/09 11:02 PM
                                  Atom to stay in-oder or go OoO?AM10/05/09 07:18 AM
                                    Atom to stay in-oder or go OoO?David Kanter10/05/09 11:12 AM
                                      Atom to stay in-oder or go OoO?AM10/06/09 04:51 AM
                                        Atom to stay in-oder or go OoO?anonymous10/06/09 07:58 AM
                                        Do you have any proof?David Kanter10/06/09 09:58 AM
                                          Do you?AM10/06/09 11:30 PM
                                            Of course I do!anonymous10/07/09 05:58 AM
                                              Thanks :-)AM10/08/09 03:17 AM
                                                Thanks :-)anonymous10/08/09 05:52 AM
                                                  Thanks :-)AM10/09/09 03:13 AM
                                                    Thanks :-)anonymous10/09/09 06:03 AM
                                                    Thanks :-)Foo_10/09/09 06:47 AM
                                                      Thanks :-)AM10/10/09 01:15 AM
                                            That's what I thought...David Kanter10/07/09 09:00 AM
                                              That's what I thought...AM10/08/09 03:26 AM
                                                That's what I thought...anonymous10/08/09 06:02 AM
                                                  let's see...AM10/09/09 03:09 AM
                                                    let's see...anonymous10/09/09 05:43 AM
                                                      let's see...AM10/09/09 05:52 AM
                                                        let's see...anonymous10/09/09 06:15 AM
                                                          let's see...AM10/10/09 01:18 AM
                Atom to stay in-oder or go OoO?someone09/28/09 06:09 AM
          I call Trollhobold09/28/09 04:51 AM
            I call Trollsomeone09/28/09 06:15 AM
              OT: categories of motivation in a forumhobold09/29/09 06:01 AM
          Thoughts and questions on the Cortex A9Michael S09/28/09 10:43 AM
            Thoughts and questions on the Cortex A9a reader09/28/09 04:12 PM
              Thoughts and questions on the Cortex A9someone else09/29/09 12:25 AM
                Why Cortex A9?hobold09/29/09 07:20 AM
                  Why Cortex A9?someone else09/29/09 10:57 AM
                    Why Cortex A9?Richard Cownie09/29/09 06:09 PM
                      Why Cortex A9?hobold09/30/09 12:38 AM
                        Why Cortex A9?Richard Cownie09/30/09 06:49 AM
                          Why Cortex A9?hobold09/30/09 07:46 AM
                            Why Cortex A9?none09/30/09 07:56 AM
                              Marvell Sheeva and plug computingRichard Cownie09/30/09 09:03 AM
                              Why Cortex A9?Michael S09/30/09 10:07 AM
                                Why Cortex A9?none09/30/09 10:40 AM
                                Why Cortex A9?Gabriele Svelto09/30/09 12:43 PM
                                  ARM architectural licenseDavid Kanter09/30/09 05:57 PM
                                    ARM architectural licensea reader10/01/09 07:25 AM
                                      ARM architectural licenseRichard Cownie10/01/09 08:21 AM
                                Why Cortex A9?slacker09/30/09 07:12 PM
                                  ARM architectural licenseDavid Kanter09/30/09 07:16 PM
                                  Why Cortex A9?Michael S10/01/09 07:45 AM
                                    Why Cortex A9?slacker10/02/09 02:41 AM
                                      Why Cortex A9?Richard Cownie10/02/09 10:28 AM
                                        Questions...David Kanter10/02/09 10:56 AM
                                          Questions...Richard Cownie10/02/09 11:29 AM
                                            Questions...Wilco10/02/09 01:05 PM
                                          Questions...slacker10/02/09 08:51 PM
                                        Why Cortex A9?slacker10/02/09 08:44 PM
                            Why Cortex A9?David W. Hess09/30/09 08:42 AM
    Thoughts and questions on the Cortex A9Gabriele Svelto09/28/09 01:28 AM
  Thoughts and questions on the Cortex A9Wilco09/26/09 07:38 AM
    Thoughts and questions on the Cortex A9Gabriele Svelto09/28/09 01:38 AM
      Thoughts and questions on the Cortex A9Costanza10/01/09 03:45 PM
    Thoughts and questions on the Cortex A9sylt09/28/09 05:54 AM
      Thoughts and questions on the Cortex A9Wilco09/29/09 01:15 AM
Reply to this Topic
Name:
Email:
Topic:
Body: No Text
How do you spell green?