Apple Math/Matrix (?) Extensions

By: Maynard Handley (name99.delete@this.name99.org), September 7, 2019 8:05 pm
Room: Moderated Discussions
Maynard Handley (name99.delete@this.name99.org) on September 7, 2019 5:34 pm wrote:
> Mark Roulo (nothanks.delete@this.xxx.com) on September 7, 2019 5:14 pm wrote:

After more thought, my current suspicion is that this is something very different from what people have been thinking.
I've mentioned before that Apple will need a DSP for their cellular modem, and also for their (I assume) WiFi 6 chip. One obvious solution to this (easy to put together, and probably actually pretty damn good) would be a Chinook (existing A12 v8.3 core, used as the controller for GPU, NPU and suchlike) with DSP extensions.
Something like that would need code in LLVM to allow engineers to write firmware, but it wouldn't be customer facing (no issues with long term support, no dealing with ARM about whether they are or are not allowed to modify the ARM instruction set).

I especially like this interpretation because, as part of the larger picture, I don't see why Apple would avoid SVE. SVE is actually REALLY nice. For restricted role of "RF algorithm implementation" a DSP-like core, closely tailored to the problem, makes area and power sense. But for a general core, SVE is a much better solution.

Well, we'll see in just a few days.

(None of this invalidates my point below. I think SVE WILL come, and will not be a compatibility problem -- on *OS -- for the reasons I give.
As for macOS, who knows? Maybe the plan there is a continuation of what they have today, apps encouraged through the app store, but not compulsory?
Maybe a weaker tier of the app store that provides app installation/update/app thinning, etc but no browsing and sales features -- you buy the app somewhere and what you buy is a token to redeem at the app store?
Maybe you can still also install old-style binaries -- but Apple makes zero promises as to any sort of compatibility backwards or forwards, and for almost every use case it's just not worth the hassle?)


> > Maynard Handley (name99.delete@this.name99.org) on September 7, 2019 4:30 pm wrote:
> > > And yes, sure, if you think that the second amendment gives you the right to feed assembly to any
> > > "computer" you purchase, then this will make you unhappy. Might I point out that it should have
> > > been clear in 2007 that, if you felt that way, then maybe buying Apple products was not for you.
> > > Apple ain't gonna change; and the value proposition in this scheme is NOT all on their side.
> > > It's astonishingly pleasant, as a customer, especially one who remembers the computer world
> > > of the 80s or 90s, to be part of an environment where you buy a new watch, new aTV, new iPhone,
> > > and everything just transfers over. (The transfer process is STILL too messy, in the opinion
> > > of everyone; but it gets better every year. aTV is pretty much the gold standard; but even
> > > iOS got noticeably better a year ago, and will be noticeably better again this year.)
> >
> > I think that making source code that previously ran and was legal no longer work is bad.
> >
> > Even for Apple.
> >
> > If these (hypothetical?) opcodes are exposed via intrinsics (much like SSE, AVX and Neon) then I'd be quite
> > disappointed if they stopped working on future Apple CPUs.
>
> You still haven't internalized HOW Apple's SW setup currently works, have you?
>
> (a) You're assuming Apple WILL expose these as intrinsics. Why? Vectorization works pretty well in compilers
> these days. Apple provides libraries. If you provide them with a compelling use case they MAY allow you access
> to the intrinsics --- but "I think I can make the code run 5% faster" is likely not a compelling use case.
>
> Does Apple allow you to write assembly (even as intrinsics) for the GPU? For the NPU?
>
> (b) Why would any new CPU EVER need to emulate deprecated AMX instructions? How would even get an AMX-containing
> binary onto a new iPhone? The only way binaries get to the iPhone is through the app store; and the app store
> will just not download to your iPhone a binary that uses instructions not present on your core.
>
> (Perhaps you assume that when you move to a new iPhone the binaries are physically copied over?
> Wrong wrong wrong. The DATA for the apps is copied over, but new -- appropriate to the new hardware,
> so with different app thinning etc -- binaries are pulled in from the app store.)

< Previous Post in ThreadNext Post in Thread >
TopicPosted ByDate
Apple Math/Matrix (?) Extensions@never_released2019/09/07 05:38 AM
  Apple Math/Matrix (?) ExtensionsAdrian2019/09/07 06:24 AM
  Apple Math/Matrix (?) Extensionsanon2019/09/07 11:01 AM
    Apple Math/Matrix (?) ExtensionsMaynard Handley2019/09/07 04:30 PM
      Apple Math/Matrix (?) ExtensionsMark Roulo2019/09/07 05:14 PM
        Apple Math/Matrix (?) ExtensionsMaynard Handley2019/09/07 05:34 PM
          Apple Math/Matrix (?) ExtensionsMaynard Handley2019/09/07 08:05 PM
            Apple Math/Matrix (?) Extensions@never_released2019/09/08 09:40 AM
              Apple Math/Matrix (?) ExtensionsMaynard Handley2019/09/08 10:51 AM
        Apple Math/Matrix (?) ExtensionsDoug S2019/09/07 11:33 PM
          Apple Math/Matrix (?) ExtensionsMichael S2019/09/08 01:24 AM
      Congratulations, you just described AndroidAnon2019/09/08 12:29 PM
        Congratulations, you just described AndroidMaynard Handley2019/09/08 12:53 PM
          .NET twenty years agoJames2019/09/08 04:06 PM
    SVE only needs 128-bit vectorsHeikki Kultala2019/09/07 11:14 PM
      SVE only needs 128-bit vectorsMichael S2019/09/08 01:08 AM
        Zero need to have anything vector-len-spacific then the compiler vectorizes a loopHeikki Kultala2019/09/08 02:24 AM
          Zero need to have anything vector-len-spacific then the compiler vectorizes a loopMichael S2019/09/08 03:26 AM
        SVE only needs 128-bit vectorsMaynard Handley2019/09/08 09:29 AM
          SVE only needs 128-bit vectorsMichael S2019/09/08 09:46 AM
            SVE only needs 128-bit vectorsMaynard Handley2019/09/08 10:49 AM
              SVE only needs 128-bit vectorsanon2019/09/08 05:37 PM
      SVE only needs 128-bit vectorsanon2019/09/08 01:31 AM
        SVE only needs 128-bit vectorsMichael S2019/09/08 02:15 AM
          SVE only needs 128-bit vectorsanon2019/09/08 02:29 AM
        SVE only needs 128-bit vectorsHeikki Kultala2019/09/08 02:28 AM
          SVE only needs 128-bit vectorsanon2019/09/08 02:37 AM
            SVE only needs 128-bit vectorsHeikki Kultala2019/09/08 02:47 AM
              SVE only needs 128-bit vectorsanon2019/09/08 03:20 AM
          SVE only needs 128-bit vectorsMichael S2019/09/08 03:40 AM
            SVE only needs 128-bit vectorsdmcq2019/09/08 04:39 AM
        SVE only needs 128-bit vectorsRicardo B2019/09/08 11:30 AM
          SVE only needs 128-bit vectorsanon2019/09/08 01:42 PM
            SVE only needs 128-bit vectorsRicardo B2019/09/08 02:15 PM
              SVE only needs 128-bit vectorsanon2019/09/08 04:02 PM
                SVE only needs 128-bit vectorsRicardo B2019/09/08 07:14 PM
                  SVE only needs 128-bit vectorsGabriele Svelto2019/09/09 12:21 AM
                    SVE only needs 128-bit vectorsRicardo B2019/09/09 12:41 AM
                      LOL (NT)Gabriele Svelto2019/09/09 03:13 AM
                  SVE only needs 128-bit vectorsanon2019/09/09 02:23 AM
                    SVE only needs 128-bit vectorsRicardo B2019/09/09 11:21 PM
                      SVE only needs 128-bit vectorsMichael S2019/09/10 01:13 AM
                        SVE only needs 128-bit vectorsanon2019/09/10 02:04 AM
                        SVE only needs 128-bit vectorsRicardo B2019/09/10 07:45 AM
                      SVE only needs 128-bit vectorsanon2019/09/10 01:37 AM
                        SVE only needs 128-bit vectorsMichael S2019/09/10 02:12 AM
                          SVE only needs 128-bit vectorsanon2019/09/10 03:14 AM
                            SVE only needs 128-bit vectors-.-2019/09/10 05:01 PM
                              SVE only needs 128-bit vectorsanon2019/09/10 05:37 PM
                                SVE only needs 128-bit vectorsanon2019/09/10 05:54 PM
                                  SVE only needs 128-bit vectorsMaynard Handley2019/09/10 07:02 PM
                                    SVE only needs 128-bit vectorsanon2019/09/11 02:56 AM
                                      SVE only needs 128-bit vectorsMaynard Handley2019/09/11 08:45 AM
                                        SVE only needs 128-bit vectorsanon2019/09/11 10:19 AM
                                  SVE only needs 128-bit vectors-.-2019/09/10 08:41 PM
                                    SVE only needs 128-bit vectorsanon2019/09/11 03:13 AM
                                      SVE only needs 128-bit vectors-.-2019/09/11 06:18 PM
                                        SVE only needs 128-bit vectorsanon2019/09/12 01:25 AM
                              AVX128 vs AVX256 vx SSEAnon2019/09/10 05:45 PM
                                AVX128 vs AVX256 vx SSE-.-2019/09/10 08:44 PM
                                  AVX128 vs AVX256 vx SSE vs SVEdmcq2019/09/11 01:06 PM
                        SVE only needs 128-bit vectorsRicardo B2019/09/10 08:06 AM
                          SVE only needs 128-bit vectorsanon2019/09/10 09:43 AM
                            SVE only needs 128-bit vectorsRicardo B2019/09/10 04:44 PM
                              SVE only needs 128-bit vectorsanon2019/09/10 05:20 PM
                                SVE only needs 128-bit vectorsnone2019/09/11 12:38 AM
                                  SVE only needs 128-bit vectorsanon2019/09/11 02:55 AM
                                    SVE only needs 128-bit vectorsnone2019/09/11 04:06 AM
                                      SVE only needs 128-bit vectorsanon2019/09/11 04:24 AM
                                        SVE only needs 128-bit vectorsMichael S2019/09/11 06:18 AM
                                          SVE only needs 128-bit vectorsanon2019/09/11 07:16 AM
                  SVE only needs 128-bit vectorsanon32019/09/09 12:37 PM
                    SVE only needs 128-bit vectorsRicardo B2019/09/09 10:09 PM
  Apple Math/Matrix (?) Co-processorHans de Vries2019/09/08 12:07 PM
    Apple Math/Matrix (?) Co-processor@never_released2019/09/08 12:19 PM
    Apple Math/Matrix (?) Co-processorMaynard Handley2019/09/08 01:06 PM
      Apple Math/Matrix (?) Co-processor@never_released2019/09/08 01:44 PM
    Apple Math/Matrix (?) Co-processorGabriele Svelto2019/09/09 12:23 AM
Reply to this Topic
Name:
Email:
Topic:
Body: No Text
How do you spell avocado?