2 или 4 ядерные процессоры. Чем двухъядерный процессор отличается от одноядерного

Чем принципиально отличается обычный процессор от двух ядерного? И вообще что такое ядро процессора?

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

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

На время отвлечемся от процессора, и рассмотрим общий подход Intel к увеличению производительности своих CPU. Обжегшись на архитектуре NetBurst, которая требовала серьезного увеличения тактовой частоты, Intel изменила подход, и выпустила архитектуру нового поколения - Core 2 Duo. Последняя обеспечивает революционный скачок в производительности, при довольно низком энергопотреблении. При этом, как показали многочисленные эксперименты с разгоном, запас по наращиванию тактовой частоты просто колоссальный (до 3,4-3,6 ГГц). Последний фактор позволил бы без особых проблем штамповать все новые версии процессоров еще пару лет (как раз до перехода на 45нм техпроцесс). Однако общие тенденции компьютерной отрасли требуют параллельных вычислений. Соответственно, главная стратегическая задача Intel выражается в разработке многоядерных процессоров.

Двухядерный чип – это фактически два процессора в одном чипе. Преимущество такого процессора над одноядерным проявляется, прежде всего, при работе с многопоточными приложениями. Многопоточные задачи работают быстрее на двухядерных процессорах, потому что операционная система может распределять программные потоки отдельно по каждому ядру, в то время как на одноядерных процессорах задачи меняются по мере выполнения, то есть по очереди. Применение этой технологии позволит увеличить производительность процессоров нового поколения и одновременно избежать роста потребления энергии, которое накладывает ограничения на развитие одноядерных процессоров. Кроме того, чем выше частота процессора, тем больше он теряет производительность при обращении к памяти. Два ядра получаются предпочтительней, чем одно, так как в этом случае легче обеспечить процессор данными для обработки. Поскольку производительность памяти увеличивается медленнее, чем скорость процессоров, увеличение производительности путем использования нескольких ядер выглядит более предпочтительным, чем наращивание частоты.
Доказано что чем больше процессоров,тем быстрее обработка данных, если эти данные делятся для обработки на каждом.
человеческий мозг состоит из милиардов мелких процессоров и думать может одновременно о многих вещах =)

Отличие в том, что часть команд отдаётся на выполнение одному процессору, часть - другому.

Рассмотрим их на примере процессора Intel Pentium 1.

В июне 1989 года Винодом Дэмом (англ. Vinod Dahm) были сделаны первые наброски процессора под кодовым названием P5. В конце 1991 года была завершена разработка макета процессора, и инженеры смогли запустить на нём программное обеспечение. Начался этап оптимизации топологии и повышения эффективности работы. В феврале 1992 года проектирование в основном было завершено, началось всеобъемлющее тестирование опытной партии процессоров. В апреле 1992 года принято решение о начале промышленного производства, в качестве основной промышленной базы была выбрана орегонская фабрика № 5. Началось промышленное освоение производства и окончательная доводка технических характеристик.

Основные отличия от процессора 486:

а) Суперскалярная архитектура. Благодаря использованию суперскалярной архитектуры процессор может выполнять 2 команды за 1 такт. Такая возможность существует благодаря наличию двух конвейеров - u- и v-. u-конвейер - основной, выполняет все операции над целыми и вещественными числами; v-конвейер - вспомогательный, выполняет только простые операции над целыми и частично над вещественными. Чтобы старые программы (для 486) в полной мере использовали возможности такой архитектуры, необходимо было их перекомпилировать. Pentium - первый CISC-процессор, использующий многоконвейерную архитектуру.

б) 64-битная шина данных. Позволяет процессору Pentium за один шинный цикл обмениваться вдвое большим объёмом данных с оперативной памятью, чем 486 (при одинаковой тактовой частоте).

в) Механизм предсказания адресов ветвления. Применяется для сокращения времени простоя конвейеров, вызванного задержками выборки команд при изменении счетчика адреса во время выполнения команд ветвления. Для этого в процессоре используется буфер адреса ветвления BTB (Branch Target Buffer), использующий алгоритмы предсказания адресов ветвления.

г) Раздельное кэширование программного кода и данных. В процессорах Pentium используется кэш-память первого уровня (кэш L1) объёмом 16 Кб, разделённая на 2 сегмента: 8 Кб для данных и 8 Кб для инструкций. Это улучшает производительность и позволяет делать двойное кэширование доступным чаще, чем это было возможно раньше. Кроме того, изменён механизм кэширования.

д) Улучшенный блок вычислений с плавающей запятой (FPU).

е) Симметричная многопроцессорная работа (SMP).

3. Переход к двуядерным процессорам

Рисунок 2 – микрофотография одного из первых двуядерных процессоров

компьютер процессор одноядерный двуядерный

Первой двуядерные чипы для настольных ПК представила корпорация Intel - 11 апреля было официально объявлено о начале поставок процессора Pentium 4 Extreme Edition 840. AMD не заставила себя долго ждать и уже 21 апреля ознакомила публику с тремя серверными двуядерными процессорами Opteron, а также представила новую торговую марку - Athlon 64 X2, под которой уже 9 мая были официально презентованы двуядерные процессоры для настольных ПК.

Переход на двуядерную архитектуру обусловлен тем, что традиционные методы по увеличению производительности практически исчерпали себя. Из-за ряда технологических проблем темпы наращивания тактовых частот в последнее время заметно замедлились. К примеру, в последний год перед появлением двуядерных процессоров компания Intel смогла нарастить частоты своих CPU лишь на 400 МГц, а конкуренты от AMD ускорились всего на 200 МГц. Как видим, рост тактовых частот дается нелегко. А другие методы, такие как увеличение скорости шины и размера кэш-памяти, ощутимого прироста производительности не дают.

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

Что же представляет собой двуядерный процессор? На первый взгляд это просто два процессора, объединенных в общем корпусе. Но не все так просто. Во-первых, нужно различать термины «процессор» и «процессорное ядро». Во-вторых, существует проблема общих ресурсов, доступ к которым нужно распределять между двумя ядрами. Если же посмотреть с точки зрения программного обеспечения, то двуядерный процессор система рассматривает как два независимых. Понятно, что двуядерный процессор способен одновременно выполнять два потока инструкций, в то время как обычный CPU производит вычисления строго по очереди. До этого уже была произведена попытка разделить выполняемые инструкции - речь идет о технологии Intel Hyper-Threading. Вот только в ней два «виртуальных» процессора почти во всем разделяют между собой ресурсы одного «физического» процессора (кэши, конвейер, исполнительные устройства). Практически все ресурсы общие - и если они уже заняты одним из выполняющихся потоков, то второй будет вынужден ожидать их освобождения.

По сути, принцип работы процессора с Hyper-Threading похож на принцип работы многозадачной операционной системы, только происходит это не на программном, а на аппаратном уровне. Разделение потока на две части, как правило, позволяет эффективнее загрузить исполнительные устройства процессора. И при этом немного облегчить операционной системе задачу имитации множества независимых компьютеров на одном существующем процессоре.

Полноценный двуядерный процессор - совсем другое дело. В этом случае система определяет действительно два «честных» процессорных ядра. И прирост производительности при этом составляет уже не 10-20% (средний показатель для процессора с технологией Hyper-Threading), а все 80-90% и даже больше (естественно, при использовании обоих ядер). В принципе, двуядерный процессор представляет собой SMP-систему (SMP - Symmetric MultiProcessing, симметричная многопроцессорная обработка; термин, обозначающий систему с несколькими равноправными процессорами). По сути своей он не отличается от обыкновенной двухпроцессорной системы, в которой установлено два независимых процессора. В результате мы получаем все преимущества двухпроцессорных систем без необходимости использования сложных и дорогих двухпроцессорных материнских плат.

Один из способов создать энергоэффективный процессор - это переход от одноядерной процессорной архитектуры к многоядерной. Дело в том, что многоядерные процессоры позволяют повышать производительность именно за счет увеличения IPC, то есть количества инструкций программного кода, обрабатываемых за каждый такт работы процессора. В идеале при переходе от одноядерной архитектуры процессора к двуядерной можно сохранить тот же уровень производительности, снизив тактовую частоту каждого из ядер почти вдвое. В реальности, конечно, все несколько сложнее - результат будет зависеть от используемого приложения и его оптимизации к двуядерному процессору. То есть, чтобы приложение могло одновременно задействовать несколько процессорных ядер, оно должно хорошо распараллеливаться. Если же программный код написан таким образом, что подразумевает только последовательное выполнение инструкций, от многоядерности проку не будет. Для того чтобы продемонстрировать, как именно масштабируется производительность многоядерного процессора в зависимости от оптимизации программного кода к многоядерной архитектуре, рассмотрим следующий пример. Имеется многоядерный процессор с количеством ядер равным n. Предположим, что на этом процессоре выполняется программа, включающая N инструкций программного кода, причем S инструкций этого кода может выполняться только последовательно друг за другом, а P (равное N – S) инструкций являются программно независимыми друг от друга и могут выполняться одновременно на всех ядрах процессора. Обозначим через s (равное S / N) - долю инструкций, выполняемых последовательно, а через p (равное 1 – s) - долю инструкций, выполняемых параллельно.

Рисунок 3 - Выполнение программного кода на одноядерном процессоре

В случае применения одноядерного процессора (рисунок 4) время, затрачиваемое на выполнение всего программного кода, составит:

t1 = N / IPS (3.1)

В случае использования n-ядерного процессора (рисунок 1) время, затрачиваемое на выполнение всего программного кода, окажется меньше за счет параллельного выполнения P команд на n ядрах процессора и составит:

(3.2)

Поскольку приростом производительности в данном случае можно считать сокращение времени выполнения программы при использовании многоядерного процессора по сравнению со временем выполнения той же программы при применении одноядерного процессора, то есть t1 / tn, получим, что прирост производительности составит:

(3.3)

Графическая зависимость прироста производительности от числа ядер процессора показана на рисунке 5.


Рисунок 4 - Выполнение программного кода на многоядерном процессоре

Как видно из приведенной формулы, прирост производительности в случае многоядерной архитектуры процессора в большой степени зависит от оптимизации приложения к многоядерной архитектуре, то есть от его способности распараллеливаться. К примеру, даже в случае, когда 90% программного кода распараллеливается на несколько исполнительных ядер, использование четырехъядерного процессора позволяет получить только трехкратный прирост производительности в сравнении с одноядерной архитектурой процессора.


Рисунок 5 - Зависимость прироста производительности от числа ядер процессора

Рассмотренный пример представляет собой идеальную ситуацию, но в реальности все несколько сложнее, тем не менее, основная идея остается неизменной: использование многоядерных процессоров требует внесения кардинальных изменений в программное обеспечение. До сих пор, обсуждая прирост производительности, который можно получить при переходе от одноядерной к многоядерной архитектуре, мы рассматривали только одно приложение. Тем не менее, многоядерные процессоры позволяют ощутить существенный прирост производительности при одновременной работе нескольких приложений. В идеальном случае каждое приложение может исполняться на отдельном ядре процессора независимо от других приложений. К примеру, можно параллельно конвертировать видеофайлы, играть в игры и т.п. Многоядерная архитектура процессоров позволяет одновременно решать две глобальные задачи: увеличивать производительность процессоров и одновременно создавать энергоэффективные процессоры. Конечно, многоядерная архитектура - это лишь один из рецептов создания высокопроизводительных энергоэффективных процессоров. Для создания действительно энергоэффективного многоядерного процессора необходимо, чтобы каждое его ядро было оптимизировано для многоядерной архитектуры и к тому же было энергоэффективным. К примеру, двухъядерные процессоры Intel, основанные на архитектуре NetBurst (семейство Intel Pentium D), позволяют лишь частично решить проблему повышения энергоэффективности. Дело в том, что микроархитектура каждого ядра процессора семейства Intel Pentium D оптимизирована под масштабирование тактовой частоты и не является энергоэффективной. Другим подходом к повышению производительности в рамках заданного энергопотребления является переход на принципиально иную микроархитектуру ядра. Отметим, что данный подход не противоречит идее многоядерности, а скорее дополняет ее.

Современная компьютерная индустрия не стоит на месте. Уже практически каждый компьютер укомплектован многоядерными процессорами. Но ведь еще не каждый знает, в чем отличие их от одноядерных аналогов, которые остаются в прошлом. Иногда при покупке человек стремится купить новинку, при этом он не осознает ее значимость и тратит деньги на вещь, которая ему не принесет существенной пользы.
Чтобы понять необходимость покупки процессора с одним или двумя ядрами необходимо осознавать разницу двух вариантов, в каких случаях каждый из них лучше.

Особенности строения одноядерных процессоров

Всем известно, что мощность и скорость работы всего персонального компьютера в первую очередь зависит именно от центрального процессора. Поэтому, чем частота работы процессора выше, тем быстрее происходит выполнение команд пользователя. Операции над данными производит именно ядро в процессоре.

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

Особенностью одноядерных процессоров по архитектуре можно считать:

  • Структуру с полным разделением команд и данных.
  • Скалярная архитектура, которая позволяет выполнять параллельно несколько команд в различных устройствах.
  • Изменение последовательности команд динамического типа, когда работает принцип опережения.
  • Использование команд происходит по типу конвейера.
  • Направление ветвей выполнения предсказуемо.

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

Особенности работы двухъядерных процессоров

Если, в общем, рассказывать о работе процессора с двумя ядрами в сравнении с одноядерным собратом, то можно пояснить все простым примером. Например, пользователь копирует файлы, а при этом решил посмотреть фильм. Ему кажется, что обе операции проводятся одновременно, но при работе одноядерного процессора эти действия идут последовательно, так как частота выполнения команд очень высокая, то и создается такое ощущение. Но при наличии двухъядерного процесса эти операции действительно выполняются одновременно.

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


Наиболее эффективно двухъядерные процессоры показывают себя при работе с многопоточными приложениями, именно здесь получается наивысшая производительность. Так как многочисленные задачи распределяются между двумя ядрами для выполнения. Такое распределение позволяет снизить потребление электроэнергии. Ведь именно этот фактор тормозит развитие одноядерных процессоров.

В чем отличия двухъядерного процессора

При изучении архитектуры строения как одноядерных, так и двухъядерных процессоров можно выделить большой список различий:

  • Если не запускать сложных многопоточных приложений или несколько одновременно, то различия в работе процессора с одним ядром или двумя, будут не так ощутимы и заметны.
  • В процессоре с двумя ядрами присутствует также разделенная кэш память.
  • При наличии двухъядерного процессора существует ощутимый плюс, так как при отказе одного ядра, второе ядро будет забирать всю нагрузку только на себя.
  • Двухъядерный процессор имеет большую кэш память и частоту.

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

Преимущества использования двухъядерных процессоров

Зная особенности структуры и существенные отличия процессоров с одним и двумя ядрами можно выделить основные преимущества использования двухъядерных процессоров:

  1. Быстрая работа браузера при загрузке и отображении.
  2. Высокая производительность в игровых приложениях.
  3. При работе в многозначном режиме увеличивается скорость работы нескольких потоков.
  4. Высокое быстродействие и плавность работы.
  5. Снижение энергопотребления при увеличении производительности.

В заключение можно сделать вывод, что процессор с одним ядром или двумя имеет существенные различия, как в результате работы, так и в своей архитектуре.

Конечно, понятно, что процессор с двумя ядрами и более будет более производительным. Для домашнего пользования в принципе не критически приобретать компьютер и с одним процессором. Но если есть финансовые возможности приобрести компьютер, в конфигурации которого два процессора, то стоит покупать. Ведь информационный мир не стоит на месте. Программы дорабатываются, техника усовершенствуется. С каждым днем все большее число программных продуктов ориентировано на работу с 64-битными системами.

Эпоха одноядерных процессоров уходит в прошлое. CPU, оснащенные двумя вычислительными ядрами, начали активное наступление на сегмент рынка настольных компьютеров. А там, глядишь, и многоядерные подтянутся…

В апреле-мае этого года в IT-индустрии произошли знаменательные события: монстры процессорного рынка - AMD и Intel - явили миру CPU с несколькими вычислительными ядрами. Первой двухъядерные чипы для настольных ПК представила корпорация Intel - 11 апреля было официально объявлено о начале поставок процессора Pentium 4 Extreme Edition 840 . AMD не заставила себя долго ждать и уже 21 апреля ознакомила публику с тремя серверными двухъядерными процессорами Opteron, а также представила новую торговую марку - Athlon 64 X2 , под которой уже 9 мая были официально презентованы двуядерные процессоры для настольных ПК.

Переход на двухъядерную архитектуру обусловлен тем, что традиционные методы по увеличению производительности практически исчерпали себя. Из-за ряда технологических проблем темпы наращивания тактовых частот в последнее время заметно замедлились. К примеру, в последний год перед появлением двухъядерных процессоров компания Intel смогла нарастить частоты своих CPU лишь на 400 МГц, а конкуренты от AMD ускорились всего на 200 МГц. Как видим, рост тактовых частот дается нелегко. А другие методы, такие как увеличение скорости шины и размера кэш-памяти, ощутимого прироста производительности не дают.

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

Два ядра

Что же представляет собой двухъядерный процессор? На первый взгляд это просто два процессора, объединенных в общем корпусе. Но не все так просто. Во-первых, нужно различать термины "процессор" и "процессорное ядро". Во-вторых, существует проблема общих ресурсов, доступ к которым нужно распределять между двумя ядрами.

Если же посмотреть с точки зрения программного обеспечения, то двухъядерный процессор система рассматривает как два независимых. Понятно, что двухъядерный процессор способен одновременно выполнять два потока инструкций, в то время как обычный CPU производит вычисления строго по очереди.

До этого уже была произведена попытка разделить выполняемые инструкции - речь идет о технологии Intel Hyper-Threading. Вот только в ней два "виртуальных" процессора почти во всем разделяют между собой ресурсы одного "физического" процессора (кэши, конвейер, исполнительные устройства). Практически все ресурсы общие - и если они уже заняты одним из выполняющихся потоков, то второй будет вынужден ожидать их освобождения.

По сути, принцип работы процессора с Hyper-Threading похож на принцип работы многозадачной операционной системы, только происходит это не на программном, а на аппаратном уровне. Разделение потока на две части, как правило, позволяет эффективнее загрузить исполнительные устройства процессора. И при этом немного облегчить операционной системе задачу имитации множества независимых компьютеров на одном существующем процессоре.

Полноценный двухъядерный процессор - совсем другое дело. В этом случае система определяет действительно два "честных" процессорных ядра. И прирост производительности при этом составляет уже не 10-20% (средний показатель для процессора с технологией Hyper-Threading), а все 80-90% и даже больше (естественно, при использовании обоих ядер). В принципе, двухъядерный процессор представляет собой SMP-систему (SMP - Symmetric MultiProcessing, симметричная многопроцессорная обработка; термин, обозначающий систему с несколькими равноправными процессорами). По сути своей он не отличается от обыкновенной двухпроцессорной системы, в которой установлено два независимых процессора. В результате мы получаем все преимущества двухпроцессорных систем без необходимости использования сложных и дорогих двухпроцессорных материнских плат.

Чего же ожидать от двухпроцессорных систем? В приложениях, оптимизированных под многопроцессорность, можно получить ощутимый - вплоть до двукратного - прирост производительности. Это касается многих профессиональных приложений, большинства программного обеспечения по обработке цифрового контента (звук, видео, графика), а также программ, уже оптимизированных под технологию Hyper-Threading.

Intel Pentium D

Для корпорации Intel выпуск процессоров с двухъядерной архитектурой был фактически неизбежен, поскольку ядро Prescott на сегодня практически полностью исчерпало свой запас по тактовой частоте, ограниченный 4 ГГц. Причем ожидается, что уже к концу 2006 года доля двухъядерных чипов в поставках Intel для рынков настольных и мобильных ПК составит более 70%, а на серверном рынке этот показатель должен достичь более 85%. Эти цифры весьма убедительно показывают, сколь серьезные надежды возлагает Intel на новую архитектуру.

Первые двухъядерные процессоры Intel для настольных систем изготовлены на основе ядра Smithfield . Фактически оно состоит из двух ядер Prescott, выполненных на одном полупроводниковом кристалле. Туда же помещается арбитр, который следит за состоянием системной шины и помогает разделять доступ к ней между двумя CPU. У каждого ядра - собственная кэш-память второго уровня объемом 1 Мб. Все взаимодействие между ядрами в Smithfield происходит через системную шину.

Smithfield имеет примерно вдвое большую площадь по сравнению с процессорным ядром Prescott - 206 мм2. Число транзисторов в новых процессорах составляет 230 млн.

На базе Smithfield на данный момент выпускается два типа процессоров для настольных компьютеров: просто двухъядерные Pentium D и CPU для энтузиастов - Pentium Extreme Edition. Двухъядерные процессоры упаковываются в корпус LGA775 и работают с частотой системной шины 800 МГц.

Линейка CPU Pentium D представлена тремя моделями: 820, 830 и 840 с частотами, соответственно, 2.8, 3.0 и 3.2 ГГц. В элитарном секторе есть модель Pentium Extreme Edition 840, процессорные ядра которой работают на частоте 3,2 ГГц. Отличие экстремального двухъядерника от остальных заключается в разблокированном коэффициенте умножения и в присутствии технологии Hyper-Threading, которая отключена в моделях линейки Pentium D. Таким образом Pentium Extreme Edition будет определяться операционной системой как четыре логических процессора.

Основные характеристики новых CPU приведены в таблице ниже.


Как видим, максимальная частота двухъядерного процессора равна 3,2 ГГц, в то время как одноядерные модели достигли отметки 3,8 ГГц. Это объясняется ограничениями по тепловыделению и энергопотреблению процессоров. Prescott и так довольно сильно греется и много "кушает", а объединение двух ядер на одном кристалле приводит к значительному росту упомянутых характеристик. Поэтому, двухъядерные процессоры и характеризуются такой относительно низкой тактовой частотой.

Заметим также, что новое процессорное ядро наследует от Prescott весь набор современных технологий: поддержку 64-битных расширений EM64T, технологию безопасности Execute Disable Bit, а также полный набор средств Demand Based Switching для управления тепловыделением и энергопотреблением, включающий технологии C1E (Enhanced Halt State), TM2 (Thermal Monitor 2) и EIST (Enhanced Intel SpeedStep). Три последние технологии не поддерживаются младшей двухъядерной моделью Pentium D 820, поскольку для их работы требуется динамическое изменения множителя процессора, а коэффициент умножения этого чипа (14x) является минимальным для CPU на основе Prescott и его производных.

AMD Athlon 64 X2

Двухъядерные процессоры производства AMD именуются Athlon 64 X2. Из названия видно, что новые CPU имеют архитектуру AMD 64, а индекс "X2" указывает на присутствие двух вычислительных ядер.

На сегодняшний день модельный ряд Athlon 64 X2 включает пять процессоров с рейтингами 3800+, 4200+, 4400+, 4600+ и 4800+ - их основные характеристики приведены в таблице внизу.


В основе этих процессоров - ядра с кодовыми именами Toledo и Manchester . Различия между ними - в размере кэша второго уровня: у Toledo кэш L2 имеет объем 1 Мб на каждое ядро, а у Manchester этот показатель вдвое меньше (по 512 Кб на каждое ядро).

Процессоры с рейтингами 4400+ и 4800+ построены на основе ядра Toledo и работают на частотах 2,2 ГГц и 2,4 ГГц соответственно. А CPU с рейтингами 3800+, 4200+ и 4600+ имеют ядро Manchester и характеризуются тактовыми частотами 2,0 ГГц, 2,2 ГГц и 2,4 ГГц. Существуют также варианты трех последних процессоров на основе ядра Toledo, но с отключенной половиной кэша.

Ядро Toledo состоит примерно из 233,2 млн. транзисторов и имеет площадь около 199 мм2. Площадь ядра Manchester заметно меньше - 147 мм2; количество транзисторов составляет 157 млн.

В отличие от конкурента, AMD не стала уменьшать частоту новых CPU. Как видим, тактовая частота самого быстрого двухъядерного процессора соответствует частоте старшей модели в линейке Athlon 64 (правда, существует и более быстрый геймерский FX). Из этого следует, что даже в приложениях, не оптимизированных под многопоточность, Athlon 64 X2 должна демонстрировать очень хороший уровень производительности.

Следует отметить, что подход к реализации двухъядерности в процессорах AMD несколько отличается от предложенного Intel, хотя Athlon 64 X2, как и Pentium D, по сути представляет собой два процессора, объединенных на одном кристалле. Дело в том, что ядра в Smithfield взаимодействуют посредством системной шины - а в Athlon 64 X2 реализован иной подход. Еще на этапе разработки архитектуры AMD 64 была предусмотрена возможность создания многоядерных процессоров. Каждое из ядер Athlon 64 X2 обладает собственным набором исполнительных устройств и выделенной кэш-памятью второго уровня; контроллер памяти и контроллер шины HyperTransport общие. А вот взаимодействие каждого ядра с разделяемыми ресурсами происходит посредством специального коммутатора (Crossbar Switch) и интерфейса системных запросов (System Request Interface), в котором формируется очередь системных запросов (System Request Queue). И, что самое главное, на этом же уровне организовано и взаимодействие ядер, благодаря чему вопросы когерентности кэшей решаются без дополнительной нагрузки на системную шину и шину памяти.

Двухъядерные процессоры AMD, в отличие от представителей Intel, не работают с DDR2. Отсутствие поддержки современных типов памяти с высокой пропускной способностью объясняется тем, что компания в первую очередь стремилась сохранить совместимость Athlon 64 X2 с существующими платформами. Зато, в отличие от двухъядерных процессоров Intel, для которых необходим новый чипсет, эти CPU могут устанавливаться на те же материнские платы, что и обычные Athlon 64.

В результате Athlon 64 X2 имеют корпус Socket 939, двухканальный контроллер памяти с поддержкой DDR400 SDRAM и работают с шиной HyperTransport с частотой до 1 ГГц. Благодаря этому двухъядерные процессоры AMD не нуждаются в новых чипсетах и материнках - достаточно обновить BIOS на уже существующих платах под Socket 939. Стоит также отметить, что энергопотребление Athlon 64 X2 удалось вписать в ранее установленные рамки для Athlon 64.

Новый процессор поддерживает технологии AMD64 (поддержка 64-битных расширений), Enhanced Virus Protection (защита от некоторых типов вирусов), а также Cool’n’Quiet (понижение тепловыделения и энергопотребления процессора).

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

В тестовую лабораторию журнала поступили двухъядерные CPU обоих гигантов процессорного рынка: Intel Pentium D 820 и AMD Athlon 64 X2 4800+ . Сравнивать эти процессоры напрямую нет смысла, поскольку они относятся к, скажем так, разным весовым категориям. Поэтому каждому двухъядернику был противопоставлен его одноядерный предок, работающий на такой же тактовой частоте - речь идет об Intel Pentium 4 520 и AMD Athlon 64 4000+ .

Исследовалось изменение производительности в различных популярных приложениях при использовании систем на основе двухъядерного процессора вместо одноядерного. В качестве тестовых программ применялись приложения, входящие в состав пакета WorldBench 5. Результатом тестов является время, потраченное на выполнение приложения (см. таблицы).

Заключение

Судя по результатам тестирования, прирост производительности в большинстве приложений незначителен. Более солидный выигрыш мы получаем при запуске программ по обработке видео - Microsoft Windows Media Encoder 9.0 и Roxio VideoWave Movie Creator 1.5.

Однако лучше всего двухъядерные процессоры проявили себя при віполнении многозадачного теста, когда одновременно запускалось два приложения - Mozilla и Windows Media Encoder. Причем отрыв Athlon 64 X2 4800+ от одноядерного предка составил 82,2%, а разница между процессорами Intel в этом тесте составила 47,1%. На первый взгляд двухъядерность AMD эффективней, чем Intel. Но не будем забывать, что у Pentium 4 уже была реализована "псевдодвухъядерность" (Hyper-Threading) - не исключено, что именно поэтому прирост получился не таким солидным.

Глядя на менее выдающиеся результаты, показанные в остальных приложениях, можно предположить, что эти программы просто не оптимизированы под многопоточность. Но ведь развитие аппаратных и программных средств никогда не шло параллельным курсом - кто-то кого-то постоянно обгонял, и, как правило, именно "железо" вырывалось вперед, а "софт" наверстывал. Поэтому естественно предположить, что уже в скором будущем производители ПО постараются оптимизировать под многопоточность как можно большее количество своих продуктов. Вот тогда-то двухъядерные процессоры и раскрыть свой потенциал смогут в полной мере.