Другое

Многоядерные процессоры: лучше всегда?

PAE-NX-SSE2-CPU-Windows

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

Многоядерные технологии

PAE-NX-SSE2-CPU-Windows
TobiasD / Pixabay

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

Когда они первоначально были выпущены, производители предлагали всего два ядра в одном процессоре, но теперь есть варианты для четырех, шести и даже 10 или более. Помимо добавления ядер, технология Intel Hyper-Threading удваивает виртуальные ядра, которые видит операционная система .

Процессы и потоки

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

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

Преимущество наличия нескольких ядер состоит в том, что система может обрабатывать более одного потока одновременно. Каждое ядро ​​может обрабатывать отдельный поток данных. Эта архитектура значительно повышает производительность системы, в которой работают параллельные приложения. Поскольку на серверах, как правило, одновременно запускается множество параллельных приложений, технология изначально разрабатывалась для корпоративных клиентов — но поскольку персональные компьютеры стали более сложными и многозадачность увеличилась, они также выиграли от наличия дополнительных ядер.

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

Зависимость от программного обеспечения

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

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

Хороший пример для объяснения этой тенденции — взглянуть на типичную компьютерную игру. Большинство игр требуют какой-либо формы движка рендеринга для отображения происходящего в игре. Кроме того, какой-то искусственный интеллект контролирует события и персонажей в игре. При использовании одного ядра обе задачи выполняются путем переключения между ними. Этот подход не эффективен. Если бы в системе было несколько процессоров, то рендеринг и AI могли бы работать на отдельном ядре — идеальная ситуация для многоядерного процессора.

8> 4> 2?

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

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

Тактовые частоты

Диспетчер задач, показывающий использование процессора

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

Например, двухъядерный процессор может поддерживать базовые тактовые частоты 3,5 ГГц для каждого процессора, тогда как четырехъядерный процессор может работать только на 3,0 ГГц. Если взглянуть на одно ядро ​​на каждом из них, двухъядерный процессор на 14 процентов быстрее, чем на четырехъядерном. Таким образом, если у вас есть однопоточная программа, двухъядерный процессор на самом деле более эффективен. Опять же, если ваше программное обеспечение может использовать все четыре процессора, тогда четырехъядерный процессор будет на 70 процентов быстрее, чем этот двухъядерный процессор.

Выводы

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

Проверьте наши мысли о том, как быстро ПК мне нужно? чтобы лучше понять, какой тип процессора лучше всего соответствует вашим вычислительным потребностям.

Похожие посты
Другое

Обзор Samsung SmartThings Wifi Mesh Router и Smart Home Hub

Другое

Обзор гарнитуры Pansonite VR

Другое

8 лучших таблеток со стилусами в 2020 году

Другое

Скаген Фальстер 2 Обзор