Тактовая частота для многоядерного процессора
С выходом многоядерных процессоров в сети стали появляться различные способы вычисления суммарной тактовой частоты процессора. Многие наивно полагают, что четырехядерный процессор с частотой ядер 2,6ГГц в итоге работает как одноядерный процессор с частотой 4*2,6=10.4ГГц. А ведь это совсем не так.
Тактовая частота процессора определяет количество операций, которое может выполнить центральный процессор за единицу времени. Вычисляется тактовая частота процессора за счет перемножения базовой частоты (частоты шины) на множитель. На примере процессора Intel i7 5600U с множителем 20 и базовой частотой шины 133МГц получим тактовую частоту процессора 133*20=2,66ГГц. Тактовую частоту процессора можно повысить методом разгона, для этого можно поднять множитель или базовую частоту. В большинстве случаев повышают множитель в тех процессорах, в которых он разблокирован (серия с индексом «U» для процессоров Intel (например, 5557U) и процессоры серии FX unlocked от AMD).
Как же теперь определить общую производительность многоядерного (на примере 4-х ядерного) процессора, например, с тактовой частотой в 3ГГц? В 4-х ядерном процессоре каждое ядро работает с тактовой частотой 3ГГц. То есть каждое ядро может выполнить равное количество вычислений в единицу времени при условии, что все ядра будут загружены процессом вычисления. За загрузку ядер «работой» отвечает приложение, которое запущено на компьютере пользователя (будь то игра, или архиватор).
Нельзя сказать, что 4-х ядерный процессор с частотой 3ГГц будет иметь производительность на уровне одноядерного с частотой 12ГГц. Это совсем не так. Суть производительности многоядерных процессоров сводится к тому, что вычислительный процесс должен быть разбит на параллельные потоки, которые могут быть выполнены в одно и то же время различными ядрами процессора. У Intel параллельные потоки или многопоточность называется Hyper-Threading.
Если представить себе четыре ручья шириной и глубиной в один метр, скорость течения воды, в каждом из которых составляет 3 м/сек. Понятно, что скорость четырех ручьев не будет составлять 12 м/сек, а вот суммарная производительность всех четырех ручьев составит 12 куб. м. за секунду. То же самое можно отметить и в процессорах, при этом скорость потока воды – это тактовая частота, которая не умножается и не суммируется при увеличении количества ядер.
Преимущество многоядерных процессоров перед одноядерными заметно лишь в тех приложениях и играх, которые используют технологию разбивки процесса вычислений на несколько параллельных потоков. В таких приложениях скорость работы приложений значительно выше одноядерных. В то же время при работе старых приложений, использующих всего лишь один поток, производительность вычислений будет отграничена возможностью одного ядра. Читайте о том, как узнать количество ядер и частоту процессора.
Также некорректно сравнивать производительность двухядерного процессора с тактовой частотой 3ГГц и четырехядерного с тактовой частотой 2,1ГГц. Производительность во многом зависит от используемого приложения и способности этого приложения разделить вычисления на несколько потоков. При прочих равных условиях, когда приложение поддерживает многопоточность, производительность 4-х ядерного процессора с меньшей тактовой частотой будет выше производительности 2-х ядерного процессора с большей частотой. Однако, если приложение не способно разделять потоки, то двухядерный процессор будет более эффективным, так как имеет большую частоту.
Таким образом, производительность современных процессоров в большинстве случаев определяется программным обеспечением, которое способно загрузить все ядра процессора. Также следует понимать, что многопоточность все же предпочтительней одноядерных процессоров, так как все больше производителей ПО выпускают программные продукты, ориентированные именно на многоядерные процессоры. В этом направлении двигаются и разработчики компьютерных игр.