PCEVA,PC绝对领域,探寻真正的电脑知识
  • 内容展现
  • 最新评论
苹果M1中隐藏神秘协处理器
2021-2-3 10:46| 发布者: 绝对有料| 查看: 4745| 评论: 0|原作者: 绝对有料
摘要: 近日开发人员道格·约翰逊通过反向工程发现苹果M1处理器中存在名为AMX的协处理器,它不同于M1片上系统(SoC)中的神经网络引擎,甚至没有出现在苹果的各种宣传资料当中。这个神秘的AMX协处理器可以高效率地执行矩 .. ...
近日开发人员道格·约翰逊通过反向工程发现苹果M1处理器中存在名为AMX的协处理器,它不同于M1片上系统(SoC)中的神经网络引擎,甚至没有出现在苹果的各种宣传资料当中。


这个神秘的AMX协处理器可以高效率地执行矩阵运算(包括加、减、缩放和乘积操作),加速诸如图像处理、机器学习、语音和手写识别、人脸识别、数据压缩、音频和视频处理等任务。这或许就是M1能够在一些性能测试中击败酷睿i9等x86处理器的原因。


AMX协处理器同大家熟知的神经网络引擎有一定的区别,GPU和神经网络引擎属于加速器范畴。CPU、协处理器和加速器可以通过共享数据总线交换数据,CPU通常控制内存访问,而加速器通常具有自己的专用内存。加速器的这种架构可以在大规模计算中得到回报,但由于协调等方面的原因,对于较小的任务开销太高。

协处理器则不同,它可以监视从内存读取到CPU的指令流,并对特定指令做出反应,与此同时CPU会忽略这些指令,或者帮助协处理器处理这些指令,延迟更低。

协处理器执行的指令可以放在常规代码中,而不是单独的内存缓冲区中。对于涉及矩阵处理器的较小工作负载,AMX协处理器的效率将优于神经网络引擎。

当然要实现以上目标,苹果需要在微处理器的指令集架构中定义新的特定指令,使协处理器和CPU紧密集成。苹果并未公开AMX协处理器,而是为矩阵相关的数据计算提供了一些特殊的库或框架,比如图形格式转换和处理的vImage、线性代数行业标准BLAS、用于运行神经网络和训练的BNNS、用于信号处理的vDSP、用于求解线性方程组等运算的LAPACK。苹果向开发者提供这些库或框架,而无需关心它的底层实现方法。根据nod.ai的测试结果证明,苹果AMX协处理器执行矩阵乘法运算的效率比ARM v8.6的标准NEON指令高出约2倍,说明苹果的自定义AMX协处理器在机器学习和高性能计算工作中极具优势。

无独有偶,索尼PlayStation 5的片上处理器(SoC)也使用了大量定制设计,在CPU部分仍采用x86架构ZEN2核心的同时,RDNA2.0架构的GPU进行了深度定制以提供更强性能。在我们B站视频账号上也对此有过介绍:https://www.bilibili.com/video/BV1bg4y1873K

PS5的图形处理核心删除了RDNA2.0 GPU中对VRS、Mesh Shader以及DXR等DirectX 12 Ultimate特性的支持,取而代之的是Geometry Engine和Intersection Engine,但对前面那些特效有同样的支持,只是实现细节与名称有所不同。

Geometry Engine为开发者提供了更好的多边形控制能力和地形隐面消除能力,Intersection Engine主要负责光线追踪的硬件加速处理,实现空间反射、环境光遮蔽、阴影画、全局光照等功能。更具体的细节需要索尼方面逐步解密才可了解。

SoC虽然行业中早已在定制芯片中采用,但由于商业保密的原因,这方面公开资料很少。作为电脑玩家,如果仅以DIY圈子内所了解的公开信息去看待这些定制芯片,往往会发现很多现象无法解释,进而得到错误结论,这是需要注意的。


收藏 邀请
0
本文版权归 PCEVA,PC绝对领域,探寻真正的电脑知识 原作者所有 转载请注明出处

最新评论

热门评论
    返回顶部