1

Возможный дубликат:
Насколько быстро каждое ядро в двухъядерном процессоре?

Я спорю между двумя системами (для простоты):

(1) 2,9 ГГц двухъядерный процессор

(2) 2,3 ГГц четырехъядерный процессор

Теперь, когда я рассматриваю это, у меня есть несколько конкретных вопросов, на которые я хотел бы ответить.

Во-первых, как на самом деле рассчитываются «числа» (частоты) и что они означают? Для двухъядерного 2,9 ГГц это означает, что каждое ядро работает на частоте около 2,9 ГГц или это означает, что каждое ядро работает на частоте 2,9/2 = 1,45 ГГц? Точно так же, дает ли четырехъядерное ядро «чистую» частоту 2,3 ГГц или каждое ядро буквально работает на частоте 2,3 ГГц?

Из того, что я прочитал в Интернете, я догадываюсь, что каждое ядро на самом деле работает с указанной скоростью (я знаю, что вы не можете получить 12 ГГц от четырехъядерной системы с 3 ГГц, если ваш код не является абсолютно линейным в режиме параллелизации).

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

Например, если у меня был выбор 2,6 ГГц двухъядерный или четырехъядерных 2,5 ГГц, даже для однопоточных программ, я бы предположить , что ядро 2,5 четырехъядерных будет идти быстрее , потому что один поток будет прерван меньше другими программами ( в том числе ОПЕРАЦИОННЫЕ СИСТЕМЫ).

1 ответ1

3

Для двухъядерного 2,9 ГГц это означает, что каждое ядро работает на частоте около 2,9 ГГц или это означает, что каждое ядро работает на частоте 2,9/2 = 1,45 ГГц? Точно так же, дает ли четырехъядерное ядро «чистую» частоту 2,3 ГГц или каждое ядро буквально работает на частоте 2,3 ГГц?

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

Например, если бы у меня был выбор двухъядерный процессор с частотой 2,6 ГГц или четырехъядерный с частотой 2,5 ГГц, даже для однопоточных программ, я бы предположил, что четырехъядерный процессор 2,5 ГГц будет работать быстрее, потому что другие программы будут меньше прерывать один поток (включая ОПЕРАЦИОННЫЕ СИСТЕМЫ).

Это глупый вопрос. Вы не можете сравнивать разные процессоры в зависимости от их тактовой частоты. Это все равно что сказать: «У вас есть одно транспортное средство с топливным баком на 10 галлонов и одно с топливным баком на 12 галлонов, которое может двигаться дальше на бензобаке?«Ну, это зависит от того, сколько они весят, насколько велики их двигатели и так далее.

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

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

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

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