Что такое amd crossfire
Перекрестный огонь. Обзор технологии CrossFire от ATI
Принцип работы CrossFire
На бумаге ATI CrossFire смотрится даже лучше, чем NVIDIA SLI.
Если в системе SLI используются две одинаковые карты, то у CrossFire они разные. Для сборки такой системы, кроме стандартной графической карты Radeon X800 или X850 (в режиме slave ), потребуется CrossFire-версия X800 или X850 (в режиме master ). В отличие от SLI они не соединяются между собой мостиком — только мониторным кабелем.
Специальный контроллер на видеокарте попиксельно смешивает картинки, сгенерированные обычной и CrossFire-картой, после чего выводит изображение на дисплей. Сигналы от обычной карты передаются в цифровом виде по интерфейсу DVI через короткий кабель, поэтому потерь в качестве, теоретически, быть не должно.
Подобное разделение на простую и CrossFire-версию карт, на первый взгляд, можно расценить как недостаток по сравнению с SLI. Ведь в случае с решением NVIDIA вам не нужно думать, какую карту брать — обе одинаковые. С другой стороны, концепция ATI дает определенные преимущества.
Как мы уже говорили ранее, для SLI требуются две абсолютно идентичных карты. Даже карты одного производителя нельзя использовать вместе, если они различаются версиями BIOS (благо прошивку можно обновить).
Отличить CrossFire-версию карты можно разве что под микроскопом.
Основные преимущества ATI CrossFire | |||||||||||||
Таблица 1 | ||||||||||||
|
Больше режимов работы, хороших и разных
Преимущества: совместим со всеми играми, обеспечивает оптимальное распределение нагрузки.
В режиме Scissor картинка делится на две части по горизонтали. Соответственно, одна карта вычисляет верхнюю часть, а вторая — нижнюю (как в случае SLI). Динамическая балансировка нагрузки позволяет равномерно нагрузить обе видеокарты. Такой режим является стандартным для приложений OpenGL.
Преимущества: работает с большинством игр.
Недостатки: обе карты просчитывают геометрию сцены.
Режим Alternate Frame Rendering (AFR) распределяет нагрузку следующим образом: одна карта просчитывает все четные кадры, а вторая — нечетные. Так формируется последовательность кадров, которые быстро сменяют друг друга.
Преимущества: карты оптимально распределяют нагрузку, AFR обеспечивает полное ускорение геометрии.
Недостатки: не работает в играх, где используется функция render-to-texture.
Преимущества: удвоение режима FSAA без потери скорости.
Недостатки: не дает повышения частоты кадров.
Radeon Xpress 200: чипсеты для AMD и Intel
Уже некоторое время ATI выпускает свои чипсеты, однако большого успеха на этом поприще компания до сих пор не добилась. Системные платы есть в продаже, они стоят недорого и обеспечивают достойную производительность, однако не слишком популярны среди пользователей. С чипсетом Radeon Xpress 200 CrossFire Edition компания надеется изменить ситуацию, нацелившись на энтузиастов и хардкорных геймеров.
На момент написания статьи карты CrossFire не добрались до прилавков, однако есть информация, что в режим двух карт можно переходить без перезагрузки (в отличие от SLI), кроме того, в CrossFire можно работать с несколькими мониторами (до 5 ).
Уже сейчас известно, что ASUS, DFI, Gigabyte, ECS, Sapphire, MSI и другие компании выпустят свои версии плат с поддержкой CrossFire.
ATI сразу выпустит Radeon Xpress 200 CrossFire Edition под AMD и Intel.
Заключение
Представив технологию CrossFire, ATI попыталась превзойти SLI, и надо сказать, на бумаге все выглядит очень хорошо. CrossFire позволяет выбрать разные аппаратные конфигурации, предлагает несколько режимов работы и специальный режим улучшения качества изображения SuperAA.
Если вы купите системную плату на базе Radeon Xpress 200, то сможете обновить вашу систему до CrossFire, приобретя вторую видеокарту. В этом плане SLI несколько отстает, так как требует, чтобы вторая карта была идентичной.
Единственное, в чем SLI опережает CrossFire, — это цена. Учитывая, что версии CrossFire Edition представляют собой полноценные Radeon X800 XT PE или Radeon X850 XT PE, обойдутся они недешево. К примеру, если вы уже купили относительно недорого Radeon X850 Pro (12 конвейеров), то вам придется выложить круглую сумму за Radeon X850 XT PE CrossFire (16 конвейеров). И это с учетом того, что вы не сможете воспользоваться преимуществом второй карты в полной мере — будет задействовано всего 12 конвейеров. Владельцам X800 XL придется легче, так как от старших собратьев они отличаются только частотами.
Дело осталось за малым — заполучить рабочие образцы и испытать их в деле!
Что такое AMD CrossFireX
В предыдущей статье мы рассмотрели технологию объединения несколько видеокарт для их совместной работы от Nvidia — SLI (советую ознакомиться с ней, потому что я буду на нее ссылаться), теперь же рассмотрим схожую технологию от их конкурентов — AMD CrossFireX.
История ATI CrossFire
В конце 90ых дела у ATI шли не очень хорошо — в 1999 Nvidia представила за один год аж два новых поколения — Riva TNT2 и GeForce 256. 3dfx, второй конкурент, в 1998 году представил технологию SLI, позволяющую объединять две видеокарты Voodoo2 вместе на одном ПК. А вот ATI смогла представить лишь RAGE 128 (и чуть позже разогнанную версию PRO), в которых ничего инновационного не было. Поняв, что так и вылететь с рынка видеокарт недолго, они решили скопировать технологию SLI у 3dfx и выпустили «двухголовую» видеокарту ATI RAGE FURY MAXX, которая включала в себя два GPU RAGE 128 PRO. Сама технология объединения видеочипов называлась MAXX (Multiple ASIC Technology), и была чисто программной: каждый из графических процессоров полностью готовит один кадр, и при выводе на экран они чередуются. По сути это была вылитая технология AFR (Alternate Frame Rendering), которая применяется до сих пор.
Но, однако, видеокарта FURY MAXX просто имела два GPU, объединять две видеокарты от ATI было нельзя — в те времена была шина AGP, и этот порт на материнских платах был только один. В 2004 году была представлена шина PCI Express, которая позволяла делить линии — а значит и делать несколько портов и подключать несколько видеокарт. Этим воспользовалась и Nvidia, представив новую технологию SLI, и ATI, сменившая название MAXX на CrossFire.
Отличий между ними тогда хватало: для создания CrossFire нужна была так называемая мастер-карта — она имела внутри чип наложения, позволяющий получать данные с карты-слэйва (slave) и сочетать их попиксельно с основной картой. Объединение происходило через специальный кабель DVI-DMS, а подключение монитора — через еще один коннектор DVI, отходящий от мастер-карты:
Это было жутко неудобно, и в будущем ATI пришла к тому же, что и Nvidia сразу — данные передаются через специальный мостик, и такого понятия как master или slave больше нет (а еще дальше уже компания AMD, купившая ATI, вообще отказалась от мостиков). И если это первое отличие было в минус ATI, то вот второе наоборот, в плюс: если в SLI можно объединять видеокарты только одной серии, то в случае с ATI видеокарты могут быть даже разных поколений.
В дальнейшем, в 2008 году, компания AMD представили Quad CrossFireX — технологию, позволяющую объединять до четырех видеокарт вместе, и сейчас технология объединения видеокарт называется AMD CrossFireX (или, сокращенно, CF).
Алгоритмы построения изображения с использованием CF
Первый алгоритм не является новым — его так же успешно применяет и Nvidia. Называется он Slicing (Нарезка), и заключается в том, что кадр делится на две части — одну обрабатывает одна видеокарта, другую — другая:
Причем части не обязательно могут быть одинаковыми: все зависит от сложности сцены, и области рендеринга для каждой видеокарты могут быть свои. Для игр этот алгоритм подходит слабо, потому что заранее просчитать сложность кадра невозможно.
Второй алгоритм ATI/AMD придумали сами. Он называется Tiling (от англ. tile — плитка). Суть алгоритма в том, что весь кадр делится на «плитки» по 32х32 пикселя каждая, и каждая видеокарта в шахматном порядке готовит свою половину плиток:
Плюс этого метода — на каждую из двух видеокарт будет приходиться в среднем половина нагрузки, то есть нет такого, как в Slicing, когда одной видеокарте досталось в игре небо и она подготовила кадр за 5 мс, а другой досталась куча текстур земли, зданий и так далее, и она подготовила кадр за 20 мс: тут каждой из видеокарт досталось и небо, и текстуры земли и других объектов. Но, как и следовало ожидать, есть и минусы: во-первых, требуется максимально точное соответствие характеристик видеокарт: если в Slicing кадр можно делить пропорционально производительности каждой из GPU, то в Tiling разделение нагрузки идет ровно пополам, поэтому видеокарты должны быть полностью идентичны. Во-вторых, между картами не делится геометрическая нагрузка, но в играх обычно она невысокая и проблем с этим не бывает.
Третий алгоритм, AFR, общий с Nvidia — каждая из видеокарт готовит кадры поочередно:
Плюсы те же — никаких артефактов при отрисовке кадра, можно легко распараллелить нагрузку и на 4 GPU. Минус — все кадры имеют разную сложность, что может привести к дерганой картинки при низком fps.
И последний алгоритм «честного» CrossFire — это SuperAA (супер-сглаживание). Принцип схож с таковым у SLI AA — каждая видеокарта сглаживает картинку с некоторым шагом относительно другой, и потом полученные картинки склеиваются в один кадр. Однако отличия от SLI AA все же есть — в случае с Nvidia используется MSAA сглаживание, в случае с AMD — SSAA (оно дает картинку чуть лучше, но и требует больше ресурсов). Доступны режимы сглаживания от х8 до х14 (напомню, что у Nvidia максимум это х32).
В случае с ноутбуками на APU от AMD, включающих в себя как процессор, так и встроенную графику, AMD поступила хитрее Nvidia: если в ноутбуке есть дискретная графика от AMD, то ее можно объединить с интегрированной в режиме Dual Graphics, когда работают обе видеокарты (напомню, что у Nvidia есть технология Optimus, которая позволяет использовать или дискретную графику, или интегрированную, но никак не вместе). Однако у этого метода есть свои ограничения: во-первых, он работает только с DirectX 10 и выше (в принципе, с учетом того, что игры с DirectX 9 старые и нетребовательные по современным меркам — CF там и не нужен). Во-вторых, разница в производительности дискретной и интегрированной видеокарт не может быть больше двухкратной, то есть объединить вместе интегрированную в APU графику с какой-нибудь R9 M390 увы, не получится (опять же — тут интегрированная графика как пятое колесо в телеге и будет только мешаться, так что AMD в принципе поступили правильно).
Системные требования для CrossFireX
Здесь почти все тоже, что и для SLI от Nvidia (поэтому второй раз переписывать требования я не буду), однако есть одно важное различие — вообще не нужны мостики для связи видеокарт (забавно — в тысячной линейке Nvidia не только не отказалась от мостиков для SLI — она ввела новые, еще более быстрые), контроллер CF теперь находится на самой плате видеокарты, а данные передаются через PCI-E. Больше существенных различий нет — все так же подключаются видеокарты одной серии, все так же объем памяти ограничивается таковым у самой слабой видеокарты в DX 11 и суммируется в DX 12.
И самый главный вопрос — имеет ли смысл делать CF? Да, имеет. Тут все просто — приверженцы «зеленых» могут купить одну GTX 1080 Ti, которой за запасом хватит для всех современных игр, поэтому SLI для игр в принципе не нужен. У AMD пока что самая мощная графика это RX 580, которая вообще говоря находится на уровне обновленных GTX 1060, и которой хватает лишь для FHD (в 2К придется существенно снижать настройки, или же играть с 30-40 fps). Так что тут CF имеет смысл — две RX 580 позволят нормально играть в 2К на ультра-настройках графики.
AMD CrossFireX
Из Википедии — свободной энциклопедии
AMD CrossFireX (с англ. — «перекрёстный огонь») — технология, позволяющая одновременно использовать мощности двух и более (до четырех графических процессоров одновременно) видеокарт Radeon для построения трёхмерного изображения. Аналог Nvidia SLI.
Каждая из видеокарт, используя определённый алгоритм, формирует свою часть изображения, которая передаётся в чип Composing Engine мастер-карты, имеющий собственную буферную память. Этот чип объединяет изображения каждой видеокарты и выводит финальный кадр.
Технология была анонсирована на международной выставке Computex 2005 на Тайване.
В 2005 году система CrossFire формировалась путём соединения видеокарт Y-образным кабелем с задней стороны карт. С выходом карт серии Radeon X1950 подход был пересмотрен: начали использоваться специальные гибкие мостики CrossFireX (аналогично SLI, но имеющие свой собственный алгоритм и логику). С середины 2010-х годов карты уже не используют гибкие мостики и работают в режиме Crossfire без них.
Комбинации некоторых видеокарт могут оказаться гораздо более эффективными, производительными и выгодными финансово, чем одна более мощная и, соответственно, значительно более дорогая карта. Но, как и в случае с Nvidia SLI, прирост производительности от использования двух видеокарт в системе будет наблюдаться только в приложениях, умеющих использовать два и более GPU. В старых играх, не умеющих работать с Multi-GPU системами, общая производительность графической составляющей останется прежней, в некоторых случаях может вообще даже снизиться; так что для любителей старых, но требовательных игр более верным решением будет покупка одной очень мощной видеокарты, чем покупка второй такой же и последующее объединение в CrossFireX-систему. Существенный недостаток CrossFire — данная технология не работает при запуске приложения в оконном режиме.
Асимметричный ответ ATI: новая технология CrossFire
24 мая, в Москве, в самый разгар жаркой весны, сотрудники фирмы ATI провели конференцию, посвященную описанной в этой статье технологии, подробностям новой игровой приставки Xbox 360 и другим не менее полезным вещам. Было здорово, спасибо Николаю Радовскому и другим представителям компании за полезную информацию и очень компетентные ответы на вопросы!
А теперь, не мешкая, перейдем к сути статьи:
ATI CrossFire — так официально называется канадский ответ на NVIDIA SLI, о котором шептались и «подозревали» технологические форумы сети еще полгода назад. Есть ли отличия? Да, несомненно. Есть ли преимущества? Судя по всему, да, и весьма значительные. Через некоторое время мы опубликуем тесты и практические исследования аспектов качества, а пока исследуем теоретические и архитектурные стороны и попробуем спрогнозировать тенденции и результаты. Общая архитектура CrossFire
Основная цель технологии — организация совместной работы двух графических ускорителей над построением изображения. Причем, архитектура должна быть не только эффективной (высокий КПД, низкая стоимость дополнительных схем, доступность для простых частных покупателей и энтузиастов), но и удобной в использовании (совместимость с уже существующими программами и даже с уже существующими аппаратными решениями, прозрачность, простота и надежность). Требований очень много, и, забегая вперед, похвалим ATI за качественный и очень продуманный подход при решении этих задач. Итак, нам предложена вот такая архитектура:
Несколько ускорителей (в варианте для пользователей их два) формируют собственную часть изображения, и выводят её через TMDS трансмиттеры в общепринятом цифровом стандарте DVI. Затем информация попадает в «черный» (на схеме — красный) ящик под названием Composing Engine, устройство, которое собственно и осуществляет совмещение результатов работы ускорителей для получения финального изображения. На выходе из этого красного ящика — вновь стандартный цифровой DVI сигнал, но на этот раз — уже финального кадра, собранного из двух порций данных, рассчитанных обоими VPU. Для устранения проблем с синхронизацией, Composing Engine содержит собственную буферную память, что позволяет этому устройству накапливать данные асинхронно, и, затем, по мере готовности обоих ускорителей, формировать и выдавать результирующий кадр. Таким образом, четкая синхронизация работы VPU не требуется, достаточно двух фактов — каждый VPU должен знать, какую часть данных ему надо рассчитать, и каждый VPU должен закончить передачу рассчитанных данных в этот «красный ящик», Composing Engine. После этого будет осуществлена передача кадра на устройство вывода, в формате DVI или (если нам нужен аналоговый сигнал) на внешний графический DAC, преобразующий цифровой DVI поток в стандартный аналоговый VGA сигнал.
Теперь самый актуальный вопрос как VPU будут делить между собой рассчитываемые данные? Небольшая теоретическая часть на эту тему:
Основные алгоритмы взаимодействия ускорителей
Для двух VPU будет происходить вертикальное разделение финального кадра на две зоны. Интересно, что граница зон не обязательно должна проходить по середине кадра и может выбираться динамически, исходя из сложности той или иной части изображения — грубо говоря, в верхней половине может оказаться меньше объектов, чем внизу (небо) и тогда один из ускорителей будет простаивать, что может быть скомпенсировано увеличением его зоны ответственности. Задача подобной динамической балансировки нетривиальна, и требует анализа сцены, что не всегда удобно. Этот метод хорош для сбалансированных по критерию геометрических вычислений / закраска приложений, так как в идеале (при правильном адаптивном делении кадра на зоны ответственности), позволит им поровну распределить и геометрическую и пиксельную нагрузку по двум ускорителям.
Итак, суммируем плюсы и минусы вышеописанных подходов: