Многопоточность и различия в многоядерности

Поддержка языков программирования

Многие языки программирования в той или иной мере поддерживают многопоточность.

  • IBM PL / I (F) включала поддержку многопоточности (называемой многозадачностью ) еще в конце 1960-х годов, и это было продолжено в оптимизирующем компиляторе и более поздних версиях. Компилятор IBM Enterprise PL / I представил новую модель «потокового» API. Ни одна из версий не входила в стандарт PL / I.
  • Многие реализации C и C ++ поддерживают многопоточность и предоставляют доступ к собственным API потоковой обработки операционной системы. Стандартизованный интерфейс для реализации потока — это потоки POSIX (Pthreads), который представляет собой набор вызовов библиотеки C-функций. Поставщики ОС могут свободно реализовывать интерфейс по своему усмотрению, но разработчик приложения должен иметь возможность использовать один и тот же интерфейс на нескольких платформах. Большинство платформ Unix, включая Linux, поддерживают потоки Pthreads. Microsoft Windows имеет собственный набор потоковых функций в интерфейсе process.h для многопоточности, например beginthread .
  • Некоторые языки программирования более высокого уровня (и обычно кроссплатформенные ), такие как языки Java , Python и .NET Framework , предоставляют разработчикам доступ к потокам, абстрагируя специфические для платформы различия в реализациях потоков во время выполнения. Несколько других языков программирования и языковых расширений также пытаются полностью абстрагировать концепцию параллелизма и потоковой передачи от разработчика ( Cilk , OpenMP , интерфейс передачи сообщений (MPI)). Некоторые языки вместо этого предназначены для последовательного параллелизма (особенно с использованием графических процессоров), не требуя параллелизма или потоков ( Ateji PX , CUDA ).
  • Некоторые интерпретируемые языки программирования имеют реализации (например, Ruby MRI для Ruby, CPython для Python), которые поддерживают многопоточность и параллелизм, но не параллельное выполнение потоков из-за глобальной блокировки интерпретатора (GIL). GIL — это блокировка взаимного исключения, удерживаемая интерпретатором, которая может помешать интерпретатору одновременно интерпретировать код приложения в двух или более потоках одновременно, что эффективно ограничивает параллелизм в многоядерных системах. Это ограничивает производительность в основном для потоков с привязкой к процессору, которые требуют процессора, и не сильно для потоков с привязкой к вводу-выводу или с привязкой к сети. Другие реализации интерпретируемых языков программирования, такие как Tcl, использующие расширение Thread, избегают ограничения GIL за счет использования модели Apartment, в которой данные и код должны явно «совместно использоваться» между потоками. В Tcl у каждого потока есть один или несколько интерпретаторов.
  • В моделях программирования, таких как CUDA, предназначенных для параллельных вычислений данных , массив потоков выполняет один и тот же код параллельно, используя только его идентификатор для поиска данных в памяти. По сути, приложение должно быть спроектировано так, чтобы каждый поток выполнял одну и ту же операцию с разными сегментами памяти, чтобы они могли работать параллельно и использовать архитектуру графического процессора.
  • Языки описания оборудования, такие как Verilog, имеют другую модель потоков, которая поддерживает чрезвычайно большое количество потоков (для моделирования оборудования).

Потоки процессора, многопоточность

Основная статья: Многопоточность

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

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

Сколько нужно ядер и потоков современному обывателю?

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

  • По-хорошему, для офисной работы будет вполне достаточно 2‑ядерных ЦП, но при этом учитывайте, что одновременно работать с браузером, текстовыми редакторами, почтовым клиентом и проигрывателем, не получится – система попросту не справится. А если использовать топологию 2 ядра/4 потока, то ситуация в корне преображается – рук то больше.
  • Игры требуют уже больше ресурсов. Начнем с того, что современные проекты очень падки на ресурсы чипа. Взять к примеру, ту же GTA V или Watch Dogs 2: они способны выжимать все соки из любого камня, поскольку параллельно отрисовывают сцены игры (скрипты), просчитывают окружение, прорабатывают звук, поведение искусственного интеллекта и не только. И все эти процессы еще нужно синхронизировать надлежащим образом.
  • А если копнуть в задачи типа программирования, рендеринга и профессиональной работы с графики, то видно, что здесь и 4‑ядерные/8‑поточные чипы начинают захлебываться и работают на износ.

Многопоточность и все о ней

Многие наверняка слышали выражения из серии «2 потока», «4 потока», «8 потоков» и т.д. При этом физических ядер зачастую было в 2 раза меньше.

Многопоточность у красных появилась совсем недавно, с выходом чипов Ryzen на совершенно новом техпроцессе. Что это такое – тема отдельной статьи.

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

Недостаток технологии заключается в следующем:

  • оба потока обращаются к единой кэш-памяти 2 и 3 уровней;
  • тяжелые вычислительные процессы могут вызвать конфликт в системе.

Знакомы с понятием Turbo Boost? Процесс кратковременно повышает частоту процессора на несколько сотен мегагерц в особо сложных сценариях, чтобы вы не испытывали проблем при обработке сложных данных.

Что такое процессор (CPU)?

Процессор, что это вообще такое? Зачем он нужен? За какие задачи он отвечает?

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

Процессор или, как его еще называют, центральный процессор (Central Processing Unit) — это электронное устройство (интегральная схема), которое выполняет и обрабатывает машинные инструкции, код программ (машинный язык) и отвечает за все логические операции, которые протекают внутри вашей операционной системы и системного блока.

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

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

Кристалл процессора состоит из кремния. Если точнее, полупроводники, из которых состоит процессор, производятся из кремния. На кремневой пластине кристалла в несколько слоёв располагается несколько триллиардов транзисторов (размер которых составляет порядка ~10 нм в зависимости от используемого техпроцесса при производстве), которые отвечают за все логические операции процессора.

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

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

Подводя итог этого блока статьи и что бы дать простой ответ на такой сложный вопрос «Что такое процессор (CPU)» — процессор это сердце любого современного устройства, которое выполняет все основные операции, будь то простое сложение 2+2, набор текста в Microsoft Word или расчет физической модели в Blender.

Что такое ядра процессора и на что они влияют

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

К сведению! Ядра CPU позволяют увеличить вычислительную мощность персонального компьютера.

Чем ядра отличаются от потоков или виртуальных ядер

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

Логический поток представляет собой специальную технологию Hyper Threading. С ее помощью одно физическое ядро разделяет на несколько виртуальных и образует потоки. Таким образом компьютер может обрабатывать в два раза больше задач.

Обратите внимание! Многопоточность улучшает производительность ПК в играх и графических редакторах. Сравнительная таблица:

Сравнительная таблица:

Характеристики Пояснение
Заменяют ли виртуальные ядра физические? Да. Физическое — это реальный аппаратный компонент ЦП. Виртуальное — это способность физического ядра разделяться на несколько независимых потоков, чтобы обрабатывать в два раза больше задач.
Влияют ли Virtual Core на производительность компьютера? Влиять они могут только в том случае, если на компьютере установлен процессор с небольшим кэшем 2 и 3 уровня, а также с низкой тактовой частотой.

Количество используемых Physic Core в диспетчере задач

Немного истории потоки процессора

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

Развитие архитектуры началось с гиперпоточности, а в дальнейшем на одном кристалле производители стали размещать и несколько физических ядер. Сейчас оба основных производителя центральных процессоров для ПК (Intel и AMD) выпускают модели с двумя и более физическими ядрами, как с поддержкой виртуальных ядер, так и без нее.

Потоки процессора, что такое потоки и на что влияет их количество

Потоки – это виртуальный компонент или код, который разделяет физическое ядро процессора на несколько ядер. Одно ядро имеет до 2 потоков.

Например, если процессор двухъядерный, то он будет иметь 4 потока, а если восьмиядерный – 16 потоков.

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

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

Единственный факт, который ограничивает создание потоков, – количество основных потоков, предоставляемых физическим процессором. А их количество зависит от ядер.

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

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

Совместный доступ к ресурсам

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

Например, нам нужно сложить два массива a и b одинаковой длины и поместить результат в массив c. Каждое значение c зависит от a и b и не зависит от остальных. Мы можем разделить массивы на несколько участков, и каждый из потоков будет заниматься сложением только этих участков, не пересекаясь с остальными потоками. У них всех будут общие переменные a, b и c, но они будут всегда независимо обращаться только к отдельным областям памяти.

Второй типичный пример: банковский счёт. Пусть два человека имеют доступ до одного счёта. На счету 10000. Пользователь A снимает со счёта 8000. Второй пользователь запрашивает остаток. Операция первого пользователя не успела завершиться и на счету указано 10000. Второй пользователь снимает 5000. В тот момент, когда он отправил заявку на снятие денег со счёта, деньги уже снялись, и на счету осталось 2000. В данном случае возможно несколько исходов. Самый лучший, когда у второго пользователя выпадет ошибка, и он ничего не получит. Ситуация, когда второй пользователь снимет деньги и счёт станет -3000. А также ситуация, когда оба снимут деньги и на счету останется 2000 или 5000.

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

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

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

Процесс

  • Идентификатор процесса
  • Окружение
  • Рабочая папка
  • Регистры
  • Стек
  • Куча
  • Файловый дескриптор
  • Общие библиотеки (dll, so)
  • Инструменты межпроцессорного взаимодействия (пайпы, очереди сообщений, семафоры или обобщённая память)
  • Специфические для операционной системы ресурсы

Поток

  • Stack Pointer (указатель на вершину стека, на самом деле «своего» стека, как у процесса, у потока нет)
  • Регистры
  • Свойства (необходимые для планировщика, такие как приоритет или политики)
  • Специфичные для потока данные
  • Специфические для операционной системы ресурсы

Узнаем, сколько потоков в процессоре

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

Способ 1: CPU-Z

CPU-Z – бесплатная программа, предназначенная для просмотра основных параметров системы ПК. Не имеет официальной русской локализации.

Сразу после запуска программы обратите внимание на правый нижний угол. В строчке «Threads» будет значение количества потоков, а слева будет количество ядер

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

Способ 2: Speccy

Speccy — условно-бесплатная программа от создателей CCleaner. Хотя, стоит сказать, что никаких дополнительных функций кроме автоматических обновлений и премиум-поддержки PRO-версия в себя не включает. Speccy позволяет быстро посмотреть, сколько потоков у вашего процессора. Имеет перевод на русский язык.

  1. Находясь на вкладке «Общая информация», переключитесь на «Центральный процессор».

Обратите внимание на первые строчки параметров под наименованием вашего процессора. В строке «Потоки» будет указана искомая информация

Speccy является несколько более информативной программой, чем CPU-Z, и потому слегка усложнённой, но и в ней с помощью двух кликов можно посмотреть количество потоков.

Способ 3: Process Explorer

Process Explorer — бесплатная программа-монитор процессов системы. Ранее выпущенная независимыми разработчиками, теперь он приобретена и поддерживается Microsoft.

  1. Запустив программу, кликните по первому квадратику-графику, который отвечает за отображение данных процессора.

В строчке «Logical Processors» будет выведено количество потоков процессора.

Способ 4: AIDA64

AIDA64 — крайне многофункциональная программа с бесплатным пробным периодом. В ней можно посмотреть множество параметров компьютера, включая количество потоков.

  1. После открытия AIDA64 перейдите на вкладку «Системная плата», щёлкнув по соответствующему ярлыку или строчке.

Далее зайдите на вкладку «ЦП» аналогичным образом.

Прокрутите страницу в самый низ, где после строки «Multi CPU» будут расположены логические ядра вашего процессора, а номер последнего и является общим количеством потоков.

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

Способ 5: «Диспетчер задач»

Стандартный системный монитор Windows также способен показать количество потоков ПК. Для этого откройте «Диспетчер задач» любым удобным вам образом: через комбинацию клавиш «Ctrl + Alt + Delete» или через «Поиск» в «Панели задач». После этого перейдите на вкладку «Производительность» и посмотрите количество логических процессоров.

Способ 6: «Диспетчер устройств»

Как заключительный вариант следует разобрать выполнение этой процедуры через «Диспетчер устройств» Windows. С помощью этого инструмента в системе можно просмотреть установленное оборудование, а также данные о процессоре и, в частности, количество его потоков. Для этого откройте «Диспетчер устройств» удобным для вас способом: через «Поиск» в «Панели задач» или кликом правой кнопкой мыши по ярлыку «Компьютер» > «Свойства» > «Диспетчер устройств».

Когда диспетчер открыт, щёлкните по строке «Процессоры» и сосчитайте их количество (диспетчер видит потоки, а не ядра). Сколько будет строк, столько и потоков.

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

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

Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.

Какой процессор выбрать для компьютера

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

Для игр

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

Если же нужно что-то мощное, то выбор должен быть ориентирован на процессор для компьютера хотя бы с 4 ядрами и таким же количеством потоков. Замечательный образец — Intel Core i5-7400 3.0GHz. Он тоже четырехъядерный, с четырьмя потоками. Кроме того, он обладает хорошим объемом кэш-памяти. В сочетании с подходящей видеокартой он будет тянуть «тяжелые» игры и показывать отличное изображение.

Для дома и офиса

Центральному процессору для работы в офисных программах и просмотра кино не требуется каких-то суперхарактеристик. Достаточно будет и простого двухпоточного Intel Celeron или Pentiun без гипертрейдинга.

Для работы с требовательными программами

Для разных программ монтажа, программирования и графических редакторов зачастую нужно, чтобы CPU обрабатывал информацию быстро. Поэтому при выборе процессора здесь нужно опираться именно на частоту, количество потоков и ядер. В этом случае действуют те же правила, что и для игровых сборок. Это необходимо, чтобы несколько ресурсоемких утилит, запущенных одновременно, не грузили систему. Например, хороший вариант — AMD Ryzen 5 с 4 ядрами, 8 потоками, и 16 Мб кэша третьего уровня.

Интересно узнать: 3 лучших производителя видеокарт NVidia GeForce GTX 1060 + 5 крутых моделей

Что такое ядра процессора и на что они влияют

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

К сведению! Ядра CPU позволяют увеличить вычислительную мощность персонального компьютера.

Чем ядра отличаются от потоков или виртуальных ядер

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

Логический поток представляет собой специальную технологию Hyper Threading. С ее помощью одно физическое ядро разделяет на несколько виртуальных и образует потоки. Таким образом компьютер может обрабатывать в два раза больше задач.

Обратите внимание! Многопоточность улучшает производительность ПК в играх и графических редакторах

Характеристики Пояснение
Заменяют ли виртуальные ядра физические? Да. Физическое — это реальный аппаратный компонент ЦП. Виртуальное — это способность физического ядра разделяться на несколько независимых потоков, чтобы обрабатывать в два раза больше задач.
Влияют ли Virtual Core на производительность компьютера? Влиять они могут только в том случае, если на компьютере установлен процессор с небольшим кэшем 2 и 3 уровня, а также с низкой тактовой частотой.

Количество используемых Physic Core в диспетчере задач

Какая из спецификаций подойдет для вашей компании?

Небольшая компания:

  1. Ядра. Для большинства задач подойдет сервер с 4-х ядерным процессором. Если перед вами стоят более требовательные задачи – необходимо работать с графическим дизайном, выясните, какое количество ядер необходимо для конкретного софта. Если необходимо 8 ядер, то лучше всего инвестировать деньги сразу в сервер на базе 8-ядерных процессоров.
  2. Память. Количество памяти, которое поддерживает сервер, тоже может играть свою роль. Материнская плата и тип операционной системы помогут определиться с необходимым объемом.
  3. Частота. Софт, с которым вы планируете работать, будет влиять на скорость ЦПУ. Например, постоянное использование программы Adobe CS 6 потребует процессор со скорость как минимум 2 Ггц.

Средние компании

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

Многопоточность

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

Корпоративные заказчики

  1. Ядра. При выборе ЦПУ стоит учитывать количество ядер. Необходимо ориентироваться на технические требования приложений. Например, если установлен 8-и ядерный процессор, но для приложения необходимо только 4 из них, то нет смысла переплачивать. Размер не всегда имеет значение.
  2. Частота. Здесь тоже стоит ориентироваться на софт – некоторым компаниям хватает 2 Ггц, а другим и 4 Ггц мало.
  3. TDP. Проверьте этот показатель перед покупкой процессоров. Тогда вы будете уверенным, что система охлаждения справится с выделением тепла.

Есть ли польза от многоядерных процессоров?

Безусловно, да. Одновременно компьютер занимается несколькими задачами — хотя бы работа Windows (кстати, это сотни разных задач) и, в тот же момент, проигрывание фильма. Проигрывание музыки и просмотр интернета. Работа текстового редактора и включённая музыка. Два процессорных ядра — а это, по сути, два процессора, справятся с разными задачами быстрее одного. Два ядра сделают это несколько быстрее. Четыре — ещё быстрее, чем два.

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

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

Вместо итогов

Практика показывает, что современный универсальный ПК должен иметь в своем распоряжении как минимум 4 ядра/8 потоков, чего будет достаточно для большинства задач, связанных с обработкой данных. Хотя варианты из серии 6/12 выглядят более обещающими по той причине, что стоят они не намного дороже, а пользы от них больше.

В качестве «золотой» середины можем предложить свежий вариант модели, построенный на обновленной архитектуре Zen2. Он отлично справляется с играми, программами, распараллеливанием и обработкой данных, при этом отлично гонится(одним словом – стал популярным (появился в июле 2019)).

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

С уважением Андрей Андреев

Вместо итогов потоки процессора

Практика показывает, что современный универсальный ПК должен иметь в своем распоряжении как минимум 4 ядра/8 потоков, чего будет достаточно для большинства задач, связанных с обработкой данных. Хотя варианты из серии 6/12 выглядят более обещающими по той причине, что стоят они не намного дороже, а пользы от них больше.

p, blockquote 15,0,0,0,0 —>

В качестве «золотой» середины можем предложить свежий AMD Ryzen 5 2600 , построенный на обновленной архитектуре Zen+. Он отлично справляется с играми, программами, распараллеливанием и обработкой данных, при этом отлично гонится.

p, blockquote 16,0,0,0,0 —>

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

p, blockquote 17,0,0,0,0 —>

p, blockquote 18,0,0,0,0 —> p, blockquote 19,0,0,0,1 —>

Краткий итог статьи «Вся правда о многоядерных процессорах». Вместо конспекта

  • Ядро процессора — его составная часть. Фактически, самостоятельный процессор внутри корпуса. Двухядерный процессор — два процессора внутри одного.
  • Многоядерность сравнима с количеством комнат внутри квартиры. Двухкомнатные лучше однокомнатных, но лишь при прочих равных характеристиках (расположение квартиры, состояние, площадь, высота потолков).
  • Утверждение о том, что чем больше ядер у процессора, тем он лучше — маркетинговая уловка, совершенно неверное правило. Квартиру ведь выбирают далеко не только по количеству комнат, но и по её расположению, ремонту и другим параметрам. Это же касается и нескольких ядер внутри процессора.
  • Существует «виртуальная» многоядерность — технология Hyper-Threading. Благодаря этой технологии, каждое «физическое» ядро разделяется на два «виртуальных». Получается, что у 2-ядерного процессора с Hyper-Threading лишь два настоящих ядра, но эти процессоры одновременно обрабатывают 4 вычислительных потока. Это действительно полезная «фишка», но 4-поточный процессор нельзя считать четырёхядерным.
  • Для настольных процессоров Intel: Celeron — 2 ядра и 2 потока. Pentium — 2 ядра, 2 потока. Core i3 — 2 ядра, 4 потока. Core i5 — 4 ядра, 4 потока. Core i7 — 4 ядра, 8 потоков. Ноутбучные (мобильные) CPU Intel имеют иное количество ядер/потоков.
  • Для мобильных компьютеров часто важнее экономичность в энергопотреблении (на практике — время работы от батареи), чем количество ядер.