首页 > 业界 > 关键词  > 苹果最新资讯  > 正文

M1 Mac开源驱动开发者揭秘了苹果定制GPU解决方案的特殊渲染方法

2022-05-16 10:15 · 稿源: cnbeta

尽管苹果一直在 M1 系列定制处理器的内部细节守口如瓶,但为 M1 Mac 硬件打造开源驱动程序的 Asahi Linux 发行版开发团队,还是努力在对其展开逆向工程可知在艰苦的逆向工作期间,他们也发现了一些相当古怪且酷炫的地方。以 M1 开源图形驱动程序为例,Alyssa Rosenzweig 最近就在 M1 GPU 渲染管道中发现了一个化解错误的关键点。

0.jpg

据悉,问题始于 GPU 对内存访问的不畅。作为一款性能超强的 GPU,它与 iPhone 上的 A 系列移动SoC 一样,需要通过走一些捷径来保持高效率。

可知与独显相比,M1 没有直接渲染到帧缓冲区,而是对帧进行两次传递 —— 首先找到顶点,然后搞定其它更加密集的事务。

1.jpg

为此,苹果利用了专用硬件将帧分割成小块(基本上是迷你帧),并于二传时一次取一个小块来处理。

平铺方案很好地化解了缓存资源不足的问题,但为了稍后将之凑成完整的一帧,GPU 需要保留每个顶点数据的缓冲区。

结果 Rosenzweig 发现,每当这个缓冲区溢出时、渲染就无法正常进行下去。

2.jpg

苹果在某个演示文稿中解释称,当缓冲区已满时,GPU 只会输出部分渲染(本例中为半只兔子)。

在第一方应用程序中,苹果称之为参数缓冲区,且这个名词术语似乎取自 Imagination 的 PowerVR 文档。

作为一家总部位于英国的、与 ARM 类似的芯片设计公司,Imagination 于 2020 年初与苹果签署了一项广泛的知识产权许可协议。

而 2020 下半年上市的 M1 定制 SoC,就以该公司的 PowerVR GPU 架构为其图形硬件的基础。

3.jpg

言归正传,正如你可能已经猜到的那样,软件可通过将各部分渲染叠加到一起、以完成整只兔子的渲染(当然中间还有十几个额外的步骤)。

遗憾的是,这种渲染方式仍然不太准确(仔细留意兔子的足部)。Rosenzweig 指出,这是因为帧的不同部分在颜色 / 深度缓冲区之间被分割,而后者在加载部分渲染时会出现异常行为。

好消息是,得益于苹果驱动程序的逆向工程参考配置,Asahi Linux 开发团队最终搞定了这个问题,最终渲染输出的兔子如图所示。

4.jpg

TechSpot 总结道:不仅 Rosenzweig 的 M1 开源图形驱动程序跳过了相关环节来渲染图像,而是该 GPU 在架构设计之初就没有考虑到此类 3D 渲染应用场景。

即便如此,苹果还是相当巧妙地让 PowerVR 图形 IP 成为了可与独显相媲美的软硬件解决方案。即便在许多方面都没有实现完全的超越,其表现依然相当酷炫。

最后,想要深入了解 M1 GPU 渲染工作、以及针对 M1 逆向工程的其它探索,还请移步至 Rosenzweig 的个人技术博客和 Asahi Linux 发行版网站查看。

举报

  • 相关推荐
  • MiniMax深夜开源首个推理模型M1,这次是真的卷到DeepSeek了。

    ​不知道还有多少人记得,AI行业的六小虎。 行业内都在说,他们已经寂静好久了。 上一次相关的项目发布,还是前一段时间我写的MiniMax声音模型的更新,Speech-02。 而昨晚凌晨将近12点的时候,又是MiniMax,居然在X上,预告了他们一整周的发布计划。

  • 苹果Mac全家桶下半年登场:首发M5芯片

    据报道,苹果将从今年下半年开始陆续更新Mac系列产品线,包括MacBook Air、MacBook Pro、iMac、Mac mini、Mac Studio和Mac Pro。 根据曝光的信息,全新Mac系列产品线首发搭载苹果M5系列芯片,其中iMac、MacBook Air 13和15英寸搭载M5标准版。 Mac mini、14英寸MacBook Pro、16英寸MacBook Pro搭载M5 Pro芯片,14英寸MacBook Pro和16英寸MacBook Pro还有M5 Max版本可供选择。 据悉,苹果M5系列芯片基于台积电先进的

  • iPad为何不运行macOS 苹果高管:macOS未对触摸屏做优化

    iPadOS 26带来了全新的应用视窗、下滑式菜单栏等功能,让iPad的操作体验更接近Mac,但苹果始终未让iPad运行macOS系统,其背后原因正式揭开。 苹果公司软件工程负责人Craig Federighi接受采访时称,iPadOS 26的新特性在生产力与简洁性之间取得了很好的平衡,macOS系统从未对触控屏做优化,我们要保留iPad最本质的简洁性,如果强行移植macOS,iPad将丧失其触控设备的独特价值。 Craig Fed

  • 上线仅一天 苹果撤下“说服父母给买Mac”广告

    昨日有媒体报道称,苹果公司最新推出了一份长达81页的《家长推介》演示文稿,以帮助孩子说服父母将Mac作为学习设备收入囊中。 不仅如此,苹果还发布置顶了一段由喜剧演员Martin Herlihy主演的YouTube视频,进一步围绕这一主题展开推广,试图以轻松幽默的方式打动家长和孩子。

  • 苹果举行WWDC 25开发者大会 iOS 26更新汇总

    在今日举行的WWDC25全球开发者大会上,苹果公司正式推出iOS26操作系统,并宣布全平台版本号统一采用“26”命名规则,以简化用户对系统版本的识别。此次更新聚焦设计与功能两大维度,其中设计层面的变革尤为显著,被视为iOS7发布以来最大幅度的界面升级。 iOS26引入了全新的Liquid Glass(液态玻璃)技术,通过动态光影效果与用户操作实时交互。该技术使界面元素能够根据�

  • 苹果电脑升级规划全曝光!史上最强Mac有望今年登场

    有媒体曝光了苹果未来两年的Mac电脑升级规划,其中涵盖了多款新机型,包括史上最强大的Mac Pro。 报道称,苹果计划在2025年秋季推出M5芯片,并将推出多款搭载该芯片的Mac电脑。 目前,苹果正在测试一款代号为J873s”的机型,推测可能是M5 Pro版本的Mac mini,此外,另一款代号为J833ct”的设备被认为是M5版本的iMac。 同时,苹果还计划推出M5、M5 Pro和M5 Max版本的MacBook Pro(14英寸

  • 儿童排痰难题解决方案:易坦静与科学饮水

    文章讨论了儿童呼吸道感染时痰液滞留的危害及应对措施。主要内容包括:1)痰液滞留会加重咳嗽、喘息症状,阻碍康复,甚至延长病程;2)儿童因生理特点难以有效排痰;3)介绍了氨溴特罗口服溶液作为常用祛痰药的作用机制,能稀释痰液、促进排出;4)强调日常护理中少量多次饮水的重要性;5)提醒家长若症状持续或加重应及时就医。全文着重阐述了有效排痰对治疗儿童呼吸道感染的关键作用。

  • GCDG丨江阴站:AI赋能,开发者技术沙龙圆满举办!

    2025年6月8日,葡萄城开发者社区在江苏举办"AI赋能·开发者技术交流会"。活动汇聚多地开发者,共同探讨AI+低代码创新实践。开发者谷凯展示如何利用GPT-4等AI工具提升开发效率,强调独立开发者"一人也能创造价值"的理念。钟代冬分享家纺电商低代码工程案例,展示活字格平台实现复杂任务自动化运维的能力。技术顾问薛禹坤介绍"All-in-One一站式智能体开发"理念,演示活字格V11.0新版本AI功能。活动促进跨地域、跨领域思维碰撞,为开发者搭建紧密连接平台,推动前沿技术交流与实践经验分享。

  • 苹果iOS 26首个开发者测试版发布 UI迎史上最大升级

    据了解,iOS26采用全新LiquidGlass(液态玻璃)设计语言,这是自iOS 7以来最大的设计更新。 Liquid Glass能折射光线并通过镜面高光动态响应用户的动作,可配合用户调用选项或切换界面等操作,与设备的圆角巧妙呼应。 新设计涵盖主屏和锁屏,比以往更个性、更生动,Liquid Glass还为App图标和小组件带来新的自定义选项,包括精美简约外观。

  • 苹果iPadOS 26脱胎换骨:一大波功能向macOS看齐

    苹果召开WWDC 2025全球开发者大会,发布了全新的iPadOS 26。 以下是苹果公司今日宣布的所有iPadOS 26新功能,这些更新将使iPad拥有接近macOS的使用体验。 应用窗口现在可自由调整大小。 支持同时打开多个窗口。 通过新的分屏手势,可将窗口调整为半屏、三分之一或四分之一大小。 每个窗口新增红、黄、绿交通灯按钮,对应的分别是关闭、最小化和最大化。 应用重启后会记�