количество потоков процессора что это
Что такое потоки в процессоре и в чём различие с ядрами?
Доброго времени суток.
Вы в курсе, что центральные процессоры для компьютера с большим количеством ядер могут уступать в производительности тем, у которых их меньше? Если вы хотите взять мощный CPU, следует учитывать и число потоков в нем. Не знаете, что такое потоки в процессоре? В этой статье вы получите информацию, которая поможет вам в выборе ЦП.
Разберемся в терминологии
Чтобы ни у кого не возникало путаницы в голове, предлагаю разобраться с ключевыми терминами, играющими роль в нашей теме.
Ядро процессора — часть микросхемы, отвечающая за выполнение одного потока команд.
В современных процах, как правило, несколько ядер, каждое из которых имеет собственный кэш первого уровня и общий — второго и третьего. Такое решение позволяет данным быстрее перемещаться между ядрами, когда они работают над одним процессом.
Не путайте с ядром операционной системы, которое координирует доступ программ к ресурсам компьютера.
Поток выполнения — самая малая единица обработки, назначенная ядром ОС, которая разделяет код и контекст процесса. В одном процессе могут действовать сразу несколько потоков и совместно использовать ресурсы CPU.
Технология Hyper-threading
Вы наверняка слышали или догадались из вышесказанного, что чем больше в процессоре ядер и гигагерц, тем он быстрее обрабатывает задачи, которые вы ему даете. Это правда. Но не только ядра влияют на производительность, если речь идет о продуктах бренда Intel.
Компания изобрела технологию под названием «Hyper-threading» (полное — hyper-threading technology, HT либо HTT), которое переводится на русский язык как гиперточность. Она разработана для процев, основанных на микроархитектуре NetBurst.
HT отсутствует в устройствах линейки Core 2, в том числе «Duo» и «Quad». Схожая технология с таким же наименованием внедрена в продуктах Core i3, «i7» и нескольких «i5», а также в некоторые модели серий Itanium и Atom.
Суть «Hyper-threading» заключается в том, что при выполнении задач операционная система определяет одно физическое ядро CPU как два логических. Как вы понимаете, HTT позволяет увеличить скорость работы устройства. И ему можно задавать больше команд одновременно. Более того, если одному логическому ядру дана задача, но он с ней не справляется, а второе при этом бездействует, то последнее помогает первому.
Сколько потоков имеет CPU?
Самый быстрый способ вычислить, сколько потоков содержится в том или ином процессоре — умножить количество ядер надвое (это только если ваш проц поддерживает гипер трэйдинг).
Но если вы не знаете число ядер и хотите определить, сколько потоков имеется в вашем ЦП прямо сейчас, вызовите Диспетчер задач путем зажатия клавиш Ctrl+Alt+Del. Дальнейшие действия зависят от версии операционки, которая у вас установлена.
На случай, если у вас вдруг что-то не получилось с Диспетчером задач, есть еще один способ:
Но тут будут показаны только сами ядра.
В принципе это всё, что я хотел, спасибо за внимание.
Процессор: потоки или ядра
На рынке компьютерных комплектующих присутствует немало процессоров, у которых число потоков больше числа физических ядер. В некоторых задачах эти «виртуальные ядра» могут дать существенный прирост в производительности, в других они практически бесполезны.
Многоядерность и гиперпоточность
Поток (применительно к процессору), или виртуальное ядро – результат реализации вычислений, при котором одно физическое ядро способно программно разделять свою производительность и работать над несколькими последовательностями команд одновременно. Простыми словами, ЦП делает вид для операционной системы и программ, что у него больше ядер, чем есть на самом деле. Убедиться в этом можно, открыв диспетчер устройств или другую программу для мониторинга комплектующих.
Гиперпоточность позволяет распараллеливать вычисления более эффективно – если одно виртуальное ядро завершило работу над своей задачей и находится в режиме ожидания, его ресурсы может использовать другое. В случаях, когда гиперпоточность не поддерживается, эти ресурсы простаивают. Таким образом, поддержка виртуальных ядер может ускорить выполнение некоторых задач, хотя, разумеется, она не так хороша, как наличие дополнительных физических, и удвоения производительности ожидать не стоит.
Иллюстрация концепции потоков/виртуальных ядер:
Рассмотрим следующий упрощенный пример: если двухъядерный процессор с двумя потоками работает с четырьмя последовательностями команд одновременно, а производительность одного ядра для одной последовательности избыточна, то общая производительность будет ниже, чем в случае, если на месте такого процессора будет вариант с двумя ядрами, но с четырьмя потоками, поскольку на переключение между задачами тратится дополнительное время, и часть ресурсов иногда простаивает. А вот если вычислительных ресурсов одного потока недостаточно для выполнения одной последовательности, то виртуальные ядра почти не помогут – нужны дополнительные физические.
Распараллеливание нагрузки при помощи технологии Intel Hyper-Threading
Немного истории
Когда-то процессоры были одноядерными и однопоточными. Если требовалось эффективно распараллеливать вычисления (в серверном сегменте, рабочих станциях) использовались материнские платы с несколькими процессорными разъемами. Соответственно, материнке требовалась возможность соединять все процессоры с другими комплектующими (например, оперативной памятью). По сравнению с современной реализацией, возникали дополнительные задержки, возрастали энергозатраты.
Развитие архитектуры началось с гиперпоточности, а в дальнейшем на одном кристалле производители стали размещать и несколько физических ядер. Сейчас оба основных производителя центральных процессоров для ПК (Intel и AMD) выпускают модели с двумя и более физическими ядрами, как с поддержкой виртуальных ядер, так и без нее.
Потоки или ядра?
Центральный процессор – один из ключевых компонентов системы, влияющих на ее производительность в целевых задачах, а также на удобство использования компьютера. Часто у пользователей, желающих собрать систему, возникает вопрос: на что ориентироваться при выборе ЦП? Стоит ли переплачивать за дополнительные потоки/виртуальные ядра?
Наибольшую выгоду виртуальные ядра приносят в рабочих задачах, подверженных эффективному распараллеливанию. К ним относятся, например, архивация файлов, обработка фотографий, рендеринг видео, моделирование. Таким образом, польза дополнительных потоков для компьютера, который будет использоваться в первую очередь для игр или медиа, сомнительна. Впрочем, если параллельно с играми будут выполняться и другие задачи, такие как стриминг, запись/обработка видео, скачивание/раздача файлов при помощи торрент-клиента, антивирусная проверка, она возрастает. В подобных ситуациях виртуальные ядра помогают снять фоновую нагрузку с физических.
Впрочем, кратного роста вычислительной мощи ждать все равно не стоит, и для типичных домашних сценариев использования переплата за виртуальные ядра часто будет неоправданной. Другое дело – если компьютер используется для профессиональной деятельности, и применяются программы, хорошо работающие с гиперпоточностью – прирост в производительности при правильной оптимизации может составлять десятки процентов.
Подытожим : если речь идет о домашнем игровом или мультимедийном компьютере, не стоит ждать чудес от виртуальных ядер, и, если за них придется доплатить ощутимую сумму, лучше рассмотреть вариант с дополнительными физическими, или вложить деньги в другие комплектующие. Если же система будет использоваться для работы – прирост может быть значительным, поэтому стоит ознакомиться с тестами гиперпоточных ЦП для конкретного вида задач.
Что такое потоки в процессоре?
Просматривая характеристики современного процессора, среди таких важных его показателей, как количество ядер, тактовая частота, техпроцесс и объем кэша, также стоит отметить параметр с обозначением “количество потоков”. Далеко не все понимают что это такое и на что влияет при работе компьютера. В данной статье мы постараемся максимально кратко и понятно ответить на эти вопросы.
Поток в процессоре – он же логический процессор
Для начала вас стоит знать, что поток в современном процессоре может называться еще виртуальным ядром или логическим процессором. По сути все это синонимы.
До появления многопроцессорных систем (материнских плат, на которые можно было устанавливать 2 процессора и более), понятие многозадачности в компьютере было условным. Несмотря на то, что пользователь мог одновременно работать в нескольких приложениях (например слушать музыку и сидеть в интернете), для процессора обрабатывать данные двух программ одновременно было невозможно. Делалось это за счет быстрых и частых переключений процессора с одной задачи на другую так, что пользователь этого просто не замечал. Из-за этих самых переключений сильно страдала скорость работы системы в целом.
Чтобы решить данную проблему и повысить параллельную скорость работы нескольких приложений были придуманы многопроцессорные системы. В них один процессор обрабатывал одну группу задач, а второй – другую.
Материнская плата с двумя процессорами
Но вопрос теперь был в другом. Стоимость таких систем была нецелесообразно высокой из-за сложности построения.
Следующим этапом в развитии процессоров стали гиперпотоки или как их сейчас называют – потоки. Говоря простыми словами, поток в процессоре – это виртуальное ядро, отличающееся от полноценного независимого ядра тем, что у него отсутствует часть узлов, ответственных за организацию и обработку данных. Но регистры, отвечающие за хранение архитектурного состояния, а также кэши у каждого из потоков свои.
Благодаря этому, возрастает скорость обработки многопоточных приложений при меньших трудозатратах, так как себестоимость процессоров с несколькими потоками на порядок ниже многоядерных и многопроцессорных решений. Среди прочих плюсов стоит отметить меньшее энергопотребление и как следствие – меньшее тепловыделение.
В настоящее время процессоры делаются многоядерными и многопоточными. Например, тот же Ryzen 5 2600 имеет 6 ядер, каждое из которых работает в два потока. Итого 12 потоков. Конечно, его нельзя назвать 12 ядерным (хотя многие по ошибке так делают), но производительность его во многих оптимизированных под многопоточность программах и играх будет на порядок выше, чем у аналогичного с 6 ядрами, каждое из которых работает в один поток.
Создание же процессора с полноценными 12 ядрами будет на порядок дороже и сложнее.
Смысл многоядерно-многопоточной реализации – повышение скорости работы и снижение стоимости производства, а также энергопотребления современных процессоров.
Вывод
Потоки в современном процессоре это “недоядра”, позволяющие увеличить скорость работы приложений, оптимизированных на работу в несколько потоков данных, а таковыми являются практически все нынешние программы и игры.
Skol — мир электроники
Что такое Ядра и потоки в процессорах
Практически каждый в современном мире имеет дело с компьютерами и наверняка сталкивался с терминами ядра и потоки. Давайте разберемся что это и так ли хорошо иметь много ядер и потоков. На рынке компьютерных комплектующих присутствует немало процессоров, у которых число потоков больше числа физических ядер. В некоторых задачах эти «виртуальные ядра» могут дать существенный прирост в производительности, в других они практически бесполезны.
Что такое ядро и поток
Ядро – упрощенно это физическая единица процессора, способная в определенно взятый момент времени выполнять одну последовательность команд. Если ядро одно, а команд много, ядро переключается между ними, выполняя задачи поочередно в зависимости от приоритета.
Поток его еще называют иногда виртуальным ядром – результат работы современных технологий (в процессорах производства компании Intel – эта технология называется Hyper Threading, а у компании AMD – SMT технологией), когда ядро, с помощью специальных технологий, способно разделять свою производительность. Выражение одно ядро и два потока говорит о том, что физически одно ядро, но это ядро виртуально делится на два и позволяет распараллеливать задачи и решать их одновременно. То есть при наличии двух сравнительно «простых задач» процессор сможет выполнить их в два раза быстрее, чем обычный процессор с одним ядром. Примером таких задач могут быть скачивание фоном файлов, работа антивируса. Технология создания потоков позволяют делать несколько параллельных вычислительных каналов, что позволяет использовать способности компьютеров более эффективно, так как если одно из виртуальных ядер закончило свою работу, то может присоединиться к работе другого ядра. Производительность повыситься, но повышение будет ограниченно, так как используются ресурсы (тактовая частота измеряется в МГц– то есть вычислительная способность) физического ядра, которое у нас одно. Только используя специальные программы, работающие с гиперпотоком и при правильной оптимизации можно прочувствовать прирост в производительности.
Можно сделать вывод, что при работе с «простыми» задачами одноядерный процессор с двумя потоками по производительности сопоставим с «настоящими» двухъядерными процессорами, но если задачи будут «сложными» например архивация, рендеринг видео, то для увеличения производительности стоит задуматься о приобретении процессора с большим количеством ядер. Так как многоядерные процессоры более предпочтительны для серьезных задач чем многопоточные.
Какой процессор выбрать
При выборе процессора естественно, что встает вопрос как выбрать оптимальное количество ядер и потоков и не переплачивать. Очевидно, что с количеством ядер и потоков стоимость такого процессора будет значительно возрастать. При выборе оптимального процессора, чтобы не переплачивать и чтобы работало все быстро стоит обратить внимание на задачи стоящие перед вашим компьютером:
1) Если компьютер будет офисным для работы без использования серьезных программ, то достаточно 2 «настоящих» ядра. Данный процессор вполне справляется с большинством задач в современных условиях.
2) Если вы собираетесь играть в игры, то многие игры поддерживают 2-4 ядра. Наличие большего количества ядер, не будет ускорять процесс, так как они будут работать в холостую, а учитывая, что в многоядерных процессорах частота у ядер ниже, то вы столкнетесь с тем, что ваш компьютер стоил кучу денег, а в итоге игры тормозят.
3) Если вы используете компьютер в проектировании и обработке видео в своей профессиональной деятельности, то от количества ядер напрямую будет зависеть производительность этого процесса и здесь лучше иметь не меньше 4 ядер. Большее количество ядер будет только преимуществом и если бюджет позволяет, то возьмите хотя бы 8 ядер.
Рекомендации на конкретные модели в зависимости от стоящих перед ним задач:
1. Офисные: Процессоры Intel: Pentium Dual-Core, Core i3 любого поколения; процессоры AMD: A-серии, Ryzen 3 1200.
2. Игровые: Процессоры Intel: Core i3/i5/i7 6-го и выше поколения; процессоры AMD: Ryzen-5/ Ryzen 7.
3. Профессиональные: Процессоры Intel: Core i7 6950X, Core i9 9980XE; процессоры AMD: Threadripper 2920X, Threadripper 2970WX.
Узнать, сколько у вас физических ядер можно, через встроенную утилиту msinfo32.exe
Как включить виртуальные ядра читайте в этой статье
Ядра или тактовая частота процессора: выясняем, что важнее для работы и игр
реклама
Процессоры будут являться «синтетическими», «созданными» на основе многоядерного процессора Ryzen 7 2700. В связи с тем, что данный процессор отказывается запускаться на частоте в 2 GHz (но данное сравнение не имело бы никакого отношения с действительностью), удалось создать лишь два «типовых» процессора.
реклама
Даже простым перемножением ядер на частоты, не сложно догадаться, что конфигурация с шестью ядрами, работающими на частоте в 3 GHz будет немного сильнее конфигурации с четырьмя ядрами, работающими на частоте 4 GHz. В условном «математическом бенчмарке» (данный «бенчмарк» справедлив только для «синтетических процессоров», различающихся лишь количеством и частотой ядер), суммарная производительность данных CPU будет сопоставима, как «18» и «16» в пользу процессора с большим количеством ядер, так как для большей справедливости данного тестирования, ему следовало «привязать» частоту в 2.66 GHz.
Но данное действие было невозможно по той же причине, по которой в тестировании отсутствует «синтетический Ryzen 7 / Xeon» с частотой в 2 GHz. Материнская плата ASUS TUF B450M-PRO GAMING не может запустить процессор Ryzen 7 2700 с частотой ниже 2.8 GHz: во-первых, это не подразумевается, так как минимальный множитель для данного процессора равен 28; во-вторых, при попытке «взятия» необходимой частоты посредством комбинации множитель/делитель (формула следующая: Ratio=2*FID/DID), система отказывается запускаться с любым напряжением, даже в значении «авто».
И кто-то заметит, что данное сравнение двух математически не равных процессоров якобы теряет смысл, так как «итак понятно, что процессор с шестью ядрами окажется чуть сильней». Но в данном случае частоты процессоров приближены к реальным, а сравнить процессоры на 2 GHz, 2,66GHz и 4 GHz, было бы как минимум нелепо, так как процессоров Ryzen с такими низкими частотами попросту нет. И опять же, это ни в коем случае не «симуляция известных процессоров», это всего лишь попытка сравнения высокой частоты и большого количества ядер, что важнее сейчас.
В общем, далее нет смысла вдаваться в нюансы данного эксперимента, предлагаем же перейти к реальному исследованию.
реклама
Но для начала осмотр тестовой конфигурации.
«Синтетические» процессоры тестировались на следующей конфигурации:
Вольтаж для процессора с шестью ядрами был подобран 0.8125 вольта, вольтаж же для процессора с четырьмя разогнанными ядрами составил 1.25 вольта. LLC был отрегулирован так, что напряжение при возрастании нагрузки оставалось стабильным.
Тестирование энергопотребления / уровня шума / температурных показателей
Тестирование процессоров проводилось посредством 10-минутного теста OCCT версии 5.5.7 с использованием AVX2 инструкций.
реклама
Для упрощения восприятия результатов тестирования, все данные были отображены в виде диаграммы с таблицей значений.
Таким образом, в тестировании OCCT процессор с шестью медленными ядрами оказался более «прохладным», чем процессор с разогнанными четырьмя ядрами. Но результаты данного тестирования нельзя интерпретировать на якобы Ryzen 5 3500X и Ryzen 3 3100/3300X. Все процессоры уникальны и данный тест лишь показывает серьезно возросшие показатели тепловыделения при небольшом разгоне, что характерно для всех процессоров Ryzen.
Тестирование в синтетических программах: CPU-Z
Теперь, когда мы разобрались с поведением двух экземпляров в стресс-тесте, предлагаю сравнить производительность процессоров в CPU-Z.
Для упрощения восприятия результатов тестирования, все данные были отображены в виде диаграммы с таблицей значений.
Результаты «математического бенчмарка» подтвердились. Четыре разогнанных ядра хоть и обошли шесть маломощных ядер в однопоточной производительности, но серьезно уступили во многоядерной производительности. Медленные шесть ядер обходят четыре быстрых на 12.5%, данная разница была известна еще заранее из «математического бенчмарка»: разница между 18 и 16 составляет 12.5%.
Тестирование в синтетике: Cinebench R20, CPU Queen, CPU PhotoWorxx
Перед тем, как мы перейдем непосредственно к играм, предлагаю ознакомиться со сводным тестированием процессоров в популярной синтетике.
Для упрощения восприятия результатов тестирования, все данные были отображены в виде диаграммы с таблицей значений.
Как мы можем наблюдать, процессоры очень близки по своей производительности в синтетических тестах. Но у процессора с низкой частотой и шестью ядрами закономерный отрыв в Cinebench R20 и небольшое превосходство в CPU PhotoWorxx. По результатам «общей синтетики» трудно выявить явного фаворита, процессоры очень близки, но за счет чисто «математического превосходства», 6 ядер с частотой в 3 GHz становятся более предпочтительными.
«Игровая синтетика»: Ashes of the Singularity: Escalation
Тестирование производилось с акцентом именно на CPU.
Для упрощения восприятия результатов тестирования, все данные были отображены в виде диаграммы с таблицей значений.
Стоит отметить, что оба процессора посредственно справились с данной игрой, но визуально плавность картинки была все-таки за процессором с шестью ядрами.
Assassin’s Creed Odyssey
Дополнительные слабые ядра положительно сказались на производительности в игре Assassin’s Creed Odyssey.
Для упрощения восприятия результатов тестирования, все данные были отображены в виде диаграммы с таблицей значений.
Даже на минимальные настройки графики не смогли «спасти» четыре разогнанных ядра от проигрыша в Assassin’s Creed Odyssey. К сожалению, разница в гигагерц не дала фору четырем ядрам.
Far Cry New Dawn
Для упрощения восприятия результатов тестирования, все данные были отображены в виде диаграммы с таблицей значений.
В данной игре шесть низкочастотных ядер потерпели разгромное поражение по плавности, проиграв четырем быстрым ядрам.
Metro Exodus
Для упрощения восприятия результатов тестирования, все данные были отображены в виде диаграммы с таблицей значений.
И опять с крохотным отрывом победу одержали четыре быстрых ядра. Но не стоит забывать, что это самые минимальные настройки графики, если бы видеокарта позволяла выставить максимальные настройки графики без «бутылочного горлышка», то процессор с четырьмя ядрами, скорее всего, серьезно бы уступил более медленному процессору, но с большим количеством ядер.
Заключение
Четыре ядра, шесть ядер, низкая частота, высокая частота имеет ли это такое большое значение, если итоговая производительность «гуляет» от игры к игре, а в синтетических тестах разница между этими решениями настолько мала, что становится трудно «рассудить», какой типовой процессор действительно лучший? Все зависит от ваших конкретных задач.