О потоках в процессоре

Содержание:

Планирование

Операционные системы могут планировать потоки предварительно или совместно. Вытесняющая многопоточность обычно считается превосходным подходом, поскольку она позволяет операционной системе определять, когда должно произойти переключение контекста. Недостатком вытесняющей многопоточности является то, что система может осуществлять переключение контекста в неподходящее время, вызывая блокировку конвоя(англ. lock convoy), инверсию приоритета или другие негативные эффекты, которых может избежать совместная многопоточность. С другой стороны, совместная многопоточность полагается на то, что сами потоки отказываются от управления, когда они находятся в точке остановки. Это может создать проблемы, если поток ждет, когда ресурс станет доступным.

До начала 2000-х годов большинство настольных компьютеров имели только один одноядерный процессор без поддержки аппаратных потоков, хотя потоки все еще использовались на таких компьютерах, потому что переключение между потоками, как правило, было все же более быстрым, чем контекстные переключатели полного процесса. В 2002 году Intel добавила поддержку одновременной многопоточности процессора Pentium 4 под названием hyper-threading; В 2005 году они представили двухъядерный процессор Pentium D, а AMD представила двухъядерный процессор Athlon 64 X2.

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

Эволюция техпроцесса потоки процессора

Если покопаться в истории полупроводников 70‑х и 80‑х годов, то можно встретить устройства, разработанные по нормам техпроцесса 3 мкм. К такому технологическому прорыву впервые пришли компании Zilog в 1975 году и Intel в 1979 году соответственно.

Компании активно развивали технологии и совершенствовали литографическое оборудование.В начале-середине 90‑х, прогресс достиг новых высот и на рынке стали появляться модели вроде Intel Pentium Pro и MMX, а также знаменитая «улитка» Pentium II.

Все изделия выполнялись по нормам процесса 0,35 мкм, т.е. 350 нм. Буквально через 10 лет технологии позволили сократить размер транзистора втрое, до 130 нм, и это был прорыв.Однако культовый период пришелся на 2004 год, когда инженеры начали осваивать для себя 65 нм. Тогда мир увидел знаменитые Pentium 4, Core 2 Duo, а также AMD Phenom X4 и Turion 64 x2. В это же время рынок наводнили чипы Falcon и Jasper для Xbox 360.

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

Центральный процессор – один из ключевых компонентов системы, влияющих на ее производительность в целевых задачах, а также на удобство использования компьютера. Часто у пользователей, желающих собрать систему, возникает вопрос: на что ориентироваться при выборе ЦП? Стоит ли переплачивать за дополнительные потоки/виртуальные ядра?

Ответ зависит от предполагаемых сценариев использования. В большинстве игр прирост производительности от гиперпоточности окажется минимальным или даже нулевым, а вот добавление физических ядер скажется на частоте кадров явно положительно. Разумеется, если движок игры способен распараллеливать вычисления на такое количество ядер. Многие игры, выпущенные в предыдущие годы, способны работать только с 2-4 ядрами – остальные будут простаивать или заниматься фоновыми программами.

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

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

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

Доброго времени суток.

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

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

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

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

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

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

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

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

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

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

p, blockquote 13,0,0,0,0 –>

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

p, blockquote 14,0,0,1,0 –>

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

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

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

Потоки процессора, есть ли смысл переплачивать за производительность?

Сквадра Груп

Процессоры Сквадра Груп CPU Benchmark Цена за сервер, ₽ Новые процессоры CPU Benchmark Цена за сервер, ₽
Intel Xeon E5530
(4 Core, 8M Cache, 2.40 GHz)
4621 18 000 Intel Core i5-2300
(4 Core, 6M Cache, up to 3.10 GHz)
5283 78 000
Intel Xeon E5620
(4 Core, 12M Cache, 2.40 GHz)
4903 21 800 Intel Core i7-870
(4 Core, 8M Cache, 2.93 GHz)
5487 85 000
Intel Xeon E5645
(6 Core, 12M Cache, 2.40 GHz)
6533 39 400 Intel Xeon E3-1225 v3
(4 Core, 8M Cache, 3.20 GHz)
7005 124 300
Intel Xeon X5650
(6 Core, 12M Cache, 2.66 GHz)
7601 45 400 Intel Xeon E5-2620 v2
(6 Core, 15M Cache, 2.10 GHz)
8689 195 000
Intel Xeon E5-2670 v1
(8 Core, 20M Cache, 2.60 GHz)
12497 77 900 Intel Xeon E5-2640 v3
(8 Core, 20M Cache, 2.60 GHz)
14055 375 000

Что такое процессорное ядро и многоядерность

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

Если представить процессор в виде квартиры, то ядро — это крупная комната в такой квартире. Однокомнатная квартира — это одно процессорное ядро (крупная комната-зал), кухня, санузел, коридор… Двухкомнатная квартира — это уже как два процессорных ядра вместе с прочими комнатами. Бывают и трёх-, и четырёх, и даже 12-комнатные квартиры. Также и в случае с процессорами: внутри одного кристалла-«квартиры» может быть несколько ядер-«комнат».

Многоядерность — это разделение одного процессора на несколько одинаковых функциональных блоков. Количество блоков — это число ядер внутри одного процессора.

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

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

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

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

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

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

p, blockquote 6,0,0,0,0 —>

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

p, blockquote 8,0,0,0,0 —>

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

p, blockquote 9,1,0,0,0 —>

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

p, blockquote 10,0,0,0,0 —>

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

Если очень грубо, то все кирпичи с одного места на другое можно перенести в одной руке (1 поток), либо в двух (2 потока), но человек при этом один (1 ядро) и устает одинаково при любых условиях, хоть его производительность фактически увеличивается вдвое. Иными словами, мы упираемся в производительность ЦП, а конкретней в его частоту.

p, blockquote 11,0,0,0,0 —>

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

p, blockquote 12,0,0,0,0 —>

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

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

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

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

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

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

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

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

Потоки процессора, битва за производительность

С выпуском нового поколения процессоров 10 поколения семейства Comet Lake-S компания Intel намерена обострить конкуренцию на рынке настольных ПК и вернуть позиции, пошатнувшиеся под натиском новых чипов AMD Ryzen. С этой целью Intel намерена обеспечить поддержку многопоточности во всех новых процессорах Comet Lake-S, сообщил портал Wccftech со ссылкой на информацию из анонимных источников в компании и на данные тестовых листингов сайта 3DMark.

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

С большой долей вероятности доработанная архитектура Comet Lake-S позволяет включать многопоточность без оглядки на TDP. Технология Hyper Threading, в свою очередь, обеспечивает значительный прирост производительности процессоров в отдельных приложениях, и это именно то, что сегодня требуется Intel для удержания доли рынка настольных ПК.

Вместе с новыми процессорами ожидается дебют новых наборов логики Intel 400 с поддержкой процессорного разъема LGA 1200. По данным Wccftech, официальный анонс новой платформы с процессорами Comet Lake-S может произойти ориентировочно уже в феврале 2020 г., однако дополнительная информация появится гораздо раньше – уже через неделю, в рамках международной выставки CES 2020 в Лас-Вегасе.

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

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

p, blockquote 13,0,0,0,0 —>

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

p, blockquote 14,0,0,1,0 —>

Потоки процессора, классификация потоков по уровню реализации

  1. Реализация потоков на уровне ядра. Проще говоря, это классическая 1:1 модель. Под эту категорию подпадают:
    • Потоки Win32.
    • Реализация Posix Threads в Linux — Native Posix Threads Library (NPTL). Дело в том, что до версии ядра 2.6 pthreads в Linux был целиком и полностью реализован в режиме пользователя (LinuxThreads). LinuxThreads реализовывалf модель 1:1 следующим образом: при создании нового потока, библиотека осуществляла системный вызов clone, и создавало новый процесс, который тем не менее разделял единое адресное пространство с родительским. Это породило множество проблем, к примеру потоки имели разные идентификаторы процесса, что противоречило некоторым аспектам стандарта Posix, которые касаются планировщика, сигналов, примитивов синхронизации. Также модель вытеснения потоков, работала во многих случаях с ошибками, по этому поддержку pthread решено было положить на плечи ядра. Сразу две разработки велись в данном направлении компаниями IBM и Red Hat. Однако, реализация IBM не снискала должной популярности, и не была включена ни в один из дистрибутивов, потому IBM приостановила дальнейшую разработку и поддержку библиотеки (NGPT). Позднее NPTL вошли в библиотеку glibc.
    • Легковесные ядерны потоки (Leight Weight Kernel Threads — LWKT), например в DragonFlyBSD. Отличие этих потоков, от других потоков режима ядра в том, что легковесные ядерные потоки могут вытеснять другие ядерные потоки. В DragonFlyBSD существует множество ядерных потоков, например поток обслуживания аппаратных прерываний, поток обслуживания программных прерываний и т.д. Все они работают с фиксированным приоритетом, так вот LWKT могут вытеснять эти потоки (preempt). Конечно это уже более специфические вещи, про которые можно говорить бесконечно, но приведу еще два примера. В Windows все потоки ядра выполняются либо в контексте потока инициировавшего системный вызов/IO операцию, либо в контексте потока системного процесса system. В Mac OS X существует еще более интересная система. В ядре есть лишь понятие task, т.е. задачи. Все операции ядра выполняются в контексте kernel_task. Обработка аппаратного прерывания, к примеру, происходит в контексте потока драйвера, который обслуживает данное прерывание.
  2. Реализация потоков в пользовательском режиме. Так как, системный вызов и смена контекста — достаточно тяжелые операции, идея реализовать поддержку потоков в режиме пользователя витает в воздухе давно. Множество попыток было сделано, однако данная методика популярности не обрела:
    • GNU Portable Threads — реализация Posix Threads в пользовательском режиме. Основное преимущество — высокая портабельность данной библиотеки, проще говоря она может быть легко перенесена на другие ОС. Проблему вытиснения потоков в данной библиотеке решили очень просто — потоки в ней не вытесняются 🙂 Ну и конечно ни о какой мультмпроцессорности речь идти не может. Данная библиотека реализует модель N:1.
    • Carbon Threads, которые я упоминал уже не раз, и RealBasic Threads.
  3. Гибридная реализация. Попытка использовать все преимущества первого и второго подхода, но как правило подобные мутанты обладают гораздо бОльшими недостатками, нежели достоинствами. Один из примеров: реализация Posix Threads в NetBSD по модели N:M, которая была посже заменена на систему 1:1. Более подробно вы можете прочесть в публикации Scheduler Activations: Effective Kernel Support for the User-Level Management of Parallelism.

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

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

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

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

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

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

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

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

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

Hyper-Threading

Hyper-Threading была первой попыткой Intel перенести параллельные вычисления на потребительские ПК. Она дебютировала на настольных процессорах с Pentium 4 HT ещё в 2002 году. Pentium 4 того времени имел только одно ядро ЦП, поэтому он действительно мог выполнять только одну задачу за раз, даже если он мог переключаться между задачами достаточно быстро, что похоже на многозадачность. Hyper-Threading пыталась это компенсировать.

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

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

К счастью, гиперпоточность теперь стала «бонусом». В то время как у исходных потребительских процессоров с гиперпоточностью было только одно ядро, которое маскировалось под несколько ядер, современные процессоры Intel теперь имеют и многоядерность, и технологию гиперпоточности. Ваш двухъядерный ЦП с гиперпоточностью отображается в вашей операционной системе как четыре ядра, а четырехъядерный ЦП с гиперпоточностью — как восемь ядер. Гиперпоточность не заменяет дополнительные ядра, но двухъядерный ЦП с гиперпоточностью должен работать лучше, чем двухъядерный ЦП без гиперпоточности.

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

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

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

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

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

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

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

p, blockquote 6,0,0,0,0 —>

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

p, blockquote 8,0,0,0,0 —>

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

p, blockquote 9,1,0,0,0 —>

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

p, blockquote 10,0,0,0,0 —>

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

Если очень грубо, то все кирпичи с одного места на другое можно перенести в одной руке (1 поток), либо в двух (2 потока), но человек при этом один (1 ядро) и устает одинаково при любых условиях, хоть его производительность фактически увеличивается вдвое. Иными словами, мы упираемся в производительность ЦП, а конкретней в его частоту.

p, blockquote 11,0,0,0,0 —>

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

p, blockquote 12,0,0,0,0 —>

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

Практика показывает, что современный универсальный ПК должен иметь в своем распоряжении как минимум 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 –>

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

Практика показывает, что современный универсальный ПК должен иметь в своем распоряжении как минимум 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 имеют иное количество ядер/потоков.
  • Для мобильных компьютеров часто важнее экономичность в энергопотреблении (на практике — время работы от батареи), чем количество ядер.

Подведение итогов потоки процессора

Подводя итог разговора о том, на что влияет количество ядер процессора, можно прийти к одному простому выводу: если нужна хорошая производительность, быстродействие, многозадачность, работа в тяжелых приложениях, возможность комфортно играть в современные игры и т. д., то ваш выбор — процессор с четырьмя ядрами и больше. Если же нужен простенький «комп» для офиса или домашнего пользования, который будет использоваться по минимуму, то 2 ядра — это то что нужно. В любом случае, выбирая процессор, в первую очередь нужно проанализировать все свои потребности и задачи, и только после этого рассматривать какие-либо варианты.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector