69

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

Разница, которую я вижу, состоит в том, что мой двухъядерный процессор имеет частоту 2,8 ГГц, а мой четырехъядерный процессор - 2,4 ГГц.

Лучше иметь двухъядерный процессор с высокой тактовой частотой или четырехъядерный процессор с посредственной тактовой частотой?

12 ответов12

53

ПРИМЕЧАНИЕ: этот ответ был написан 8 лет назад. Параллельное программирование стало более актуальным. Вероятно, это связано с внутренними пределами тактовой частоты и быстро приближающимися пределами размера транзистора.


Ваша основная проблема - программное обеспечение, не написанное для многоядерности.

Посмотрите на отличную статью Джеффа Этвуда о выборе двухъядерного или четырехъядерного процессора.

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

Вам ответили здесь (выделение скопировано из статьи Джеффа),

Однако здесь были некоторые сюрпризы, такие как Excel 2007 и настройка "параллельных операций" Lost Planet. Вполне возможно, что разработка программного обеспечения в конечном итоге приведет к тому, что тактовая частота будет иметь меньшее значение, чем параллелизм. Или, в конце концов, это может быть неактуально, если мы не сделаем выбор между более высокими тактовыми частотами и большим количеством ядер процессора. Но в то же время, тактовая частота побеждает большую часть времени.Больше процессорных ядер автоматически не лучше. Обычным пользователям будет лучше с самым быстрым двухъядерным процессором, который они могут себе позволить.


Проблема Front-Side Bus (этот термин меня всегда забавлял).
С Nehalem все меняется... как сказала ArsTechnica в прошлом году.

Закон Мура дал разработчикам процессоров затруднение из-за богатства транзисторов, и нигде это не так очевидно, как в 45-нм процессоре Intel Nehalem. Дебютировав в 4- и 8-ядерном варианте позже в этом году, Nehalem упаковывает тонну аппаратного обеспечения в одно процессорное гнездо. (В первых числах число транзисторов четырехъядерного Nehalem составило 781 миллион; пока не было опубликовано ни одного номера для 8-ядерной модели.) Но пытаться снабдить все это оборудование существующей архитектурой внешней шины на платформе Intel было бы глупо. Так что, что не менее важно, Nehalem также звучит давно назревшим смертельным звонком для архитектуры Intel с положительным гериатрическим фронтом.

Радикальное изменение в пропускной способности системы Intel, которое представляет новое Intel QuickPath Interconnect (QPI), является, пожалуй, крупнейшим фактором, который сформировал дизайн Nehalem. Между QuickPath и встроенным контроллером памяти Nehalem процессор Nehalem будет иметь доступ к беспрецедентному объему общей пропускной способности, особенно в реализациях с двумя и четырьмя сокетами.

AMD ранее перенесла контроллер памяти в процессор и использовала Hypertransport.

18

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

Но два к четырем? Для 99% людей это не будет иметь значения. Вам придется запускать много программ одновременно или использовать программы, которые могут использовать более двух ядер (и реально их не так много). Некоторые медиа-кодеры приходят на ум.

В этом отношении также есть разница между Intel Core 2s и AMD Phenoms. AMD использует Hypertransport, который является протоколом точка-точка, поэтому каждое ядро имеет выделенную полосу пропускания. В Intel Core 2 (но не в Core i7 и других процессорах на базе Niehalem) используется передняя шина, которая совместно использует пропускную способность, поэтому у вас больше ядер, конкурирующих за одинаковую пропускную способность.

Это может потенциально сделать один и тот же тактовый четырехъядерный процессор (незначительно) медленнее в некоторых обстоятельствах. Соотношение цены и качества до сих пор с двумя ядрами ИМХО. При этом у меня есть четырехъядерный процессор.

10

Мне нравится, как Дональд Кнут подводит итог:

Для меня это выглядит более или менее так, как будто разработчики аппаратного обеспечения исчерпали идеи и что они пытаются переложить вину за будущую кончину закона Мура на разработчиков программного обеспечения, предоставив нам машины, которые работают быстрее только на нескольких ключевые ориентиры! Я совсем не удивлюсь, если вся идея многопоточности окажется провалом, хуже, чем подход Itanium, который должен был быть настолько потрясающим, до тех пор, пока не оказалось, что желаемые компиляторы практически невозможно написать. ,

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

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

5

Для моего основного рабочего стола у моего работодателя я использую двухъядерный процессор Xeon с 8 ГБ оперативной памяти.

Когда я программирую, и у меня есть Internet Explorer, Chrome, TweetDeck, Visual Studio 2008 (или 2010) и локальный экземпляр Sql Server Express ... все гудит просто отлично.

Для сравнения, раньше у меня было двухъядерное ядро, и все начинало ползти только при работе Visual Studio, Chrome и Sql Express.

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

1

Согласно Anandtech.com:

Все сводится к TDP чипа, или его тепловой точки проектирования. Чем больше TDP ограничивает платформу, тем больше вы выигрываете от турбо-режима Intel. Позвольте мне выразить это иначе. чтобы встраивать четыре ядра в TDP мощностью 130 Вт, каждое ядро должно работать с более низкой тактовой частотой, чем если бы у нас было только одно ядро с тем же TDP.

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

Это все в контексте необходимости выбирать между ядрами (или потоками) и частотой ядра.

1

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

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

С точки зрения перспективы, двухъядерные процессоры по-прежнему имеют удобную опору.

1

Это зависит. Если вы делаете вещи, которые будут использовать каждое ядро, лучше использовать 4 ядра (редактирование видео, рендеринг и т.д.). В настоящее время большинство людей найдут два быстрых ядра лучше, потому что написано не так много приложений, чтобы в полной мере использовать 4 ядра.

1

Обратите внимание, что новейшие процессоры i7 могут фактически увеличить тактовую частоту на активных ядрах, когда не все из них необходимы; например, если у вас есть четырехъядерный процессор на частоте 2,4 ГГц, но для работы программного обеспечения требуются только 2 ядра, то он может автоматически разогнаться до 2,8 ГГц (не фактическая цифра, просто пример).

И последнее поколение i7, я думаю, может работать на 3 или 4 бинах, если требуется только одно или два ядра. Таким образом, он не может остаться таким же компромиссным решением, как сейчас ...

0

Зависит.

Даже очень.

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

Вы знаете, что ОС не будет загружаться (заметно) быстрее, а веб-страницы не будут загружаться быстрее (хотя они могут рисовать быстрее).

0

В вашем случае четырехъядерный процессор будет лучше. Помните, что чем больше у вас ядер, тем больше параллельной обработки вы можете выполнять. Таким образом, на вашем двухъядерном процессоре вы сможете запускать одно приложение быстрее, чем четырехъядерный, но четырехъядерный может запускать 4 приложения быстрее, чем ваш двойной. Кроме того, если приложение написано для параллельной обработки (многопоточность), приложение будет работать лучше на многоядерной архитектуре.

Однако все это относительно, поскольку четырехъядерный процессор, работающий на частоте 100 МГц, не сможет работать с двухъядерными процессорами с частотой 4 ГГц. Вообще говоря, чем больше ядер, тем лучше.

0

Зависит от того, что вы делаете, а также от возможностей вашей ОС и приложений.

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

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

0

Если вы выполняете много кодирования видео, 3D-рендеринга или сборок с распределенным исходным кодом, то чем больше ядер, тем лучше. Вы увидите заметную разницу в производительности для этих типов приложений при переходе с 1 на 2 до 4 на 8 ядер.

В противном случае стандартные приложения действительно не выиграют от большего количества ядер. Даже игры на самом деле не будут так много использовать несколько ядер. ИМО, вам лучше потратить деньги на лучшую видеокарту.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .