Нужно ли нам 8 ядер?

Dual Xeon X5672 в приложениях из стандартной методики


Выход в свет Sandy Bridge-E осенью прошлого года вызвал неоднозначную реакцию среди компьютерной общественности. Единственные пользователи, которых вообще не было слышно — как раз та группа, для которой новая платформа и выпускалась :) Они просто покупали новые процессоры и использовали их — как обычно и бывает. А наиболее крикливой оказалась группа форумных энтузиастов-теоретиков, рождению которой так сильно поспособствовала повсеместная доступность интернета :) В чем только новую платформу не обвиняли. И, дескать, прирост производительности по сравнению с предыдущими решениями маленький, и платить нужно слишком дорого, и функциональность не выросла. Хотя, по большому счету, все эти претензии выглядели достаточно смешно.

Мало портов SATA600? Не во всяком массовом компьютере можно найти хотя бы одно устройство, которому новый интерфейс окажется полезным. Тем более, что платформы на базе Westmere-E полноценной поддержки SATA600 вообще не имели. Оказались нереализованными планы по поддержке SAS600? Ну а такой накопитель и вовсе — даже один почти невозможно встретить в 99% настольных компьютеров. Отложилось внедрение PCIe 3.0? А что с ней-то делать ближайшие год-два? :) Да и в плане цен и производительности не все так уж однозначно — в конце концов, Core i7-3930K стоит как Core i7-980, а работает быстрее, чем вдвое более дорогой Core i7-990X Extreme. Это если брать события совсем недавнего времени, а ведь можно воспомнить и то, что было еще раньше. В частности, пять лет назад Core 2 Duo E6700 (с оптовой ценой 530 долларов) по производительности вообще практически не отличался от Core 2 Duo E6600 (316 долларов), так что на этом фоне разница между Core i7-3930K и Core i7-2600K выглядит принципиальной. В общем, все как всегда и даже чуть лучше, но раньше интернет был менее доступен, так что негде было проливать крокодиловы слезы :)

Но наиболее весомыми (и вот тут уже — отчасти справедливыми) претензиями были предъявляемые к количеству ядер. К тому же новые претензии наложились на традиционное поругивание Intel за прекращение гонки количества ядер на десктопе — массовые процессоры компании вот уже много лет содержат всего четыре вычислительных ядра, и в ближайшие годы ничего нового не ожидается. Топовые настольные платформы почти три года назад стали шестиядерными, но… Если в Westmere-E столько ядер и было физически, т. е. Core i7 под LGA1366 утилизировали потенциальные возможности кристалла на 100%, то в Sandy Bridge для LGA2011 ядер восемь. Однако все восемь доступны лишь в Sandy Bridge-EP/EX, а в Sandy Bridge-Е как минимум два всегда заблокированы.

А был ли выход? Буквально на днях выходят новые Sandy Bridge-EP/EX, так что их характеристики в основном уже известны. Старший восьмиядерный EP, а именно Xeon E5-2687W, имеет базовую частоту лишь 3,1 ГГц, т. е. в малопоточном программном обеспечении (коего до сих пор на десктопе 90%) будет проигрывать не только Core i7, но и многим Core i5 под LGA1155. И это, заметим, с TDP 150 Вт, а при выпуске настольной версии LGA2011 перед инженерами стояла задача в обязательном порядке уложиться в те же 130 Вт, которые были типичными и для предшественницы в лице LGA1366. Ну что ж, если ограничиться 130 Вт, получаем Xeon E5-2680 со стартовой тактовой частотой лишь 2,7 ГГц — и в массовом ПО такой процессор будет проигрывать уже не только Core i5, но и Core i3. А временами — даже Pentium. Т. е. в настольном окружении он не нужен. Вот для специфических задач пара таких процессоров со своими 16 ядрами (и 32 потоками вычисления) подойдет превосходно, причем нуждающиеся в решении подобных задач, естественно, с легкостью заплатят 3,5-4 тысячи долларов за одни лишь процессоры — но продать такое массовому пользователю просто невозможно. Справедливости ради, и Sandy Bridge-E берут не сказать чтоб сильно массово, но эти процессоры хотя бы нигде не хуже более дешевых моделей, а вот гипотетический настольный восьмиядерник этим похвастаться не сможет.

Впрочем, почему гипотетический? Xeon E5-2650 будет стоить $1106, т. е. лишь немногим дороже, нежели Core i7-3960X Extreme. Наверняка он будет поддерживаться и многими настольными платами. Да, конечно, базовая частота лишь 2 ГГц и заблокированные множители, однако в LGA2011 компания Intel сделала подарок любителям разгона в виде повышающих коэффициентов для опорной частоты. 125 МГц вместо 100, конечно, все равно маловато, а вот если получится задействовать максимальные 166 МГц, то частота процессора волшебным образом превысит 3 ГГц — и аллах с ним с энергопотреблением! :)

Другой путь к получению большого количества ядер на высокой частоте связан как раз с использованием EP-платформ «по прямому назначению». В частности, можно купить подходящую плату и к ней парочку Xeon E5-2630 (612 долларов за штуку) — получим 12 ядер на частоте 2,3 ГГц, что для многопоточного ПО еще лучше, чем погоня за одиночным многоядерником. Правда, «подходящих» для настольного использования двухсокетных плат нужно еще дождаться — что минус. Зато плюс в том, что такой подход, строго говоря, позволяет вообще не ждать Sandy Bridge-EP. До 12 ядер в двух сокетах было доступно и при использовании Westmere-EР, а восемь — еще в рамках Nehalem-EP. Подобную конфигурацию мы тестировали более двух лет назад, и пришли тогда к выводу, что в сегменте массовых решений время двухпроцессорности кончилось. Но может быть, где-то на стыке «массовых» и «специализированных» местечко ей осталось? Попробуем сегодня проверить.

ASUS Z8NA-D6 — на стыке рынков

За прошедшее время успел сильно измениться рынок «сопутствующих товаров» — плат для Dual LGA1366. Особенно любопытно решение, которое и попало к нам в руки. Дело в том, что Z8NA-D6 стала первой двухпроцессорной платой в мире, рассчитанной на использование в обычных ATX-корпусах.

ASUS Z8NA-D6

Понятно, что без ограничений не обошлось, что хорошо видно по фотографии платы. В условиях ограниченного размера не так-то просто разместить все элементы. Тем более, что для серверного применения нужно одно, а для десктопного — другое. И, несмотря на стандартные размеры, главным для конструкторов было все-таки первое, почему на плату пришлось поставить как минимум видеоадаптер. Да и россыпь SATA-разъемов может неподготовленого человека испугать, хотя на деле всегда работающими являются лишь шесть внизу (на приведенной фотографии) — они обслуживаются помещенным рядышком ICH10R. А вот остальные (частично или полностью) можно задействовать, лишь установив в последний нестандартный разъем расширения специальную PIKE-карту с SAS-контроллером (есть разные варианты последних), после чего можно будет задействовать четыре или восемь разъемов на плате для подключения SAS/SATA-накопителей. Ну а для тех, кому данная функциональность не нужна, компания чуть позже выпустила еще более «десктопную» Z8NA-D6C — без PIKE-слота и SAS-коннекторов.

Что же касается функциональности для настольного использования, то ее по минимуму — необходимая, но не избыточная. В частности, для видеокарт есть всего один слот PCIe x16, а еще два х8 будут, скорее всего, использоваться как х1 — адаптеров с «широким» PCIe для «домашнего» рынка почти не существует (да и если кому вдруг понадобится многопортовый RAID-контроллер, на этой плате лучше использовать фирменный).

ASUS Z8NA-D6

В общем, по сути, слотов расширения всего пять, один из которых — классический PCI. USB 3.0 нет, а обычного USB на заднюю панель выведено всего два порта, eSATA там тоже нет, как и звуковых выходов, зато есть COM-порт и аналоговый видеовыход. Так что «доводить» плату до уровня бытового компьютера придется самостоятельно и творчески. Некоторые же вещи уже не исправить: в частности, на плату поместилось всего шесть слотов памяти — как и на большинство «односокетных» моделей под LGA1366. Впрочем, такое их количество на практике вполне может оказаться достаточным, а вот возможностей по питанию процессоров может не хватить. Дело в том, что для совместимости с массовыми БП АТХ инженерам пришлось ограничиться лишь одним (8-контактным) разъемом для питания процессора. А это, в свою очередь, ограничило список потенциально пригодных процессоров моделями с TDP 95 Вт. Причем в плате есть «защита от дурака» — с Xeon на 130 Вт (даже одним) система стартовать и не пытается. Впрочем, логика решения вполне понятна — плата рассчитана на более-менее массовые корпуса и БП, что слабо вяжется с ситуацией, когда одним лишь процессорам может потребоваться более четверти киловатта (а еще ведь потенциально возможна видеокарта, да и винчестеров с десяток).

Конфигурация тестовых стендов

Процессор Core i7-2600 Core i7-990X Core i7-3960X Xeon X5672
Название ядра Sandy Bridge QC Gulftown Sandy Bridge-E Gulftown
Технология пр-ва 32 нм 32 нм 32 нм 32 нм
Частота ядра (std/max), ГГц 3,4/3,8 3,47/3,73 3,3/3,9 3,2/3,6
Стартовый коэффициент умножения 34 26 33 24
Схема работы Turbo Boost 4-3-2-1 2-1-1-1-1-1 6-6-5-5-3-3 3-3-2-2
Кол-во ядер/потоков вычисления 4/8 6/12 6/12 4/8
Кэш L1, I/D, КБ 32/32 32/32 32/32 32/32
Кэш L2, КБ 4×256 6×256 6×256 4×256
Кэш L3, МиБ 8 12 15 12
Частота UnCore, ГГц 3,4 2,66 3,3 2,66
Оперативная память 2×DDR3-1333 3×DDR3-1066 4×DDR3-1600 3×DDR3-1333
Видеоядро GMA HD 2000
Сокет LGA1155 LGA1366 LGA2011 LGA1366
TDP 95 Вт 130 Вт 130 Вт 95 Вт

Топовым Xeon с TDP 95 Вт является X5675 (шесть ядер, 3,06 ГГц), но ни его, ни X5670 (отличается тактовой частотой — 2,93 Ггц) нам добыть пока не удалось. Впрочем, главным вопросом, пожалуй, стоит считать «нужно ли вообще гнаться за восемью ядрами?», так что для ответа на него подойдет и парочка X5672 — четырехъядерные процессоры со стартовой частотой 3,2 ГГц. Ну а с кем их сравнивать — вопрос очевидный: лучшие шестиядерники для старой LGA1366 и новой LGA2011, а также недорогой Core i7-2600 для массовой LGA1155.

  Системная плата Оперативная память
LGA1155 Biostar TH67XE (H67) 8 ГБ 2×1333; 9-9-9-24
LGA2011 ASUS P9X79 Pro (X79) 16 ГБ 4×1333; 9-9-9-24
LGA1366 Intel DX58SO2 (X58) 12 ГБ 3×1333; 9-9-9-24
Dual LGA1366 ASUS Z8NA-D6 (5500) 16 ГБ 2×(2×1333; 9-9-9-24)

Несмотря на наличие на плате шести слотов для памяти, мы задействовали всего четыре — во-первых, в свое время уже успели установить, что трехканальный режим работы памяти на LGA1366 никаких преимуществ перед двухканальным не имеет, а во-вторых… Просто не нашлось под рукой еще пары модулей по 4 ГБ :) В результате в какой-то степени конфигурация уравнялась с LGA2011 и по количеству, и по качеству, что даже более интересно, чем сферические параметры в вакууме.

Тестирование

Традиционно, мы разбиваем все тесты на некоторое количество групп, и приводим на диаграммах средний результат по группе тестов/приложений. Детально с базовой методикой тестирования вы можете ознакомиться в отдельной статье, а для сегодняшнего тестирования мы ее модифицировали, «выбросив» все тесты, неспособные задействовать хотя бы восемь потоков вычисления. Соответственно, и баллы на диаграммах будут несовместимы с основной линейкой тестовых статей, а точкой отсчета сегодня нам послужит Core i7-2600. Тем, кто интересуется более подробной информацией, опять-таки традиционно предлагается скачать таблицу в формате Microsoft Excel, в которой все результаты приведены как в преобразованном в баллы, так и в «натуральном» виде.

Финальный рендеринг трёхмерных сцен

Первые же результаты — и первые неожиданности. Мягко говоря. Однако если внимательно изучить подробные результаты и вспомнить предыдущий материал по двухпроцессорным системам, «неожиданностями» они быть перестают — и тогда, и сейчас результаты сильно испортила Maya. В прошлый раз мы списали их просто на недостаточную многопоточную оптимизацию, однако два года назад у нас еще не было под рукой шестиядерных процессоров. Сейчас старый вывод можно скорректировать — на самом деле Maya умеет неплохо использовать много потоков вычисления, но плохо относится к мультисокетным системам. Очень может быть, что связано это с конфигурацией системы памяти, т. е. рендер-движок не может разбить задачу на действительно независимые части. Соответственно, полностью загружается работой один процессор, а второй частично простаивает, в результате чего результат двух Xeon X5672 оказывается лишь незначительно лучшим, чем у одного Core i7-970. Но лучшим, т. е. даже распределенные по двум сокетам восемь ядер более чем сравнимы с шестью при близких частотах (у i7-970 немного менее агрессивный буст-режим, а вот стартовая частота вообще одинаковая). Чего, естественно, недостаточно уже, чтобы обогнать хотя бы более высокочастотный Core i7-990X той же архитектуры, не говоря уже о нынешнем настольном топе. А одинаковым с последним общий результат оказался за счет выигрыша в VRay и Lightwave, таких проблем не имеющих.

Т. е., как видим, даже такая вроде бы идеальная для многопроцессорных систем задача, как рендеринг, имеет свои особенности. Что, однако, не отменяет полезность рендер-серверов даже для Maya — ведь если бы у нас просчитывался не один проект, а хотя бы два независимых, положение бы изменилось радикально.

Кодирование аудио

Зато здесь организация теста такова, что параллелизм почти идеальный. Обогнать i7-2600 вдвое не удалось, поскольку особенности архитектуры тоже сказываются — 3960Х заметно быстрее 990Х, но приблизились к тому мы максимально близко. Да и ничего удивительного здесь нет — кодирование каждого из файлов никак не зависит от остальных, а одновременно их обрабатывается столько, сколько аппаратных потоков вычисления поддерживается.

Компиляция

Еще одна идеальная для многопроцессорных систем сфера применения. Причем, как нам кажется, здесь сказалось не только количество потоков, но и кэш-память, к которой сильно неравнодушны компиляторы (пара Х5672 имеет на двоих аж 24 МиБ), да и два независимых контроллера памяти способны иногда работать лучше, чем один более быстрый.

Кодирование видео

А вот с кодированием видео не вышло ничего хорошего. По ряду причин: кроме «чистых» кодеков есть у нас тут и программы высокого уровня (где не на всех стадиях можно добиться высокого параллелизма); зависимость по данным; где-то и просто неспособность «переварить» слишком высокое количество потоков… и т. д. и т. п. А где-то — все поименованное сразу. И наиболее важным, пожалуй, тут оказывается не то, что пара X5672 по совокупности чуть-чуть уступила даже i7-990X, а то, что она во всех подтестах медленнее, чем i7-3960X. Даже в чистом кодировании силами x264, который очень уж хорошо относится к Sandy Bridge и хуже — к предыдущим архитектурам :)

Многопоточный офис

Собирательная группа, созданная дабы не пропадали результаты некоторых интересных подтестов, обычно заключенных в «малопоточное окружение». Впрочем, если посмотреть подробные результаты, то интересными оказываются только упаковка в 7-Zip и распознавание тестов в FineReader (а чем, собственно, не офис), где пара Xeon оказалась безоговорочным лидером. Во всех остальных случаях проигрыш новому экстремалу (а иногда и не только ему), что и приводит к закономерному общему итогу.

Java

Java-машина любит потоки вычисления, но не менее того она любит хорошие микроархитектуры, так что нет ничего удивительного в том, что один современный шестиядерный процессор демонстрирует производительность как у пары менее современных четырехъядерных. А вот шестиядерник из своего поколения, как и следовало ожидать, оная пара обгоняет практически пропорционально количеству ядер.

Многозадачное окружение

И вновь мы обращаемся к одному из «экспериментальных» тестов методики, поскольку он как нельзя лучше подходит для тестирования двухпроцессорных систем — задач много и все они друг от друга не зависят. Хотя результаты нельзя назвать слишком уж высокими: одиночный Core i7-2600, конечно, удалось обогнать в полтора раза, что не так уж и плохо, однако перевес над шестиядерными процессорами невелик. Виной тому, как нам кажется, слишком высокая удельная производительность каждого из ядер современных процессоров Intel: чем она выше, тем, очевидно, ниже степень одновременной загрузки: пока там дело дойдет до последних задач, запущенные первыми уже успеют частично закончится. В общем, как не старайся, а потребность в очень большом количестве ядер не прослеживается — чем дальше, тем меньше эффект от их добавления.

Итого

Старательно отобрав приложения и добавив к подсчету итогового результата «экспериментальный» тест на многозадачность, мы сделали пару Xeon формальным победителем. Но не фактическим — так воспринимать двухпроцессорную систему мешают два обстоятельства. Во-первых, цена: два X5672 стоят порядка 3000 долларов (одни лишь процессоры — без учета прочих компонентов системы), а один Core i7-2600 — ровно на порядок меньше. Быстродействие же при этом различается всего в полтора раза. А ведь есть еще и Core i7-3930K, который стоит порядка 600 долларов, но по производительности оказывается где-то между 990Х и 3960Х, т. е. от пары Xeon отстает лишь на 10%. Второй же фактор — энергопотребление. И его прямое следствие — тепловыделение. «Обычные» i7 имеют TDP 95 Вт, «экстремальные» — 130 Вт, а наши испытуемые заставляют научиться выводить из корпуса все 190 Вт на двоих. Т. е. ASUS Z8NA-D6, конечно, рассчитана на обычные ATX-корпуса, но комфортно ей будет не во всяком. При этом по поводу прироста производительности все уже сказано выше…

Так нужно ли много ядер на десктопе? И да, и нет :) Все-таки восемь, которые мы сегодня тестировали — это не слишком «много»: в тех же условиях можно и все 12 получить — за те же деньги и с тем же теплопакетом. И при частотах, сравнимых с настольными шестиядерниками. И тогда в соответствующем (т. е. умеющем хорошо использовать несколько многоядерных процессоров) программном обеспечении такая конфигурация сумеет в полтора раза обойти уже не только i7-2600, но и i7-3930K. Но главное здесь — как раз программное обеспечение: как видим, массовые приложения (даже многопоточные) не всегда адекватно воспринимают и 2×4 ;)

Если бы удалось сделать восьмиядерный Sandy Bridge-Е сравнимый и по частотам, и по энергопотреблению с шестиядерной моделью, он был бы прекрасным выбором для таких программ, не слишком сильно проигрывая дешевым моделям на всех остальных. Ну а поскольку этого пока не получается (TDP и частоты Xeon E5-2600 позволяют это утверждать), шесть — действительно разумный компромисс: и для одиночного высокочастотного настольного процессора, и для работы в паре под управлением специфического многопоточного софта (вряд ли кто будет спорить, что в таких условиях пара Xeon E5-2640 легко и не напрягаясь обгонит одиночный Xeon E5-2680 или что-нибудь аналогичное по параметрам). Понятно, что в последнем случае два восьмиядерника еще лучше, но оно и дороже.

В общем, в последние годы многопроцессорные системы на месте не стояли. Однако вектор их развития все больше и больше отдаляется от «магистрального» направления, задаваемого массовыми системами. В первую очередь это касается программного обеспечения — «ширпотреб» (пусть и профессиональный) оптимальнее использовать на однопроцессорных «классических» компьютерах, а для полной утилизации возможностей двухпроцессорной системы требуется специальное ПО. Так что главным вопросом выбора является то, есть ли таковое среди используемого. ;) Если да, то двухпроцессорная рабочая станция будет к месту. Если нет, то и суда нет.



Благодарим компании ASUS, Corsair, G.Skill и Palit
за помощь в комплектации тестовых стендов.



Дополнительно

Нашли ошибку на сайте? Выделите текст и нажмите Shift+Enter

Код для блога бета

Выделите HTML-код в поле, скопируйте его в буфер и вставьте в свой блог.