CMP vs SMP на платформе AMD:

SMP-системы на базе Opteron 250 и двухъядерного Opteron 275


Как мы уже писали ранее, появление в списке продуктов обоих основных производителей x86-процессоров CPU с двумя ядрами, вызвало вполне законный интерес: а как их производительность соотносится с «честными» SMP-системами, в которых два ядра, работающие на такой же частоте, «разнесены» по разным процессорам? Соревнование Pentium XE 640 с системой на базе Dual Xeon 3,2 GHz мы уже рассмотрели, и пришли к однозначному выводу: с точки зрения производительности, двухъядерник всё-таки предпочтительней, хотя почти наверняка не за счёт разницы в быстродействии между самими процессорами, а за счёт более «консервативной» платформы. Что же нас ждёт в стане AMD?

На первый взгляд, системы на базе Opteron имеют преимущество в данном соревновании, если сравнивать их с принимавшей участие в наших тестах системой на базе Xeon: в них используется та же DDR400, что и в случае с Athlon 64 X2. Однако нюансы всё же имеются: модули памяти Registered, да к тому же ещё с чуть более высокими таймингами (видимо, дань пресловутой «серверной надёжности»). Кроме того, не следует забывать о том, что в двухпроцессорной системе на базе Opteron мы имеем дело с двумя контроллерами памяти (на каждом из процессоров), а не с одним, как в случае с Athlon 64 X2. Более того: в самом общем случае, память в такие системы может устанавливаться двумя разными способами. В первом случае, память распределяется между процессорами (у каждого из них есть «своя», «близколежащая» память, и «чужая», для обращения к которой он вынужден использовать контроллер памяти второго процессора, с которым он связан по шине Hyper Transport). Во втором случае, один процессор остаётся совсем без памяти (для него, соответственно, вся память «чужая», медленная), ко второму же подключаются все модули (соответственно, для него вся память «своя», быстрая).

На самом деле, существуют ещё и установки BIOS (Node Memory Interleave, DRAM Bank Interleave, Swizzle Memory Banks), вносящие дополнительные… хм… возможности поиграться :), но мы решили предоставить разбираться с ними детально нашему признанному эксперту в данной области Дмитрию Беседину (ждите дополнительную статью…), а в данном тестировании исследовали лишь два самых полярных варианта: четыре модуля на одном процессоре, и по два на каждом (на диаграммах «4 × 1» и «2 × 2», соответственно). Прочие установки ставились в положение «Auto», или в соответствии с BIOS Optimal Defaults. Кроме того, ввиду получения достаточно очевидных и логичных результатов, эксперименты проводились только на системе с двумя одноядерными Opteron 250), а на двухъядерном Opteron 275 использовалась конфигурация «2 × 2».

Также заметим, что полностью корректного сравнения системы на базе двухъядерного Opteron с прочими участниками у нас не получилось, так как старший двухъядерный Opteron пока что имеет меньшую частоту, чем старший десктопный двухъядерник Athlon 64 X2 4800+. Впрочем, нам кажется, всё-таки лучше было протестировать то, что есть на данный момент, чем откладывать выход статьи на потом, в ожидании идеальной совместимости всех конфигураций между собой. Кроме того, нам показалось уместным добавить в диаграммы ещё один процессор: топовый одноядерник Athlon 64 FX-57. Это довольно логично: предоставить читателям возможность оценить, в каких задачах одноядерный CPU с более высокой частотой оказывается более уместен, чем любой из вариантов CMP/SMP.

А вот присутствие двухъядерных процессоров от Intel в данной статье нам показалось, наоборот, совершенно излишним: из ранее вышедшего материала про топовый двухъядерный CPU от этой компании Pentium XE 840, всем, наверное, уже понятно, как у него обстоят дела с производительностью, если сравнивать её с топовыми двухъядерными решениями AMD. Впрочем, желающие освежить в памяти это сравнение, могут открыть указанную выше статью на отдельной странице, и время от времени на неё поглядывать все результаты в обеих статьях сняты в рамках одной методики и 100% сопоставимы между собой.

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

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

  • Процессоры
    • AMD Athlon 64 FX-57 (1 MB L2, 2,8 GHz core)
    • AMD Athlon 64 X2 4800+ (2 × 1 MB L2, 2 × 2,4 GHz core)
    • AMD Opteron 250 (1 MB L2, 2,4 GHz core)
    • AMD Opteron 275 (2 × 1 MB L2, 2 × 2,2 GHz core)
  • Системные платы
    • ASUS A8N-SLI Deluxe (чипсет NVIDIA nForce4 SLI)
    • Tyan Thunder K8WE (S2895) (чипсет AMD-8131 + NVIDIA nForce Pro 2200/2050)
    • «OEM» H8DCE (NVIDIA nForce Pro 2200/2050)
  • Память
    • 2x512 МБ PC3200 (DDR400) DDR SDRAM DIMM 2-2-2-5 (Corsair TwinX)
    • 4x512 МБ Registered PC3200 (DDR400) DDR SDRAM DIMM 3-3-3-8 (Corsair)
  • Видеокарта ATI Radeon X800 (256 MB)
  • Жесткий диск Samsung SP1614C (SATA), 7200 об/мин, 8 МБ кэша
  • Блок питания: FSP 550-60PLN (500-550W)
  • Windows XP Professional SP2, DirectX 9.0c
  • ATI CATALYST 5.4 (Display Driver 6.14.10.6525)

Для тех, кто не обратил на это внимания: в системах на базе Opteron использовался увеличенный в два раза по отношению к нашим стандартам тестирования объём памяти: суммарно 2 ГБ вместо одного. Это было вызвано необходимостью задействовать оба канала контроллера памяти на каждом Opteron, что в сумме даёт нам четыре модуля вместо стандартно применяемых двух. Но поскольку наша тестовая методика не предусматривает использования тестов, которым не хватало бы 1 ГБ ОЗУ, результаты Opteron вполне сравнимы с полученными ранее результатами Athlon 64 X2: дальнейшее наращивание объёма памяти на тестовом стенде не приводит к увеличению скорости прохождения наших тестов, это проверялось. Заметим также, что поскольку на тестирование брались готовые платформы, а не процессоры как таковые, мы сочли возможным удовлетворить пожелания предоставителей тестировать предоставленные ими комплекты по возможности без изменений. Именно поэтому Opteron 250 тестировались на плате от Tyan, а Opteron 275 на «OEM» H8DCE (что это за плата такая, будет рассказано ниже). Впрочем, учитывая одинаковый чипсет и идентичные для обоих стендов тайминги памяти, можно не сомневаться в том, что влияние системных плат на производительность было исчезающе мало (если было вообще).


Плата Tyan Thunder K8WE с установленными
в неё процессорами Opteron 250
и кулерами Titan TTC-K8ATB/825

Отдельно хотелось бы отметить следующее: во-первых, не так уж часто нам попадаются системные платы, в которых использованы наборы логики сразу от двух производителей. Впрочем, учитывая то, что наборы микросхем для платформ AMD Athlon 64 / Opteron, как правило, используют для связи между чипами ту же шину, что и сами процессоры (Hyper Transport), вполне логично ожидать от этих чипсетов «перекрёстной совместимости» между собой. В данном случае в обеих платах используется комбинация чипов nForce Professional 2200 и 2050 от NVIDIA, позволяющих реализовать на плате два полноценных слота PCI-E x16, (благодаря чему платы допускают установку двух карт на чипах от NVIDIA в режиме SLI), плюс SATA 2.0 контроллер с поддержкой функциональности RAID и NCQ. Уже из этого становится очевидной ориентация плат на применение в рабочих станциях, так как на серверных платах видео, как правило, самое примитивное, и интегрированное (серверу мощная видеокарта ни к чему, он большую часть времени работает вообще с выключенным монитором, или даже без оного). Кроме того, на плате Tyan используется чип AMD-8131 (вот оно, смешение чипсетов!), благодаря которому в данном продукте реализованы три слота PCI-X.


Плата Supermicro H8DCE с установленными
в неё процессорами Opteron 275
и кулерами Supermicro SNK-P0014AP4

А предметом многочисленных шуток аксакалов, помнящих времена AMD Athlon Slot A, может стать тот факт, что «OEM» плата попала к нам в классической (кто помнит…) белой коробке «без опознавательных знаков», снабжённой лишь диском с драйверами и небольшой зелёного цвета бумажкой, на которой было написано название платы (но никаких упоминаний имени производителя, что вы, как можно!) Что, впрочем, не помешало нам достаточно легко выяснить, что плата эта произведена, судя по всему, компанией Supermicro. Так что один из последних бастионов «правоверных Intel'овцев» среди производителей системных плат, похоже, скоро падёт.

Результаты тестов

Напомним, что диаграммы со всеми результатами тестов вынесены на отдельную страницу без комментариев, просто «as is». В статье же приведены только сводные диаграммы, объединяющие результаты целой группы тестов в некий средний балл. Такой подход позволяет с одной стороны удовлетворить любопытство особо пытливых читателей, возражающих против сокращения количества приводимых в статьях результатов тестов, а с другой сделать «основной» материал менее пёстрым и насыщенным графикой. Что касается комментариев, то предполагается, что настоящим профи, интересующимся подробностями, они без надобности.

SPECapc for 3ds max 6 + 3ds max 7.0

Полный набор диаграмм

Результаты довольно предсказуемы: дуальный Opteron 250 оказался самым медленным, видимо, за счёт использования регистровой памяти с худшими таймингами (если вы посмотрите на полный набор диаграмм, там хорошо видно, что повлиял на это в основном результат интерактивного подтеста), а «четырёхпроцессорная» система из двух Opteron 275 получила наивысший балл, причём исключительно за счёт потрясающей скорости рендеринга (в интерактиве она медленней Athlon 64 X2 4800+, но быть в данном подтесте быстрее она и не могла, так как интерактивный подтест не задействует более одного CPU, а частота ядер у Opteron 275 меньше).

Дуальный Opteron в режиме «4 × 1» вообще выглядит совершеннейшим «тормозом», однако обратите внимание на звёздочку: дело в том, что для того чтобы данный тест завершался корректно, нам пришлось внести изменения в аппаратную конфигурацию стенда, поэтому этот результат не может считаться полностью корректным, и, по большому счёту, правильнее будет его не учитывать. О причинах вы сможете прочитать в конце статьи, в разделе «Мелкие неприятности».

Maya 6.5



Полный набор диаграмм

SPEC для Maya, по сути, является аналогом Interactive в SPEC for 3ds max, поэтому вполне понятна и объяснима победа одноядерного FX-57. Также вполне объяснимо внушительное преимущество дуального Opteron 275 над всеми остальными системами в тесте на скорость рендеринга: данный процесс практически идеально распараллеливается, поэтому против четырёх практически полноценных процессоров, чья частота всего на 200 МГц меньше, чем у одноядерного дуала и двухъядерника, — как говорится, «не попрёшь».

Lightwave 8.2, рендеринг

А вот у Lightwave с четырьмя процессорами сложилось как-то слабо. Нет, дуальный Opteron 275 всё равно выигрывает с ощутимым отрывом, однако его величина заставляет сомневаться в том, что рендер Lightwave распараллелен оптимальным образом. По идее, выигрыш должен быть ещё больше (смотрите хотя бы на результаты скорости рендеринга в Maya и соответствующего подтеста 3ds max на странице с подробными диаграммами).

SPECapc for SolidWorks 2003

Полный набор диаграмм

Типичная для «однопроцессорного» теста картина: топовый одноядерник обыграл всех (невнимательным напомним, что в данном тесте лучшим является меньший результат). Остальные процессоры идут примерно вровень, лишь опять выделился в худшую сторону Opteron 250 в режиме «4 × 1». На самом деле, немного забегая вперёд, скажем, что это не очень типичная картина для однопоточного приложения видимо, по каким-то причинам, несмотря на то, что память стояла на первом процессоре (CPU0 в терминологии Windows), бенчмарк «сел» на второй (CPU1). Впрочем, в любом случае, полезная информация: вот что происходит, когда процессор исполняет код из «чужой» памяти.

Adobe Photoshop CS (8)

Полный набор диаграмм

К сожалению, средний балл для системы на базе двух Opteron 275, оказался недоступен, так как эта система не смогла пройти все подтесты («слетал» подтест Lighting Effects, подробнее эта ситуация рассмотрена в конце статьи, в разделе «Мелкие неприятности»). Однако по диаграммам с результатами прочих подтестов (см. «Полный набор диаграмм») видно, что четырёхпроцессорная система смогла реализовать свой потенциал только на операции Blur, и всего лишь догнала Athlon 64 X2 4800+ на Rotate и Sharpen. Так что лучшим всё равно является обычный двухъядерник.

Adobe Acrobat 6.0

Достаточно малоинформативный, как оказалось, тест, первый кандидат на вылет из методики по причине почти 100% предсказуемости. Но раз уж пока он в методике числится, мы его всё-таки проводим…

«Универсальное» сжатие данных (архивация)

Полный набор диаграмм

А вот тут мы настоятельно рекомендуем посмотреть подробные диаграммы, так как по общей видно лишь то, кто победил, но совсем не понятно, почему. В 7-zip лучшим оказался двухъядерный Athlon 64 X2 4800+, причём с довольно большим отрывом. Opteron 250 в подтесте 7-zip оказался существенно хуже Athlon 64 X2 4800+, при этом в режиме «4 × 1» он ещё хуже чем в режиме «2 × 2», впрочем, это логично: 7-zip способен задействовать многопроцессорность, а в ситуации когда один из CPU полностью лишён памяти, но активно с ней работает, скорость должна была снизиться.

А вот Opteron 275, несмотря на наличие в системе целых четырёх CPU, не смог выиграть даже у Opteron 250. Судя по всему, это означает, что четыре процессора (в отличие от двух) 7-zip уже не в состоянии использовать эффективно. В однопоточном WinRAR закономерно выиграл одноядерный A64 FX-57, но распределение прочих мест изменилось: худший результат показал Opteron 250 в режиме «2 × 2». Видимо, сказался эффект, когда память распределена по двум CPU, а программа работает только на одном: это подтверждается и тем, что в режиме «4 × 1» результат оказался лучше программа, будучи единственным активным процессом, закономерно «села» на CPU0, там же располагалась и память.

Сжатие мультимедийных данных с потерями (MP3/MPEG2-4)

Полный набор диаграмм

Тут также при внешнем равенстве наблюдаются подчас очень большие различия в деталях. Во всех однопоточных тестах (и даже в одном из подтестов LAME, несмотря на то, что он частично оптимизирован под SMP), победил Athlon 64 FX-57. Однако он же существенно проиграл всем SMP/CMP системам в двух подтестах, умеющих использовать несколько CPU: Windows Media Video 9 и Canopus ProCoder. Однако и в этих двух подтестах не всё одинаково: кодек Windows Media Video вполне неплохо задействовал два процессора, но оказался совершенно равнодушен к четырём (дуальный Opteron 275): результаты этой системы не лучше (даже чуть хуже), чем у двухпроцессорных. И только Canopus ProCoder получил преимущество от 4-х CPU.

CPU RightMark 2004B

Полный набор диаграмм

RightMark поддерживает до 16 потоков рендеринга, поэтому выигрыш дуальной системы на базе двухъядерного Opteron 275 был предсказуем. А вот среди двухпроцессорных стендов опять оказался лучшим Athlon 64 X2 4800+ наверняка из-за более консервативной памяти, использованной на стендах с Opteron 250.

Трехмерные игры и визуализация графики
в профессиональных пакетах

DOOM 3

Far Cry

Painkiller

Unreal Tournament 2004

Общий балл по играм

Полный набор диаграмм

Очень хорошо видна общая закономерность, справедливая для однопоточных задач и режима «4 × 1» у Opteron: когда задача однопоточная, и работает на том же процессоре, на котором стоит память, это получается ощутимо быстрее, чем когда память установлена на двух разных CPU. И, разумеется, абсолютным чемпионом является одноядерный, однопроцессорный, но зато самый высокочастотный Athlon 64 FX-57.

SPEC viewperf

Полный набор диаграмм

В этот раз SPEC viewperf в своём вердикте относительно производительности полностью совпал с игровыми приложениями. Как это, собственно говоря, чаще всего и происходит.

Падение скорости исполнения основного процесса при различном количестве фоновых

Это единственный тест, в который мы сочли возможным включить результаты Pentium XE 840, так как было очень интересно сравнить «виртуальную четырёхпроцессорность» (2 CPU + Hyper-Threading) с «реальной» (два двухъядерных Opteron 275).

Легко заметить, что четырёх реальных CPU (пусть и интегрированных попарно всего в два корпуса) вполне хватает для того, чтобы основное приложение почти не ощущало последствий от работы четырёх фоновых. Нам видится такая картина: фоновые, ввиду своего background-статуса, «свободно гуляют» по трём процессорам, а foreground-приложение оккупировало один CPU, да так на нём и «сидит». Некоторое падение производительности foreground-процесса может быть объяснено многочисленными запросами к памяти от фоновых, которые всё-таки немного мешают основному процессу получать данные из памяти по первому требованию. Кривую для двухпроцессорного Opteron 250 мы сознательно не приводим, так как по характеру она ничем не отличается от кривой двухъядерного Athlon 64 X2 4800+.

«Мелкие неприятности»

Давненько у нас не случалось ситуаций, когда тестовая система просто не могла пройти некоторые тесты, но в данном случае получилось именно так, поэтому нелишним будет рассмотреть выявленные проблемы подробнее.

Tyan Thunder K8WE

Стенд на базе этой платы поначалу не смог пройти тест SPECapc 3ds max в конфигурации «4 × 1», то есть когда все четыре DIMM были установлены в первый процессор, второй же работал вообще без «своей» памяти. Многократные запуски приводили к одному и тому же результату: стенд просто самопроизвольно выключался через некоторое количество времени после запуска теста (но не на одной и той же его стадии, хотя промежуток времени от начала тестирования до выключения был примерно одинаков, плюс/минус минута). Этот феномен заставил нас лучше «всмотреться» в конструкцию платы, и вот что выяснилось:

  1. Реализовать поддержку SLI, то есть два полноценных слота PCI Express x16 инженерам Tyan (впрочем, в Supermicro поступили так же) удалось за счёт использования двух чипов от NVIDIA, каждый из которых содержит один контроллер PCI-E x16.
  2. Поэтому чипы пришлось подключать к Hyper-Transport Link разных процессоров. Таким образом, первый слот PCI-E x16 «завязан» на первый процессор, а второй слот на второй процессор.
  3. Видеокарта нами устанавливалась в первый слот, и первый же процессор в режиме «4 × 1» служил контроллером памяти для всей системы, то есть все четыре DIMM подключались к нему.
  4. Возникло предположение, что когда к процессору подключены все 4 DIMM, и кроме того, на HT-Link у него «висит» контроллер PCI-E x16, на котором работает видеокарта, процессор… просто не справляется с такой нагрузкой!

Данное предположение получило экспериментальное подтверждение: те результаты теста SPEC для 3ds max, которые вы наблюдаете на диаграммах, были получены после установки всех 4-х DIMM в разъемы, подключенные к контроллеру памяти второго процессора (а не первого, как в случае с прочими тестами в конфигурации «4 × 1»). Судя по всему, распределение нагрузки между двумя CPU (первый отвечал только за видеокарту, второй только за память), помогло решить проблему чрезмерной нагрузки, так как после вышеуказанных изменений, система смогла нормально пройти тест SPEC для 3ds max.

Разумеется, после того, как мы обнаружили данную неприятную особенность, мы устроили «внеконкурсное испытание» в такой же ситуации и для платы Supermicro. К чести этой компании стоит отметить, что H8DCE испытание выдержала с честью, пройдя тест 3ds max в режиме «4 × 1» с видеокартой в первом слоте и четырьмя DIMM на первом CPU без сбоев.

Кроме того, мы считаем нужным отметить чрезвычайно высокий нагрев обеих микросхем чипсета nForce Professional на данной плате. После прикосновения пальцем к радиаторам микросхем, продержать его в таком состоянии более секунды было невозможно из-за боязни ожога. С этой точки зрения разумным выглядит подход Supermicro, которая снабдила одну из микросхем активным охлаждением, а вторую — радиатором намного большего, чем у Tyan, размера. Однако в любом случае совершенно очевидна необходимость установки обеих плат в корпус, снабжённый достаточно мощным корпусным вентилятором (а для Tyan, наверное, лучше сразу двумя).

Supermicro H8DCE

…К сожалению, порадовала нас другим «глюком», и вовсе неизлечимым: нам так и не удалось заставить тестовый стенд на базе этой платы пройти подтест Adobe Photoshop / Lighting Effects. Соответственно, как вы могли уже заметить, и общий результат для Photoshop автоматически стал недоступен. На данный момент мы не обладаем ни информацией о причинах данной ошибки, ни даже какими-либо догадками на сей счёт. Нам остаётся лишь констатировать сам факт. На этот раз сбой происходил всегда на одном и том же месте, и выглядел тоже одинаково. Вот так это было:

Заключение

Поскольку тема двухъядерников уже вполне раскрыта в предыдущих статьях, нам остаётся только кратко перечислить новую информацию, которую можно почерпнуть из данного тестирования. Всего значимых пунктов нам видится три:

  1. Как и в случае с двухъядерными процессорами Intel, двухъядерный десктопный процессор AMD Athlon 64 X2, в целом является более предпочтительным с точки зрения производительности, чем двухпроцессорная система на базе равночастотных одноядерных Opteron. Связано это как общей с традиционной консервативностью платформ для серверов и десктопов, предпочитающих более надёжную, но и более медленную память, так и со спецификой организации доступа к памяти в системах на базе Opteron, где с точки зрения однопоточных задач более хорош один способ установки модулей, а с точки зрения многопоточных другой (а подходящего для любого применения, «идеального» как и всегда, нет).
  2. Построение рабочей станции на базе двухъядерных Opteron вряд ли следует признать универсально-удачной идеей, так как даже те приложения, которые получают существенную выгоду от наличия в системе двух процессоров, зачастую не могут столь же хорошо использовать большее их количество (например, четыре). Так что двухъядерный Opteron является в большей степени серверно-ориентированным процессором (как его, собственно, и позиционирует сама AMD). К сожалению, на данный момент у нас нет отработанной методики тестирования быстродействия CPU на серверных задачах, поэтому о скорости систем на базе двухъядерных Opteron при работе в родной для них стихии, мы пока ничего сказать не можем.
  3. Трудно сказать, виной ли тому конкретные использованные нами системные платы или особенности организации памяти, присущие системам на базе Opteron (или оба фактора сразу), но сбои в процессе прохождения вполне стандартных для нашей лаборатории тестов, несколько настораживают. Впрочем, это лишь свидетельствует о том, что приобретая сервер или рабочую станцию, следует убедиться в достаточной их совместимости с набором программного обеспечения, которое будет на них работать. Каковая рекомендация, в общем-то, вполне универсальна, и может быть отнесена отнюдь не только к системам на базе процессоров AMD. Всё-таки сервер или рабочая станция — штука довольно дорогая, и поэтому подход «давайте, мы сначала попробуем, как оно работает, а потом уже купим», как правило, встречает понимание со стороны продавцов подобных систем.
P.S. С нашей точки зрения это очевидно, но мало ли, вдруг кто-то не заметил: для игр ни один из двухъядерников, и ни одну из SMP-систем, рекомендовать по-прежнему нельзя, так как никакого преимущества от наличия в системе более чем одного CPU ни одна компьютерная игра (по некоторым сведениям — кроме шахмат :), до сих пор получать не умеет. А стоит одноядерный процессор, работающий на той же частоте, что и двухъядерник, всегда дешевле.


Плата Supermicro H8DCE с установленными в неё процессорами Opteron 275 и кулерами Supermicro SNK-P0014AP4 предоставлена компанией NIAGARA

Плата Tyan Thunder K8WE с установленными в неё процессорами Opteron 250 и кулерами Titan TTC-K8ATB/825 предоставлена компанией ТРАДИЦИЯ

Память Corsair для систем на базе процессоров Opteron предоставлена компанией Neo Group



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

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

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

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