苹果近日发布了将近半小时的开发者视频,详细介绍了苹果 M3 系列芯片和 A17 Pro 芯片中的诸多技术细节,并通过基础术语解释了改进原理等。
视频中表示开发者使用 Metal API 构建应用程序过程中,不需要更改现有应用程序代码,就能看到 M3 和 A17 Pro 的性能提升。这些芯片组利用动态缓存(Dynamic Caching)、硬件加速光线追踪和硬件加速网格映射等,大幅提高了 GPU 表现。
动态缓存
苹果在 M3 和 A17 Pro 中引入了下一代着色器核心,应用调用 GPU 核心时,这些着色器可以更加高效运行,大大提高输出性能。
通常,GPU 只能根据执行操作期间执行操作中的最高带宽进程分配寄存器内存。因此,如果操作的某一部分需要比其他部分多得多的寄存器内存,则该操作将为给定进程使用更多的寄存器内存。
动态缓存允许 GPU 为其执行的每个操作分配恰到好处的寄存器内存量,释放以前不可用的寄存器内存,允许并行执行更多着色器任务。
灵活的片上存储器
以前,片上存储器(on-chip memory)会为寄存器、线程组和带有缓冲区缓存的切片存储器分配固定的内存。这意味着,如果一个操作使用一种类型的内存比另一种类型的内存更多,那么大部分内存就会被闲置。
苹果调整让所有片上存储器都可以用于存储器类型的缓存。严重依赖线程组内存的操作可以利用片上内存的整个跨度,甚至可以将操作溢出到主内存中。
着色器内核可动态调整片上内存占用率,以最大限度地提高性能,这意味着减少开发者的应用优化时间。
着色器核心的高性能 ALU 管线
苹果建议开发人员在其程序中执行 FP16 数学运算,但高性能 ALU 并行执行整数、FP32 和 FP16 的不同组合。
指令在并行执行的不同操作中执行,这意味着 ALU 利用率会随着占用率的提高而提高。
如果不同的操作包含相同的 FP32 或 FP16 指令,这些指令将在不同的时间点执行,则可以重叠执行以增加并行性。
硬件加速图形管道
硬件加速大幅加快光线追踪过程,重要的交叉计算从 GPU 功能中移除。由于硬件负责部分计算,因此允许并行展开更多操作,从而加快硬件组件的光线追踪速度。
硬件加速网格着色使用类似的方法。它采用几何计算管道的中间,并将其传递给专用单元,从而允许更多并行操作。
免责声明:本文图片引用自网络,如有侵权请联系我们予以删除
搞趣网发布此文仅为传递信息,不代表搞趣网认同其观点。