AMD_CrossFire

**CrossFire** 是 AMD 產品所採用的一種多重 GPU 協同運算技術，中文又稱交火，以兩張單 GPU 顯示卡或雙 GPU 顯示卡連結的方式，讓兩顆 GPU 在一台電腦上協同運算，增加效能，與 NVIDIA 的 SLI 技術競爭。CrossFire 技術於 2005 年 6 月 1 日，在 Computex Taipei 2005 正式發佈，比 SLI 遲一年。至首度公開之今，CrossFire 經過了數次修訂。開始的時候，需要主副卡的配合。之後，開始開放使用軟體交火模式。硬體交火方面，亦參考 NVIDIA 的做法，使用接線將兩張顯示卡連接起來。在 2008 年時，高端的顯示卡，例如 3870 X2 顯示卡已整合了兩顆顯示核心。當中，兩顆核心的溝通其實是使用了 CrossFire 技術。

在 CrossFire 推出的時候，使用者要使用此技術，主機板亦必需支援 CrossFire，以及需要兩張 AMD PCI Express 介面的顯示卡，要相同等級，並有可能需要購買主卡。例如：如果用家有一片 Radoen X850XT PE 顯示卡，必須額外購買一片 Radeon X850 CrossFire Edition，才能達成 CrossFire。但對 X1600 來說，只需購買兩張一模一樣的卡，即可達成 CrossFire，因為採用了軟體交火技術。由於以往 ATi 的顯示卡沒有像 NVIDIA 般預留協同運算，所以在第一代 CrossFire，ATi 採用 Composting Engine 和 DMS Cable，來仿效 NVIDIA 的 MIO 介面。

## CrossFire 各模式

CrossFire 可以下列四種形式執行。

　
: **Alternate Frame Rendering**

* 把 Frame 以單雙數分給不同的 GPU 處理，例如 VGA 1 負責（1,3,5,7,9），而 VGA 2 負責（2,4,6,8,10）。

　
: **Scissor** (SplitFrame Rendering)

* 將畫面分為上下半部，並各自由一顆 GPU 運算，然後再組合成同一個圖面。

　
: **SuperTiling**

* 把畫面分割成很多小格，讓兩顆繪圖核心梅花間竹地處理小格內的資料。這個方法效能最佳，但此模式只能支援於 Direct 3D，不支援 OpenGL。

　
: **CrossFire Super AA**

* 這模式能增加畫面品質，讓兩個繪圖核心同時執行 AA 運算，然後把結果組合。例如一同執行 4x AA 運算，結果會是 8x AA 畫質。

### 第一代

於 2005 年 9 月 27 日推出，當時的採用的模式是主副卡模式。採用此模式的 ATI 顯示卡有 Radeon X800，X850，X1800 和 X1900。副卡是一張普通的顯示卡，而主卡就多出數顆晶片，成為資料混合引擎。

Radeon X850XT CrossFire Edition，與正常的 X850XT 的分別在於多出了四顆晶片，構成了 Composting Engine:

* Silcon Image Sil1611, DVI 接收晶片
* Silcon Image Sil1612, DVI 輸出晶片
* Analog Devices 的 ADV7123, Digital to Analog 轉換晶片
* XILUNX Spartan XC3S400，系統邏輯 DSP 晶片

普通的 Radeon X850XT 會透過一條特別的 Cable，將運算結果傳送到 Radeon X850XT CrossFire Edition（透過特別 DMS 介面接收結果）。Radeon X850XT CF Edition 內的 Composting Engine 便會把兩顆核心的運算結果結合在一起，然後透過同一條 Cable 上的 DVI 介面將結果顯示在顯示器。

優點：

* 買了普通 Radeon X850XT 的人，仍可使用 CrossFire。
* 不佔據原本的 PCI-e 的頻寬，充分發揮 CrossFire 的效能。

缺點：

* 由於 DVI 接收與輸出晶片最高的頻寬頻率只有 165MHz，所以不支援 UXGA (1600 x 1200) 以上的解析度。
* 多出了的四顆晶片，令成本增高，導致 CrossFire Edition 的顯示卡售價遍高。四顆晶片的成本亦成了將 CrossFire 推廣的跘腳石。

### 第二代

由於多出了的硬體令成本增高，ATi 決定中低階顯示卡使用軟體 Composting Engine，即 X1300 Series 和 X1600 Series。為了充分發揮 CrossFire 的效能，X1800 Series 仍會使用改良後的第二代硬體 Composting Engine。

* 第二代硬體 Composting Engine

R520 高達 2048 x 1536@70 + 的 CrossFire 模式，相信就是改用比 Silicon Image Sil1611 更高解析度的晶片代替，此外 ATi 亦決定推出 X1800 版本的 CrossFire Edition，期望把 CrossFire 進一步普及。

* 軟體 Composting Engine

應用於中階和低階顯視卡。顯視卡中現整合 Composting Engine。副卡的資料傳送會透過 PCI-E，不是採用 DMS Cable，到主卡。若高階顯視卡採用軟體 Composting Engine，效能比硬體 Composting Engine 下降 60%。而低階顯視卡不用處理太複雜資料，霸佔的 PCI-E 頻寬不太嚴重，中階則因霸佔的 PCI-E 頻寬而令效能增長減少。

### 第三代

* 原生交叉火網 Native CrossFire

新一代的 X1650XT、X1950Pro 顯示卡整合了 CrossFire 合成引擎，並有介面將雙卡互連，情況猶如 nvidia 的 SLi。而 Catalyst 6.11 驅動程式亦開放了 X1900 Series 的顯示卡的軟體 Composting Engine 模式，不再需要主卡和接線，但必需配合擁有雙 PCI Express x16 的主機版使用。

第三代 CrossFire 能支援五個顯示器輸出，但需配合 ATI 的整合顯示卡晶片組，例如 RX 480 和 RX 580。

### 第四代

新一代交火技術在 R9 290 和 R9 290X 引入，不再需要 CF 接橋。DMA 引擎已整合在顯示卡，透過 PCI Express 總線直接存取其他 GPU，即可實現多重 GPU 協同運算。雖然沒有使用接橋，但 AMD 表示這不是軟體交火，因為顯示卡上是有專門負責交火的硬體。

相比傳統接橋 (900 MB/s)，PCIe 3.0 總線提供了近 35 倍的頻寬 (16 GB/s)，而且不需要接橋。滿足 Eyefinity 多螢幕技術和 4K 顯示的高頻寬需求，XDMA 因此成為了新一代多重 GPU 協同運算解決方案。

## 支援卡種

**第一代**

* X850 XT PE（需要主卡）

**第二代**

* X1300 Series（不需主卡）
* X1600 Series（不需主卡）
* X1800 Series（需要主卡）
* X1900 Series（需要主卡）
* X1950 XTX（需要主卡）

**第三代**

* X1650 GT/XT（不需主卡）
* X1950 GT/Pro（不需主卡）
* HD2000 Series（不需主卡）
* HD3000 Series（不需主卡）
* HD4000 Series（不需主卡）
* HD5400/5500 Series（不需主卡）
* HD5600/5700/5800/5900 Series（不需主卡）
* HD6400/6500/6600 Series（需 CPU 整合顯示核心）
* HD6700/6800/6900 Series（不需主卡）
* HD7700/7800/7900 Series（不需主卡）

**第四代**

* R9 290 Series 及以後（不需主卡，現時的英特爾晶片組主機板不提供 AMD CrossFire
* RX 5700 與 RX 5700XT 之後的顯示卡不支援 CrossFire

## 支援晶片組

### Intel

* Intel X99 - 能達到 PCI-E 3.0 x16/x16、x16/x16/x8、x16/x8/x8/x8 和 x8/x8/x8/x8/x8 規格
* Intel Z97 - 能達到 PCI-E 3.0 x8/x8 和 x8/x4/x4 規格
* Intel Z87 - 能達到 PCI-E 3.0 x8/x8 和 x8/x4/x4 規格
* Intel X79 - 能達到 PCI-E 3.0 x16/x16、x16/x16/x8 和 x16/x8/x8/x8 / 規格
* Intel Z77 - 能達到 PCI-E 3.0 x8/x8 規格
* Intel Z75 - 能達到 PCI-E 3.0 x8/x8 規格
* Intel Z68 - 能達到 PCI-E 2.0 x8/x8 規格
* Intel P67 - 能達到 PCI-E 2.0 x8/x8 規格
* Intel X58 - 能達到 PCI-E 2.0 x16/x16、x16/x8/x8、x8/x8/x8/x8 規格
* Intel P55 - 能達到 PCI-E 2.0 x8/x8 規格
* Intel X48 - 能達到 PCI-E 2.0 x16/x16 規格
* Intel P45 - 能達到 PCI-E 2.0 x8/x8 規格
* Intel X38 - 能達到 PCI-E 2.0 x16/x16 規格
* Intel P35 - 能達到 PCI-E 1.0 x16/x4 規格
* Intel 975X - 能達到 PCI-E 1.0 x8/x8 規格

此外，華碩和 EVGA 等主機板廠商生產的個別版本 Z77/Z87/Z97 已經開始支援 x16/x16、x16/x8/x8 和 x8/x8/x8/x8 規格，甚至 X79/C602/C604/C606 主機板也支援 x16/x16/x16/x16 或 x16/x8/x8/x8/x8/x8/x8 規格，儘管英特爾官方發布的 C600 晶片組不支援 NVIDIA SLI/AMD Crossfire，但同樣支援 NVIDIA Tesla 或 Maximus 技術。

### AMD

* AMD 990FX - 能達到 PCI-E 2.0 x16/x16 或 x8/x8/x8/x8 規格
* AMD 990X - 能達到 PCI-E 2.0 x8/x8 規格
* AMD 970FX - 能達到 PCI-E 2.0 x8/x8 規格
* AMD 890FX - 能達到 PCI-E 2.0 x16/x16 或 x8/x8/x8/x8 規格
* AMD 890GX - 能達到 Hybrid CrossFire+PCI-E 2.0 x8/x8 規格
* AMD 790FX - 能達到 PCI-E 2.0 x16/x16 或 x8/x8/x8/x8 規格
* AMD 790GX - 能達到 Hybrid CrossFire+PCI-E 2.0 x8/x8 規格
* AMD 790X - 能達到 PCI-E 2.0 x8/x8 規格

主機板廠商生產的實質產品（指 AMD 990FX）僅提供 x16/x16 規格，另外一條 / 兩條 x16 以 x4 模式執行。

有部分廠商在主機板張自行添加 PCI-E 2.0 的頻寬控制器來達到以上晶片組的目的，如華擎科技的 970 Extreme4 即為此項應用。AMD 970 的晶片組原本只可行單條 x16，但經過祥碩科技的頻寬控制器後，可實現 x8/x8 來達成 CrossFire 及 SLI。

## CrossFireX

AMD 於 2007 年 11 月 19 日發佈蜘蛛平臺時同時發表了接替 CrossFire 的下一代技術 CrossFireX，CrossFireX 基礎原理相同，但擴充支援三到四顆 GPU 共同運算，目前確定 AMD 700 晶片組系列中的 790FX 會支援，也有訊息指出 Intel 的 P45 晶片組將支援 CrossFireX。驅動程式方面，CrossFireX 最初只支援 Windows Vista 作業系統，原因是驅動本身已經複雜，而 Windows XP 遲早會被淘汰，所以集中資源開發 Vista 驅動比較划算 。

但在 2008 年 8 月 20 日，ATI 發布了 Catalyst 8.8 驅動程式，讓其也在 Windows XP 中提供對 CrossFireX 的支援 。

## AMD 雙重圖形技術

讓系統同時利用主機板整合顯示和獨立顯示卡的技術，有兩種訴求不同的模式，目前確定 AMD 700 晶片組系列中的 780G 會支援，與 nVidia 的 Hybrid SLI 技術競爭。

### PowerXpress

當系統不需要大量 GPU 計算，獨立顯示卡將進入類似休眠的狀態，而需要時可立即啟動，毋須重新啟動。僅應用於移動晶片組平臺。

### Dual Graphics

當系統需要大量 GPU 計算，獨立顯示卡和整合式顯示晶片將共同運算。

只限 HD 2400 和 HD 3400 系列顯示卡與 780G 或 790GX 北橋顯示晶片組支援此模式。

2012 年，AMD 推出採用 Socket FM2 的第二代加速處理器，最高可配合 HD 6670 進行混合交火。至 2014 年，核心代號「Karveri」加速處理器上市後，A10-5800K/6800K/7850K 等型號最高可配合 Radeon HD 7750 實作 Dual Graphics，但效能提升相較於 Radeon HD 6670 的要不明顯，然而 AMD 並沒有公開說明 Radeon HD 7000 系列（基於 GCN 架構之核心）可以支援 Dual Graphics。

## 注釋及參考資料