睿诚科技协会

Way CrossFire技术是什么?

Way CrossFire 是一种在 AMD 显卡驱动程序中,用于解决特定场景下多 GPU 协同工作问题的技术。 它的核心目标是让两张或多张显卡能够正确地“协同作战”,而不是互相干扰或导致性能下降。

Way CrossFire技术是什么?-图1
(图片来源网络,侵删)

下面我们从几个方面来深入理解这项技术。


什么是 Way CrossFire?—— 核心定义

Way CrossFire 是 AMD 驱动程序中的一个子系统或模块,它的名字来源于“Way”,在多 GPU 技术中通常代表“路径”或“通道”(2-Way CF 代表两张显卡)。

你可以把它想象成一个“交通指挥中心”

在一个典型的多 GPU 系统中,数据需要从 CPU 出发,通过主板的总线(如 PCIe)分配给两张或多张显卡,然后再由显卡处理图形数据,最后将渲染结果输出到显示器,这个数据流路径非常复杂。

Way CrossFire技术是什么?-图2
(图片来源网络,侵删)
  • 没有“交通指挥中心”时(旧版驱动或非优化场景):

    • 两张显卡可能会“抢道”,导致数据传输冲突、效率低下。
    • 某些显卡可能会闲置,无法充分发挥性能。
    • 甚至会出现一张显卡工作,另一张显卡完全没被使用(俗称“单卡干活”)的情况。
  • 有了“Way CrossFire”这个指挥中心后:

    • 它会智能地管理和协调两张显卡之间的数据流。
    • 确保每张显卡都能接收到分配给它的渲染任务。
    • 优化数据在 PCIe 总线和显存之间的传输路径。
    • 最终目标是让两张显卡的性能实现 1 + 1 > 2 的效果,即接近线性性能提升(理想情况下是 90%-95%)。

它解决了什么问题?—— 核心作用

Way CrossFire 主要针对以下几个关键问题:

a) 解决“资源争用”问题

当两张显卡共享一条 PCIe 通道时,它们会竞争带宽,Way CrossFire 负责调度,确保关键数据(如游戏场景的几何信息、纹理等)优先传输,避免瓶颈。

Way CrossFire技术是什么?-图3
(图片来源网络,侵删)

b) 解决“帧缓冲同步”问题

在 CrossFire 模式下,一张显卡(通常是主卡)负责渲染奇数帧,另一张(副卡)负责渲染偶数帧,驱动需要将这两帧完美地合成为一帧显示在屏幕上。

  • 如果不同步: 会导致画面撕裂、卡顿、或出现“半帧”现象,严重影响游戏体验。
  • Way CrossFire 的作用: 精确控制两张显卡的渲染节奏,确保帧缓冲区的同步,实现流畅的输出。

c) 解决“显存访问”问题

两张显卡的显存需要协同工作,一张显卡渲染的纹理可能需要被另一张显卡使用,Way CrossFire 管理着这种跨卡的显存访问,确保数据能够被正确、高效地读取和写入,避免因显存访问冲突而导致的性能下降或错误。

d) 解决“游戏兼容性”问题

并非所有游戏都原生支持多 GPU,Way CrossFire 驱动中包含了大量的游戏配置文件,对于不支持多 GPU 的游戏,驱动会尝试通过一些技术手段(如 AFR - Alternate Frame Rendering)来“模拟”多 GPU 工作,虽然效果不如原生支持,但有时也能带来性能提升。


它是如何工作的?—— 技术原理

Way CrossFire 的工作流程可以简化为以下几个步骤:

  1. 应用层: 游戏或应用程序发出图形渲染指令。
  2. 驱动层: AMD 显卡驱动接收到指令,Way CrossFire 模块开始介入。
  3. 任务分配与调度:
    • 驱动将渲染任务(如一帧画面的所有绘制调用)分解成多个子任务。
    • Way CrossFire 根据预设的或动态的负载均衡策略,将这些子任务分配给主卡和副卡。
    • 最常见的分配方式是 AFR (Alternate Frame Rendering, 交替帧渲染),即主卡渲染第1、3、5...帧,副卡渲染第2、4、6...帧。
  4. GPU 执行: 两张显卡并行执行各自的渲染任务。
  5. 结果合成: 渲染完成后,Way CrossFire 模块负责将两张显卡输出的帧缓冲区数据(图像)合并成最终的一帧。
  6. 输出显示: 合成后的最终帧被发送到显示器进行显示。

在这个过程中,Way CrossFire 还会处理其他技术,如:

  • AFR2 (帧同步技术): 在某些游戏中,为了解决微卡顿问题,AFR2 会让两张显卡在渲染同一帧时进行同步,确保帧时间的稳定。
  • SuperTiling / Scissor: 在一些不支持 AFR 的游戏中,驱动会将屏幕画面分割成多个小区域(瓦片或条带),分别交给两张显卡渲染,最后拼合,这种方式兼容性更好,但实现起来更复杂。

实际应用与现状

如何开启 Way CrossFire?

  1. 确保你拥有两张或多张完全相同型号的 AMD 显卡(两张 RX 6700 XT)。
  2. 在主板上正确安装显卡,并用 CrossFire 桥接器(如果需要,对于较新的 RDNA 架构,桥接器已非必需,但推荐使用)连接它们。
  3. 安装最新的 AMD Adrenalin 驱动。
  4. 打开 AMD Adrenalin Software,进入“游戏” -> “全局设置”。
  5. 找到“多 GPU”选项,并将其设置为“开启”。
  6. 对于特定游戏,你还可以在该游戏的专属设置中进一步调整 CrossFire 模式(如 AFR、AFR2 等)。

当前地位与未来

  • 市场萎缩: 随着游戏主机性能的提升和游戏引擎对多 GPU 支持的减弱,以及单个高端显卡性能越来越强,多 GPU(无论是 SLI 还是 CrossFire)的市场需求已经大大降低,很多新游戏甚至不再优化多 GPU。
  • 技术遗产: Way CrossFire 技术是 AMD 在多 GPU 领域多年经验的结晶,虽然其“黄金时代”已经过去,但它在特定专业工作负载(如某些科学计算、专业渲染应用)中,依然有其用武之地。
  • 未来方向: AMD 的未来多 GPU 战略已经转向更灵活的 AMD Infinity Cache 架构和更强大的单卡性能,他们也在探索其他形式的并行计算,例如通过 DirectMLROCm 在 AI 和计算领域利用多 GPU 的潜力,这与传统的游戏 CrossFire 已经有所不同。

特性 描述
是什么 AMD 显卡驱动中的一个核心子系统,用于管理和协调多张显卡的协同工作。
核心目标 解决多 GPU 系统中的资源争用、帧同步、显存访问等问题,实现性能叠加。
主要技术 基于 AFR(交替帧渲染)等模式,通过任务分配、GPU 执行和结果合成来工作。
如何开启 需要相同型号的多张 AMD 显卡,并在驱动中启用 CrossFire 功能。
现状 在游戏领域已逐渐式微,但在特定专业领域仍有应用,是 AMD 多 GPU 技术的重要遗产。

Way CrossFire 是 AMD 实现其多 GPU 梦想的“幕后英雄”,它通过复杂的软件调度,试图让硬件的潜力得到最大发挥,尽管如今它已不再是主流,但作为一项曾经辉煌的技术,它依然值得被了解。

分享:
扫描分享到社交APP
上一篇
下一篇