Многие знают о существовании возможности подключить в материнскую плату не одну, а две или даже три и более видеокарты. Опытные пользователи осведомлены, что они не суммируют свою «мощность» и не выдают двойную или тройную производительность, как бы того не хотелось. Но знали ли вы, что существуют материнские платы с поддержкой двух процессоров? Получается, что можно собрать себе два компьютера в одном, получив за цену нескольких недорогих «железок» производительность топовых ПК? Давайте попробуем разобраться в этой статье во всех нюансах подобных систем и определим, для решения каких задач они подойдут лучше всего.
Два процессора — что, как, для чего?
Немного истории развития многопроцессорных систем
Началось все с того, что Intel разработали новую архитектуру, которую назвали системой симметричной многопроцессорности (SMP). В такой системе процессоры имеют общую память и могут использоваться как для общих задач, так и каждый по отдельности. Важной деталью таких устройств является операционная система, которая должна также являться многопроцессорной, чтобы эффективно распределять задачи по всем активным процессорам. Первым устройством, которое использовало SMP, было Burroughs D825, появившееся на свет в далеком 1962 году. Забегая наперед, могу сказать, что такая система используется и в современных многопроцессорных компьютерах.
Говоря о мультипроцессорных системах, нельзя не сказать и о прямом конкуренте Intel — AMD. Да, немногие знают, но у «красных» также был ответ на SMP. Этот ответ звучал как Athlon MP («MP», собственно, и расшифровывается как MultiProcessor). По сути, это был тот же Athlon XP, но который обладал поддержкой двухпроцессорной конфигурации, использующий протокол MOESI. Этот протокол обеспечивал «общение» процессоров не на уровне системной памяти, а через их кэш-память второго уровня. Компания, скорее всего, так и не нашла должной заинтересованности пользователей в домашнем использовании своих многопроцессорных системах, поэтому сконцентрировалась именно на серверных решениях — AMD Opteron.
Компания Intel, как не трудно догадаться, задумывала многопроцессорные системы именно для серверов, однако они нашли применение и в некоторых особо производительных моделях рабочих станций. Важным витком в истории таких систем является момент, когда Intel добавила поддержку SMP в системы на базе процессоров Pentium, разрешив создание сборок с двумя процессорами, а затем и в Pentium Pro, где уже разрешалось создать компьютер аж с четырьмя ЦП. Но, стоит сказать, что уже в Pentium II разрешено было устанавливать вновь лишь до двух процессоров.
Как и ожидалось, переход в массовый сегмент дал сильный толчок распространению многопроцессорных систем, но вот маркетологам это не особо понравилось, ведь компьютер на двух относительно бюджетных Pentium работал на уровне профессиональных рабочих станций, что сильно било по прибыли компании. После этого наблюдения, Intel отказалась от внедрения SMP в массовый сегмент и оставила ее поддержку лишь в профессиональных и очень дорогих Xeon и Opteron.
Сегодня подобные мультипроцессорные системы используются не только в серверных «монстрах», но и в домашних ПК. Такая популярность появилась не на пустом месте, ведь на том же Aliexpress можно приобрести за небольшую стоимость два хоть и БУ, но Intel Xeon, материнскую плату с двумя сокетами и серверную оперативную память, получив, примерно, за половину стоимости производительность новейших процессоров даже 11-го поколения.
Что нужно знать перед тем, как собирать компьютер с двумя процессорами
В первую очередь, нужно не забывать, что двухпроцессорная сборка изначально задумывалась под использование на производительных серверах, где используются не повседневные блоки питания, корпуса и плашки оперативной памяти, а специальные серверные. Кейс должен поддерживать установку огромной материнской платы формата EATX, реже ATX и EEB. Блок питания должен иметь поддержку двух процессоров, причем стоит учитывать, что его мощность должна быть достаточна для сразу двух Xeon, а оперативная память подходить под технические требования этих ЦП — желательно использовать именно серверную оперативную память. На материнской плате зачастую распаяны целых восемь разъемов под память, и тут важно «равномерно» заполнить оба из них. То есть установить 16 ГБ памяти в один слот и надеяться на то, что будут правильно работать оба процессора — не стоит. Зато некоторые материнские платы поддерживают установку и 2 ТБ памяти.
Кстати, материнские платы для двухпроцессорных систем делятся на два типа: серверные и для рабочих станций. Отличить их можно по звуковым интерфейсам — серверная не имеет звуковых выходов, зато только она имеет встроенное видеоядро. Большим достоинством материнок как первого, так и второго типа является большое количество распаянных разъемов SATA, однако тут же есть и недостаток: разъем под M.2-накопитель вы вряд ли обнаружите на своей плате. Тут же можно обнаружить, что двухсокетные матери имеют множество входов PCIe с довольно высокими пропускными способностями. Также, любопытный нюанс заключается в том, что вы можете использовать и один сокет из двух — это не создаст никаких ошибок или потерь производительно, при том что сохранится возможность со временем «проапгрейдить» систему.
Второй процессор нужно не забывать еще правильно охлаждать — здесь потребуется два кулера, которые должны быть достаточно мощные и небольшие по размеру, ведь они расположены довольно близко друг к другу и могут создавать нежелательный дополнительный нагрев. Идеальным решением для подобной машины будет кастомная система водяного охлаждения, но это уже дорогой, хотя и крайне эффективный, путь для энтузиастов.
Если вы пройдете все этапы сборки такой «машины», то на выходе вы получите действительно мощный ПК. Главная особенность такой сборки будет заключаться в том, что производительность обоих ЦП будет именно суммироваться. Так, если вы установили два процессора по 6 ядер и 12 потоков, то на выходе вы получите именно 12 ядер и 24 потока без какой-либо потери производительности так, как если бы вы использовали один ЦП.
Компьютеры с двумя видеокартами — мечта или пустая трата денег?
Немного истории развития систем, поддерживающих две видеокарты
История развития систем «совмещения» графических процессоров начинается в далеком 1998 году, когда компания 3dfx представила новую технологию — SLI (Scan Line Interleave — сканирование чередования строк), которая уже тогда могла обеспечить совместную работу представленных в то же время чипов Voodoo2. Она была способна «подружить» ГП не просто разных производителей, но и даже разных емкостей видеопамяти. Главной проблемой этой технологии стала ее цена — 600 долларов, а также довольно большие температуры при работе.
Как многие уже знают, в 2001 году Nvidia приобрела компанию 3dfx. Уже через три года был представлен PCI Express, который позволял использовать несколько графических адаптеров, а через год, после появления первых решений на базе новой технологии, Nvidia поспешила заявить о продолжении поддержки технологии SLI, но уже с новой расшифровкой — Scable Link Interface (масштабируемый интерфейс связи). В 2005 году AMD поспешила представить свою технологию, которая должна была составить конкуренцию своему «зеленому» оппоненту. Так, на Computex 2005 была представлена первая версия AMD CrossFireX. В дальнейшем оба производителя особо не изменяли принципов работы своих систем объединения видеокарт. На сегодняшний день AMD поддерживает работу CrossFireX без необходимости соединения видеокарт между собой, а Nvidia перешла на аналог SLI — NVLink Bridge, который обеспечивает более высокую производительность, но поддерживает лишь две видеокарты в одной системе. Для серии GeForce 20 RTX поддержку этой технологии имеют лишь чипы 2070S, 2080 и 2080Ti, а вот в 30-й серии — только 3090.
Как работает SLI и CrossFireX
Рассмотрим несколько существующих алгоритмов построения изображений на нескольких видеокартах для обеих технологий:
- Alternate Frame Rendering — одна видеокарта обрабатывает четные кадры, а другая — нечетные. Но стоит отметить существенный недостаток такого метода: кадры отличаются друг от друга своей сложностью, поэтому может появляться нестабильность в работе, когда одна видеокарта уже закончила обработку, а вторая — еще нет;
- Split Frame Rendering (или Scissor для AMD) — немного более продвинутая технология, которая разбивает сцену на несколько частей (в зависимости от количества видеокарт), и каждая видеокарта занимается полной обработкой ее «кусочка»;
- также у AMD есть в «арсенале» хоть и довольно устаревший, но не менее интересный алгоритм, который называется SuperTiling. Он разбивает картинку на квадраты по 32×32 пикселя в виде шахматной доски. Каждый полученный квадрат обрабатывается отдельно одной из доступных видеокарт.
Особенности использования SLI и CrossFireX
При возникновении идеи собрать себе ПК с несколькими видеокартами, необходимо еще несколько раз обдумать эту мысль и посчитать расходы. Для того, чтобы воспользоваться одной из технологий, нужно приобрести две одинаковые видеокарты, так как особенность работы SLI и CrossFireX позволяет получить на выходе производительность именно самой слабой карты. Также вам стоит позаботиться не только о том, чтобы в вашей материнской плате были необходимые входы, но и о мощности вашего блока питания, ведь теперь вам нужно снабжать электричеством целых два видеоадаптера. Не стоит забывать также, что видеокарты расположены как «бутерброд» — одна над другой, а это значит, что часть тепла от нижней карты будет переходить на верхнюю, создавая неблагоприятные условия для работы чипов.
Главной проблемой как SLI, так и CrossFireX является производительность полученной системы. Тут не как с двухпроцессорными сборками — мощность суммироваться не будет. Видеопамять в подобных системах используется как общий инструмент обеих видеокарт, поэтому логика, что «две видеокарты по 4 ГБ = 8 ГБ видеопамяти» здесь не работает. Также как и в случае с производительностью: да, чисто в теории, производительность может быть и в два раза выше, но тут встает важный нюанс — поддержку как SLI, так и CrossFireX разработчик должен организовать сам. Как правило, это делают далеко не все девелоперы, ведь доля ПК с двумя и более видеокартами крайне мала.
К слову, несколько видеокарт «в одном ПК» можно повсеместно встретить у майнеров. Но, как вы можете обратить внимание, они никак не соединены между собой. Все дело в том, что для майнинга нет необходимости правильно «отрисовывать кадры» через какие-либо алгоритмы, поэтому видеокарты подключаются просто в материнскую плату, желательно с большим количеством PCI-E портов, и начинают работу полностью друг независимо от друга. То есть, когда одна из видеокарт отказывает — остальные продолжают работу, ведь их ничего не связывает, кроме общей «матери».
Интересная мысль напоследок
Заметили, что Intel ушли со своими мультипроцессорными сборками из сегмента бюджетных решений, а Nvidia и AMD не особо улучшают свои технологии объединения видеокарт, которые застыли в 2005 году? Да, можно возразить, что сейчас вновь становятся популярны «бюджетные» сборки на двух процессорах для дома и игр, однако, если посмотреть, на каких процессорах собираются такие системы, то можно заметить, что это именно Intel Xeon, которые когда-то использовались на китайских серверах с далеких 2012-х годов, а сейчас за бесценок продаются на AliExpress.
Очевидно, что Intel было бы совсем не сложно добавить поддержку двухпроцессорности в свои «гражданские» ЦП по типу i5 или i3, как это было с теми же Pentium, а Nvidia и AMD могли бы развивать SLI и CrossFireX соответственно. Но тогда как бы это отразилось на продажах старших моделей линеек процессоров или видеокарт? Люди бы просто вместо «апгрейда» на новое поколение, либо на более мощные версии текущего, покупали бы на БУ-площадках аналогичные ЦП и ГП, вставляли в компьютер и наслаждались за «смешные» деньги приростом производительности в два раза. Но это слишком невыгодно, поэтому технологии «мультиустройств» доступны либо в самых топовых решениях, таких как 3090 и Intel Xeon, либо же вовсе канут в лету уже в ближайшее время, как это сейчас происходит с CrossFireX.