isn't that an interesting contradiction? - gmp

By: Adrian (a.delete@this.acm.org), January 9, 2021 9:00 am
Room: Moderated Discussions
Adrian (a.delete@this.acm.org) on January 9, 2021 12:48 am wrote:
> Maynard Handley (name99.delete@this.name99.org) on January 8, 2021 3:59 pm wrote:
>
>
> > Do we have any sort of sense as to how much GMP has had care and optimization put into it for ARMv8/NEON
> > vs x86? It is still at the basic "get the damn thing working"
> > level, or has the sort of obsessive micro-optimization
> > one (eventually) expects in these sorts of libraries already been applied?
> > You can see some of the flux that's still happening in this space in the above
> > article, even with respect to a somewhat more mainstream library like BLAS.
> >
> >
>
> It seems that recent versions already have good ARM optimizations, but they are probably still improving.
>
> Even for AMD Zen 3 the optimizations keep improving, because I have tested my CPU with an older libgmp
> version giving a result of 7337, but a newer non-released yet libgmp version has reached 7816.
>
>

The gmpbench result of 6422 for Apple M1 was published by the libgmp team after adding to libgmp tuning specific for Apple M1.

The libgmp team has also added recently to libgmp tuning specific to AMD Zen 3 and they have published a score of 7816 for a Ryzen 7 5800X.

I had previously tested my own CPU with an older version of libgmp, without tuning for Zen 3, and the score was 7337, better than of any older CPU, but still not showing the full capabilities of Zen 3.

I have cloned now the libgmp repository, then I have built libgmp and I have run again the benchmark. The result was about the same as the one published by the libgmp maintainers.

Because the 6422 & 7816 scores were obtained in the same conditions, i.e. after adding the processor-specific tuning to libgmp, this should be a comparison of apples with apples.


So Zen 3 is around 22% faster than Apple M1 at bignum arithmetic, due to the reasons mentioned in a previous post, i.e. that when an execution resource reaches 100% utilization, the IPC remains clamped at the same value for both M1 and Zen 3, and then the CPU with the higher clock frequency is advantaged.






< Previous Post in ThreadNext Post in Thread >
TopicPosted ByDate
Ryzen 9 5000 series processor Phil9955112020/12/29 06:12 AM
  Ryzen 9 5000 series processor Adrian2020/12/29 08:31 AM
    Ryzen 9 5000 series processor Dummond D. Slow2020/12/29 11:33 AM
      Ryzen 9 5000 series processor Phil9955112020/12/29 05:09 PM
        Ryzen 9 5000 series processor Dummond D. Slow2020/12/29 07:00 PM
          Ryzen 9 5000 series processor anon2020/12/30 03:50 AM
          Ryzen 9 5000 series processor Foo_2020/12/30 03:50 AM
            Ryzen 9 5000 series processor Phil9955112020/12/30 06:22 AM
              Ryzen 9 5000 series processor Phil9955112020/12/30 06:25 AM
              Ryzen 9 5000 series processor Adrian2020/12/30 07:00 AM
            Ryzen 9 5000 series processor Linus Torvalds2020/12/30 01:00 PM
              Ryzen 9 5000 series processor Phil9955112020/12/31 07:45 AM
                Ryzen 9 5000 series processor Adrian2020/12/31 10:49 AM
                Ryzen 9 5000 series processor Linus Torvalds2020/12/31 01:05 PM
                  Ryzen 9 5000 series processor me2020/12/31 05:56 PM
                    Ryzen 9 5000 series processor Anon2020/12/31 06:48 PM
                      Ryzen 9 5000 series processor me2021/01/01 05:06 AM
                    Ryzen 9 5000 series processor Gabriele Svelto2021/01/01 08:10 AM
                      Ryzen 9 5000 series processor David Hess2021/01/01 08:37 AM
                        Ryzen 9 5000 series processor Jukka Larja2021/01/01 11:52 AM
                          Ryzen 9 5000 series processor Linus Torvalds2021/01/01 01:48 PM
                            Ryzen 9 5000 series processor Jukka Larja2021/01/01 11:28 PM
                              Ryzen 9 5000 series processor Linus Torvalds2021/01/02 01:21 PM
                                Ryzen 9 5000 series processor Adrian2021/01/02 02:17 PM
                                Ryzen 9 5000 series processor Anon2021/01/02 07:08 PM
                                Ryzen 9 5000 series processor Jukka Larja2021/01/03 12:10 AM
                                  Ryzen 9 5000 series processor David Hess2021/01/03 02:03 AM
                                    Ryzen 9 5000 series processor Jukka Larja2021/01/03 04:28 AM
                                  Threadrippers do have official ECC supportJukka Larja2021/01/03 09:32 PM
                                    Threadrippers do have official ECC supportBjörn Ragnar Björnsson2021/01/04 09:21 AM
                                ECC (or lack of)Tim McCaffrey2021/01/03 10:28 AM
                                  ECC (or lack of)Adrian2021/01/03 02:14 PM
                                    ECC (or lack of)Yuhong Bao2021/01/03 02:51 PM
                                      ECC (or lack of)Yuhong Bao2021/01/04 07:54 PM
                                        ECC (or lack of)Yuhong Bao2021/01/04 08:04 PM
                                AMD ECC not enabled but says it isIan Cutress2021/01/03 12:09 PM
                                  AMD ECC not enabled but says it isMaxwell2021/01/03 01:28 PM
                                  AMD ECC not enabled but says it isAdrian2021/01/03 01:50 PM
                                    AMD ECC not enabled but says it isGabriele Svelto2021/01/03 02:08 PM
                                      AMD ECC not enabled but says it isAdrian2021/01/03 02:34 PM
                                        AMD ECC not enabled but says it isDan Strother2021/01/03 08:00 PM
                                          AMD ECC not enabled but says it isMatt2021/01/04 01:29 AM
                                          AMD ECC not enabled but says it isGabriele Svelto2021/01/04 02:29 AM
                                            AMD ECC not enabled but says it isMatt2021/01/04 01:39 PM
                                          AMD ECC not enabled but says it isAdrian2021/01/04 06:49 AM
                                Ryzen 9 5000 series processor Jason Snyder2021/01/04 02:44 PM
                                  Ryzen 9 5000 series processor Brett2021/01/04 06:08 PM
                                  Ryzen 9 5000 series processor Linus Torvalds2021/01/05 01:29 PM
                                    Ryzen 9 5000 series processor Adrian2021/01/05 02:08 PM
                                    Ryzen 9 5000 series processor Emil Briggs2021/01/05 05:40 PM
                                      Ryzen 9 5000 series processor Gabriele Svelto2021/01/06 02:12 AM
                                    Ryzen 9 5000 series processor [ECC summary - Suitable for framing]Björn Ragnar Björnsson2021/01/05 07:29 PM
                                    Ryzen 9 5000 series processor 2021/01/06 10:45 AM
                                      Ryzen 9 5000 series processor Linus Torvalds2021/01/06 12:38 PM
                                        Ryzen 9 5000 series processor Emanuel Rylke2021/01/07 01:49 AM
                                          Ryzen 9 5000 series processor Jörn Engel2021/01/07 10:05 AM
                                            Read Only Page CorrectionsTerry Gray2021/01/07 10:47 AM
                                              Read Only Page Correctionsrwessel2021/01/07 12:00 PM
                                                Read Only Page CorrectionsTerry Gray2021/01/07 12:58 PM
                                              Read Only Page CorrectionsDavid Hess2021/01/10 08:37 PM
                                              Read Only Page Correctionsdmcq2021/01/11 04:32 AM
                                        Ryzen 9 5000 series processor Chester2021/01/07 06:00 AM
                                          Ryzen 9 5000 series processor Gabriele Svelto2021/01/07 06:33 AM
                                            Ryzen 9 5000 series processor Michael S2021/01/07 09:05 AM
                                              Ryzen 9 5000 series processor Linus Torvalds2021/01/07 11:26 AM
                                            Ryzen 9 5000 series processor rwessel2021/01/07 10:06 AM
                                          Ryzen 9 5000 series processor Linus Torvalds2021/01/07 11:04 AM
                                            Ryzen 9 5000 series processor Chester2021/01/07 05:19 PM
                                              OT L1 chache ECCMichael S2021/01/08 03:31 AM
                                                OT L1 chache ECCAdrian2021/01/08 09:54 AM
                                                  OT L1 chache ECCDavid Kanter2021/01/08 10:13 AM
                                                    Structure ProtectionsChester2021/01/08 03:14 PM
                                            Ryzen 9 5000 series processor Etienne Lorrain2021/01/08 02:18 AM
                                          Ryzen 9 5000 series processor Björn Ragnar Björnsson2021/01/07 06:42 PM
                                            Ryzen 9 5000 series processor Chester2021/01/07 09:14 PM
                                              Ryzen 9 5000 series processor Björn Ragnar Björnsson2021/01/07 09:26 PM
                                                Ryzen 9 5000 series processor Michael S2021/01/08 03:49 AM
                                    Ryzen 9 5000 series processor Jason Snyder2021/01/14 08:32 AM
                                      Ryzen 9 5000 series processor Gabriele Svelto2021/01/15 06:26 AM
                                        Ryzen 9 5000 series processor Jason Snyder2021/01/16 11:45 AM
                                          Ryzen 9 5000 series processor Jason Snyder2021/01/16 01:27 PM
                              Ryzen 9 5000 series processor Etienne Lorrain2021/01/07 02:21 AM
                                Ryzen 9 5000 series processor anon2021/01/07 03:21 AM
                                  Ryzen 9 5000 series processor Etienne Lorrain2021/01/07 04:22 AM
                                    Ryzen 9 5000 series processor Konrad Schwarz2021/01/07 06:27 AM
                                  Ryzen 9 5000 series processor Adrian2021/01/07 05:22 AM
                                  Ryzen 9 5000 series processor rwessel2021/01/07 10:25 AM
                                    Ryzen 9 5000 series processor Jörn Engel2021/01/07 05:29 PM
                                      Ryzen 9 5000 series processor rwessel2021/01/07 07:47 PM
                                        Ryzen 9 5000 series processor David Hess2021/01/11 05:26 AM
                                          Ryzen 9 5000 series processor Adrian2021/01/11 06:25 AM
                                          Ryzen 9 5000 series processor rwessel2021/01/11 08:24 AM
                                      Ryzen 9 5000 series processor Mark Roulo2021/01/07 08:00 PM
                                        Ryzen 9 5000 series processor Björn Ragnar Björnsson2021/01/07 08:20 PM
                                  Ryzen 9 5000 series processor David Hess2021/01/11 05:16 AM
                      Ryzen 9 5000 series processor Jukka Larja2021/01/01 11:43 AM
                        Ryzen 9 5000 series processor David Hess2021/01/01 01:31 PM
                          Ryzen 9 5000 series processor Dan Strother2021/01/01 02:12 PM
                        Ryzen 9 5000 series processor Adrian2021/01/01 02:28 PM
                          Ryzen 9 5000 series processor vs. M1Adrian2021/01/02 03:45 AM
                            Ryzen 9 5000 series processor vs. M1Dummond D. Slow2021/01/02 01:50 PM
                              Ryzen 9 5000 series processor vs. M1Adrian2021/01/02 03:00 PM
                                Ryzen 9 5000 series processor vs. M1Dummond D. Slow2021/01/04 01:11 PM
                            Ryzen 9 5000 series processor vs. M1Dummond D. Slow2021/01/07 11:43 AM
                              Ryzen 9 5000 series processor vs. M1Adrian2021/01/08 09:28 AM
                                Ryzen 9 5000 series processor vs. M1 Sorry, typo, correction hereAdrian2021/01/08 09:31 AM
                                  Ryzen 9 5000 series processor vs. M1 (vs. Rocket Lake)Dummond D. Slow2021/01/22 08:02 AM
                            isn't that an interesting contradiction?hobold2021/01/08 01:44 PM
                              isn't that an interesting contradiction?Maynard Handley2021/01/08 02:27 PM
                              isn't that an interesting contradiction?Adrian2021/01/08 03:21 PM
                                isn't that an interesting contradiction?Maynard Handley2021/01/08 04:59 PM
                                  isn't that an interesting contradiction?Maynard Handley2021/01/08 05:34 PM
                                    isn't that an interesting contradiction?Maynard Handley2021/01/08 05:34 PM
                                    isn't that an interesting contradiction?Maynard Handley2021/01/08 05:35 PM
                                      isn't that an interesting contradiction?Adrian2021/01/09 01:55 AM
                                  isn't that an interesting contradiction?Adrian2021/01/09 01:48 AM
                                    isn't that an interesting contradiction? - gmpAdrian2021/01/09 09:00 AM
                                      isn't that an interesting contradiction? - gmpnone2021/01/11 02:26 AM
                                        isn't that an interesting contradiction? - gmpAdrian2021/01/11 05:34 AM
                                          Fully agree with you, I was just giving some data :-) (NT)none2021/01/11 06:17 AM
                                          isn't that an interesting contradiction? - gmpanon2021/01/11 01:09 PM
                                            isn't that an interesting contradiction? - gmpAdrian2021/01/12 01:54 AM
                                              isn't that an interesting contradiction? - gmpnone2021/01/12 02:15 AM
                                                isn't that an interesting contradiction? - gmpAdrian2021/01/12 04:37 AM
                                                  isn't that an interesting contradiction? - gmpnone2021/01/12 04:53 AM
                                                    uses of int multiplyhobold2021/01/12 03:51 PM
                                                      uses of int multiplynone2021/01/13 02:11 AM
                                                      uses of int multiplyJörn Engel2021/01/13 01:06 PM
                                                  isn't that an interesting contradiction? - gmpWilco2021/01/12 05:17 AM
                                                    isn't that an interesting contradiction? - gmpAdrian2021/01/12 06:07 AM
                        Ryzen 9 5000 series processor Gabriele Svelto2021/01/01 04:31 PM
                          Ryzen 9 5000 series processor Jukka Larja2021/01/01 10:58 PM
                            Ryzen 9 5000 series processor Gabriele Svelto2021/01/02 06:51 AM
                              Ryzen 9 5000 series processor Jukka Larja2021/01/02 08:57 AM
                                Ryzen 9 5000 series processor me2021/01/02 05:30 PM
                                  Ryzen 9 5000 series processor Jukka Larja2021/01/02 11:43 PM
                        Ryzen 9 5000 series processor Björn Ragnar Björnsson2021/01/01 09:41 PM
                          Ryzen 9 5000 series processor Jukka Larja2021/01/01 10:53 PM
                            Ryzen 9 5000 series processor Adrian2021/01/02 02:03 AM
                              Ryzen 9 5000 series processor Jukka Larja2021/01/02 08:39 AM
                          Ryzen 9 5000 series processor Adrian2021/01/02 01:52 AM
                          Ryzen 9 5000 series processor me2021/01/02 06:56 AM
                            Ryzen 9 5000 series processor Michael S2021/01/02 12:41 PM
                              Ryzen 9 5000 series processor Adrian2021/01/02 01:43 PM
                              Ryzen 9 5000 series processor Jukka Larja2021/01/02 11:50 PM
                          Crucial/Micron ECC UDIMMsGabriele Svelto2021/01/02 07:09 AM
                            Crucial/Micron ECC UDIMMsMaxwell2021/01/02 10:45 AM
                              Crucial/Micron ECC UDIMMsYuhong Bao2021/01/02 07:29 PM
                  Ryzen 9 5000 series processor Phil9955112021/01/03 08:46 AM
  Ryzen 9 5000 series processor H_Heckuba2021/01/03 01:06 PM
Reply to this Topic
Name:
Email:
Topic:
Body: No Text
How do you spell avocado?