Процессор: потоки или ядра

Кеш-память

Кеш-память – это внутренняя высокоскоростная память процессора, для временного хранения данных.

Значительно повышает скорость вычислений, за счет уменьшения обращений к медленной основной памяти компьютера. Объем измеряется в килобайтах (Кб) или мегабайтах (Мб).

Кеш делится на нескольк уровней:

  • первого уровня L1 – указывается для одного ядра, небольшой объем, но высокая скорость работы;
  • второго уровня L2 – влияет на производительность в сложных расчетах, указывается для всего процессора, больший по объему и более медленный чем L1;
  • третьего уровня L3 – так же влияет на производительность, указывается для всего процессора, самый объемный кеш.

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

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

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

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

Теперь вы знаете, что у процессоров бывает 1, 2, 3, 4, 6 и 12 ядер. Одноядерные и 12-ядерные процессоры — большая редкость. Трёхядерные процессоры — дело прошлого. Шестиядерные процессоры либо очень дороги (Intel), либо не такие уж сильные (AMD), чтобы переплачивать за число. 2 и 4 ядра — самые распространённые и практичные устройства, от самых слабых до весьма мощных.

Дерево процессов

В Windows процессы знают только своих родителей, а более древних предков не знают.

Например у нас есть такое дерево процессов:

Процесс_1
|- Процесс_2
  |- Процесс_3

Если мы завершим дерево процессов “Процесс_1“, то завершатся все процессы. Потому что “Процесс_1” знает про “Процесс_2“, а “Процесс_2” знает про “Процесс_3“.

Если мы вначале завершим “Процесс_2“, а затем завершаем дерево процессов “Процесс_1“, то завершится только “Процесс_1“, так как между “Процесс_1” и “Процесс_3” не останется связи.

Например, запустите командную строку и выполните команду title parrent чтобы изменить заголовок окна и start cmd чтобы запустить второе окно командной строки:

>title parrent
>start cmd

Измените заголовок второго окна на child и из него запустите программу paint:

>title child
>mspaint

В окне командной строке child введите команду exit, окно закроется а paint продолжит работать:

>exit

После этого на рабочем столе останутся два приложения, командная строка parrent и paint. При этом parrent будет являться как бы дедом для paint.

Запустите “Диспетчер задач”, на вкладке “Процессы” найдите процесс “Обработчик команд Windows”, разверните список и найдите “parrent“. Затем нажмите на нём правой копкой мыши и выберите “Подробно”:

Вы переключитесь на вкладку “Подробно” с выделенным процессом “cmd.exe“. Нажмите правой кнопкой по этому процессу и выберите «Завершить дерево процессов»:

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

Ядра центрального процессора

Ядро – это основная составляющая ЦП. Именно здесь производятся все операции и вычисления. Если ядер несколько, то они «общаются» между собой и с другими компонентами системы посредством шины данных. Количество таких «кирпичиков», в зависимости от поставленной задачи, влияет на общую производительность процессора. В целом, чем их больше, тем выше скорость обработки информации, но на деле имеются условия, при которых многоядерные CPU уступают своим менее «упакованным» собратьям.

Физические и логические ядра

Многие процессоры Intel, а с недавнего времени и AMD, способны производить расчеты так, что одно физическое ядро оперирует двумя потоками вычислений. Эти потоки называются логическими ядрами. Например, мы можем увидеть в CPU-Z вот такие характеристики:

Отвечает за это технология Hyper Threading (HT) у Intel или Simultaneous Multithreading (SMT) у AMD

Здесь важно понять, что добавленное логическое ядро будет медленнее физического, то есть полноценный четырехъядерный ЦП мощнее двухъядерного того же поколения с HT или SMT в одних и тех же приложениях

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

Старые проекты, разработанные примерно до 2015 года, в основном не могут загрузить больше 1 – 2 ядер из-за особенностей кода, написанного разработчиками. В этом случае предпочтительнее иметь двухъядерный процессор с высокой частотой, чем восьмиядерный с низкими мегагерцами. Это лишь пример, на практике современные многоядерные ЦП имеют довольно высокую производительность на ядро и в устаревших играх работают хорошо.

Одной из первых игр, код которой способен выполняться на нескольких (4 и более) ядрах, загружая их равномерно, стала GTA 5, выпущенная на ПК в 2015 году. С тех пор большинство проектов можно считать многопоточными. Это значит, что у многоядерного процессора есть шанс не отстать от своего высокочастотного коллеги.

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

Программы

Здесь все немного проще, чем с играми, так как мы можем подобрать «камень» для работы в конкретной программе или пакете. Рабочие приложения также бывают однопоточными и многопоточными. Первым нужна высокая производительность на ядро, а вторым большое количество вычислительных потоков. Например, с рендерингом видео или 3D сцен лучше справится многоядерный «проц», а Фотошопу необходимо 1 – 2 мощных ядра.

Операционная система

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

Универсальные решения

Сразу отметим, что многозадачных процессоров не бывает. Есть только модели, способные показывать неплохие результаты во всех приложениях. В качестве примера можно привести шестиядерные CPU с высокой частотой i7 8700, Ryzen R5 2600 (1600) или более пожилые аналогичные «камни», но даже они не могут претендовать на универсальность, если вы параллельно с играми активно работаете с видео и 3D или занимаетесь стримингом.

Заключение

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

ТТХ процессора

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

Разрядность — количество битов (разрядов двоичного кода), обрабатываемое центральным процессором за единицу времени. Современные процессоры — 32- или 64-разрядные, то есть они обрабатывают 32 или 64 бита информации за один такт. Разрядность процессора также влияет на количество оперативной памяти, которое можно установить в компьютер. Только 64-разрядный процессор поддерживает более 4 ГБ ОЗУ.

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

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

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

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

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

А ставить процессор для компьютера в сервер в целях, например, экономии, — не очень хорошая идея. Почему? Рассмотрим дальше

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

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

А ставить процессор для компьютера в сервер в целях, например, экономии, — не очень хорошая идея. Почему? Рассмотрим дальше.

Функции

Разблокированный множитель – служит для изменения тактовой частоты в определенных границах. Позволяет легко повысить быстродействие процессора без специального «разгона» (оверлокинга).

Турбо-режим – увеличивает быстродействие процессора за счет более равномерного распределения нагрузки на ядра. Включение и выключение этого режима обычно происходит автоматически. В процессорах Intel данная опция называется «Turbo Boost», а в CPU AMD – «Turbo Core».

Некоторые модели Intel помимо Turbo Boost имеют более продвинутый режим – Turbo Max 3.0, который дает еще больший прирост быстродействия.

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

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

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

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

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

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

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

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

2 ответа

21

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

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

Каждое отдельное приложение, работающее в операционной системе, является однопоточным или многопоточным (думайте о каждом потоке как о «под-приложении»). Для однопоточных приложений требуется только один поток для работы на ЦПУ, тогда как многопоточные приложения имеют много подпотоков, работающих одновременно. Дополнительные ядра или гиперпоточность позволяют одновременно запускать несколько потоков приложений.

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

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

9

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

Поток — это задача, которую процессор должен обрабатывать, для простого объяснения можно предположить, что каждое приложение, которое вы открываете (например, краска, блокнот, медиаплеер) имеет свою собственную нить … теперь это не значит, что вы может сразу открывать сразу 2 приложения, просто потому, что процессор и ОС работают так быстро при «переключении потоков», чтобы обрабатывать потребности каждого открытого приложения. Вы просто получите лучшую производительность с большим количеством ядер, потому что теперь вы можете выложить всю работу на более основные процессоры.

Например, мой рабочий компьютер имеет i7. I7 имеет 4 физических ядра, но каждое ядро ​​может выполнять «гиперпоточность», что позволяет процессору обрабатывать сразу 8 потоков. Поэтому, если я открою диспетчер задач, я увижу 8 полей для производительности процессора.

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

Как узнать количество потоков процессора

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

Диспетчер задач

Запустите утилиту комбинацией клавиш Ctrl + Shift + Esc и перейдите во вкладку Производительность. Ищите строчку Логических процессоров.

Сведения о системе

Нажмите Win + R и в открывшемся окне выполните команду msinfo32.

В правой части окна смотрите содержимое строчки Процессор.

Найдите свой процессор на официальном сайте и посмотрите данные в спецификации.

В бумажной документации эта информация также присутствует.

CPU-Z

Эта утилита отобразит все сведения о процессоре и других компонентах компьютера. Число потоков указано в строке Threads.

Другие информационные утилиты также покажут количество логических потоков, например AIDA64.

Windows PowerShell

Запустите инструмент через кнопку Пуск и выполните в нём команду:

WMIC CPU Get DeviceID,NumberOfCores,NumberOfLogicalProcessors

Нужное значение находится в третьем столбике.

Как выбрать процессор

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

Статья описывает выбор процессора для обычного компьютере и не рассматривает процессоры для серверов.

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

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

Классификация

Стоимость процессора напрямую зависит от его производительности, поэтому ее можно принять как основной параметр для классификации.

До $100 – двух-ядерные процессоры, достаточные для игр, в которых не требуется обсчет сцен с большим воличеством объектов на экране, для быстрой обработки не очень сложных математических расчетов.

$100-$200 – двух или четырех-ядерные процессоры, достаточные для большинства игр, программ для сложных инженерных расчетов, 3D моделирования, обработки больших объемов данных в MS Office и аналогах.

$200-$250 – четырех ядерные процессоры, более быстрые версии процессоров до $200.

Более $300 – шести-ядерные процессоры, для любых игр и программ требующих сложных расчетов.

  • Процессор AMD
  • Процессор Intel

Производитель

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

Существенные различия между ними будут указаны при рассмотрении остальных характеристик.

Серия

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

Актуальные серии процессоров на 2021 год:

  • Intel – Core i3, Core i5, Core i7, Core i9 (8 поколение, архитектура Coffee Lake);
  • AMD – Ryzen 3, Ryzen 5, Ryzen 7, Ryzen 9, Ryzen Threadripper (архитектура Zen).

Актуальные процессоры на 2021 год:

  • до 80$ – Intel Celeron G4900, AMD Athlon 200GE;
  • до 150$ – Intel Core i3-8100, AMD Ryzen 3 2200G;
  • до 310$ – Intel Core i3-8350K, Intel Core i5-7600K, Intel Core i5-9400F, AMD Ryzen 5 1600;
  • до 420$ – Intel Core i7-7700K, Intel Core i7-8700, AMD Ryzen 5 3600, AMD Ryzen 7 1700;
  • до 650$ – Intel Core i7-9700K, Intel Core i9-9900K, AMD Ryzen 9 3900X.

Возможны и специфические решения исходя из поставленных задач.

Если речь идет о геймерском ПК, то лучше остановиться на Core i5-9600K или Ryzen 5 3600.

Для инженерных расчетов оптимальны Core i3-7350K или Athlon II X4 (программа AutoCAD), Core i7-7700K или Ryzen 7 1800X (программы Revit, Autodesc Inventor).

На что обратить внимание при выборе процессора

Это были 3 основных характеристики компьютерного процессора – теперь время для всего остального.

TDP процессора

Thermal Design Power – это, в теории, параметр, который указывает количество тепла выделяемое процессором, выраженное в ваттах (Вт). В теории, потому что как Intel, так и AMD используют различную методику оценки этого значения, поэтому значения в графе TDP имеют разный смысл.

AMD определяет максимальную мощность, которую процессор может принять и отдать в виде тепла. Intel определяет TDP как максимальную потребляемую мощность в виде тепла, когда процессор загружен приложениями.

В действительности, этот параметр имеет значение при выборе системы охлаждения, которая должна иметь запас производительности.

Интегрированная графическая система

Если ищите компьютер по низкой цене или предназначенный для мультимедиа, то стоит рассмотреть интегрированную графическую систему. Почти все процессоры Intel имеют встроенный процессор Intel ultra-hd Graphics, а в случае процессоров Ryzen ищите маркировку G.

Технологический процесс

По-другому называется литография. Именно от него, в значительной степени, зависит потребность в энергии и то, как много тепла будет выделять процессор. Современные процессоры Intel производятся в 12-нанометровому техпроцессу. Чипы AMD также изготовлены в литографии 12 нм, однако, обе компании используют немного другие детерминанты, и эти значения де-факто не равны.

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

Как увеличить производительность процессора за счет настроек электропитания (парковка ядер, как включить все ядра ЦП ✔)

Доброго времени!

Долго думал, стоит ли публиковать сегодняшнюю статью, т.к. вопрос довольно спорный (и результат после настройки у всех может быть разным, в зависимости от оборудования и ПО). И всё же, попрошу к статье отнестись критически и как к “экспериментальной”.

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

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

Так вот, задав определенные настройки электропитания, можно ограничить работу функции парковки ядер и повысить общую производительность (в некоторых случаях до 20%!). На мой взгляд есть смысл попробовать потратить 3-5 мин. на “эксперимент”!