зачем нужно много ядер в процессоре
Зачем нужно много ядер в процессоре
Один из главных вопросов, который терзает многих перед покупкой нового компьютера – это правильное количество ядер процессора. Сегодня в магазинах предлагаются чипы от двух ядер с невысокой тактовой частотой, до 16-ядерных монстров типа Ryzen 9 5950X. Также есть и 10-ядерные скоростные камни, обладающие высокой тактовой частотой. Ещё пять лет назад никто и не задумывался о необходимости большого количества ядер для игр, а 4 быстрых ядра хватало всем. С тех пор игровая индустрия изменилась, а студии научились работать со сложным оборудованием, выжимая из него максимум возможного. Это значит, что самое время узнать, сколько же ядер нужно для современных игр.
реклама
Тестирование проведено ребятами Youtube-канала Testing Games, а сама методика построена на отключении части ядер процессора с последующим тестированием и сравнением результатов. Основой для теста выступил процессор Ryzen 9 5950X, в качестве видеокарты была выбрана скоростная GeForce RTX 3080. Игры: Call of Duty: Warzone, Microsoft Flight Simulator, Forza Horizon 4, Cyberpunk 2077 и Red Dead Redemption 2. Результаты получены в разрешении 1080р, все настройки есть на видео.
Мы не будем выкладывать скриншоты с отдельными играми, поскольку информации там слишком много. Все это посмотреть можно на видео ниже, мы же сделаем краткие выводы на основе полученных результатов, которые доступны в виде удобной таблицы. Главная проблема кроется в том, что некоторые студии всё ещё подходят к созданию игр спустя рукава. Эти ребята игнорируют новые тенденции, упорно напирая на максимальные таковые частоты. Всё это делает даже 8-ядерный процессор бесполезной игрушкой в вашем системном блоке, поскольку его 2 или даже 4 ядра будут просто простаивать. Давайте к примерам:
игра/ядра | 4 | 6 | 8 | 10 | 12 | 16 |
Forza Horizon | 170 | 187 | 191 | 196 | 196 | 196 |
Call of Duty: Warzone | 90 | 159 | 182 | 181 | 181 | 185 |
Cyberpunk 2077 | 80 | 108 | 116 | 119 | 122 | 122 |
Red Dead Redemption 2 | 96 | 146 | 163 | 166 | 167 | 167 |
Microsoft Flight Simulato | 47 | 53 | 54 | 54 | 55 | 59 |
Из всего вышеописанного можно сделать следующие выводы:
Здесь стоить сделать одно важное замечание. Многие эксперты уверяют, что уже вскоре нас ждёт так называемый Next Gen, связывая приход чуда с игровыми приставками нового поколения. Это связано с большим количеством ядер, которые вот-вот научатся загружать разработчики. Возможно, в отдалённом будущем это будет весьма актуально, вот только нужно ли покупать процессор впрок, ожидая получить буст в будущем за счёт программистов студий или любых других оптимизаций? Реальность такова, что никто и ничего нам бесплатно не даст. Ваш процессор останется ровно таким, какой был на старте, а значит самое время взвесить все за и против, перенаправив высвободившиеся от экономии на Core i9-10900К деньги на скоростную память или современный накопитель. Любой из вариантов позволит улучшить реальные показатели вашей системы, не ожидая наступления счастливого будущего.
Вместо послесловия. Любителям экспериментов и свидетелям шима на OLED-дисплеях стоит обратить внимание на показатель 0.1%. Здесь вас ждут совсем другие результаты. Крайне сомнительно, что это хоть как-то влияет на восприятие игры, однако многим нашим читателям будет несомненно приятно узнать о том, что 8-ядерный камушек способен обеспечить большую стабильность кадров, в то время как те же 6 ядер не всегда держат средний fps на протяжение всей игры. В некоторых проектах (Cyberpunk 2077) очень заметен переход на 10 ядер по показателю 0.1%, однако это единичный результат, который не может повлиять на общую картину.
На что влияет число ядер CPU? Объясняем по-простому
С числом, обозначающим количество ядер процессора, вы сталкиваетесь самое позднее при покупке компьютера. Но что же на самом деле дает большее количество ядер CPU, и есть ли смысл выбирать как можно более многоядерный процессор? В данной статье мы разъясняем, для чего нужно несколько ядер процессора, и всегда ли большее их количество — лучше.
Какой процессор лучше — с более высокой тактовой частотой или с большим количеством ядер? Не всегда все однозначно…
Вот почему появились многоядерные CPU: процессоры с несколькими ядрами были разработаны потому, что увеличение вычислительной производительности путем повышения тактовой частоты приносило большие технические проблемы. Кроме того, гораздо менее затратным оказался метод размещения нескольких ядер в одном процессоре, по сравнению с установкой нескольких процессоров на одной материнской плате. Вы и сами можете в этом легко убедиться: один процессор с несколькими ядрами в большинстве случаев стоит дешевле, чем 2 процессора с меньшим количеством ядер.
Так что же дает наличие нескольких ядер? Во-первых, вся основная нагрузка системы распределяется между несколькими «вычислительными центрами». Благодаря этому ваш ноутбук или ПК реже оказывается полностью перегруженным и не «замирает» так часто, как мог бы с одноядерным процессором. CPU с несколькими ядрами могут повышать тактовую частоту и, как следствие, производительность компьютера. Однако, на практике увеличение мощности сильно зависит от того, какая программа выполняется и какая при этом используется операционная система. Сам по себе принцип работает только в том случае, если вы используете ПО, поддерживающее многопоточность обработки данных, то есть особенно требовательное к ресурсам системы.
Например, Intel Core i5-4570S имеет в целом 4 физических CPU-ядра и может работать на тактовой частоте до 3,6 ГГц. Другая модель этого же производителя, Intel Core i3-7350K располагает всего двумя физическими ядрами, но тактовая частота у него достигает отметки в 4,2 ГГц. Расчеты вида 4 (ядра) * 3,6 ГГц = 14,4 ГГц здесь не подходят: i5-4570S по результатам наших тестовых испытаний оказался значительно хуже и менее эффективным, чем i3-7350K. Несмотря ни на что вы должны покупать только те процессоры, которые имеют минимум 2 ядра или больше. Делать ли выбор в пользу большего количества ядер или подыскивать процессор с более высокой тактовой частотой, зависит от того, как вы собираетесь использовать свой компьютер.
При всем этом сравнивать напрямую вы можете процессоры только одного производителя и одного типа. Все потому, что более старый CPU с 8 ядрами может оказаться хуже, чем новый процессор с 4 ядрами от другого производителя.
5 причин для покупки процессоров с 8 и более ядрами в 2020 году
В комментариях к блогу «7 причин, по которым вам не стоит покупать мощную видеокарту» развернулась оживленная дискуссия между читателями. Причем и аргументы любителей дорогих видеокарт, и аргументы экономных пользователей вполне обоснованы и имеют право на существование.
реклама
А вот упоминание в комментариях бюджетных процессоров и экономии на них подтолкнули меня написать этот блог.
На первый взгляд, в игровом ПК видеокарта намного важнее процессора и это вполне логично и подтверждается тестами. Но только до тех пор, пока процессора хватает для тестируемой конфигурации.
реклама
Но как только его загрузка приближается в играх к 100%, игрока ждут фризы, статтеры и нестабильная кадровая частота. При этом число кадров в секунду, отображаемых мониторингом MSI Afterburner или FPS Monitor, вполне может держаться у заветной отметки «60».
С этой проблемой сталкиваются как пользователи, давно сидящие на устаревшем «железе» и поставившие в него мощную видеокарту, так и купившие в магазине игровой ПК, в котором сэкономлено на всем, кроме видеокарты.
А если процессор настолько слаб, что не успевает подгружать текстуры, вас ждет вот такая картина.
реклама
В данный момент на рынке ПК в течении уже пары лет происходит тектонический сдвиг, в результате которого четырехъядерные процессоры оказались на обочине прогресса.
Еще вчера Core i7-7700K был оптимальным выбором для игровой машины, а сегодня Ryzen 3 3100, предлагающий похожую производительность, позиционируется как бюджетное решение начального уровня.
реклама
Но пользователи, покупающие их сейчас, роют себе такую же яму, в которую попали покупатели мощных четырехъядерников в 2015-2017 годах, например Core i5-6600K или Core i5-7500.
Я играю в Anno 1800 на разогнанном до 4 ГГц Ryzen 5 1600 и вижу, что даже с видеокартой GeForce GTX 1060 игре нужен более мощный процессор.
Эта переплата позволила владельцам Core i7-2600K пропустить один апгрейд или пару-тройку лет. Даже сейчас этот процессор вполне способен работать в связке с GeForce GTX 1660.
И точно также переплата за восьмиядерный процессор в 2020 году позволит вам сохранить актуальность вашего ПК на два-три года дольше.
Что же делать, если вы решились на апгрейд прямо сейчас, но доплатить за восьмиядерник такую огромную сумму вам жалко? Есть неплохой выход, особенно с системами AM4. Вы можете купить хорошую материнскую плату, которая будет гарантированно поддерживать процессоры Ryzen 4000 и комплект хорошей памяти.
Я выбрал именно такой вариант, купив плату на B450 чипсете и недорогой Ryzen 5 1600, которого с разгоном пока хватает, как бюджетный вариант.
Напишите в комментарии, а что вы думаете о проблеме скорого морального устаревания шестиядерных процессоров? И какой процессор стоит у вас?
Технологии многопоточности процессоров: принцип работы и сферы применения
Содержание
Содержание
Физические ядра, логические ядра, технологии многопоточности — все это разрабатывалось инженерами для увеличения производительности компьютерного железа, требования к которому постоянно растут. Программы и игры требуют все больше ресурсов. Как же производители процессоров увеличивают мощность своих детищ? Процессор является «сердцем» компьютера и выполняет вычисления, необходимые для работы софта. Модели CPU отличаются между собой даже в рамках одного семейства. Например, Intel Core i7 отличается от i5 технологией многопоточности под названием «Hyper-Threading», о которой далее пойдет речь (Core i3, i9, и некоторые Pentium также обладают данной технологией).
Принцип работы процессорных ядер и многопоточности
В современных операционных системах одновременно работает множество процессов.
Нагрузка от операционной системы на процессор идет по так называемому конвейеру, на который «выкладываются» нужные задачи для ядра. В качестве примера возьмем одно ядро процессора на частоте 4 ГГц с одним ALU (арифметико-логическое устройство) и одним FPU (математический сопроцеесор). Частота в 4 ГГц означает, что ядро исполняет 4 миллиарда тактов в секунду. К ядру по конвейеру поступают задачи, требующие исполнительной мощности, на которые тратится процессорное время.
Часто происходят случаи, когда для выполнения необходимой операции процессору приходится ждать данные из кеша более низкой скорости (L3 кеш), или же оперативной памяти. Данная ситуация называется кэш-промах. Это происходит, когда в кэше ядра не была найдена запрошенная информация и приходится обращаться к более медленной памяти. Также существуют и другие причины, заставляющие прерывать выполнение операции ядром, что негативно сказывается на производительности.
Данный конвейер можно представить, как настоящую сборочную линию на заводе — рабочий (ядро) выполняет работу, поступающую к нему на ленту. И если необходимо взять нужный инструмент, работник отходит, оставляя конвейер простаивать без работы. То есть, исполняемая задача прерывается. Инструментом, за которым пошел рабочий, в данном случае является информация из оперативной памяти или же L3 кэша. Поскольку L1 и L2 кэш намного быстрее, чем любая другая память в компьютере, работа с вычислениями теряет в скорости.
На конвейере с одним потоком не могут выполняться одновременно несколько процессов. Ядро постоянно прерывает выполнение одной операции для другой, более приоритетной. Если появятся две одинаково приоритетные задачи, одна из них обязательно будет остановлена, ведь ядро не сможет работать над ними одновременно. И чем больше поступает задач одновременно, тем больше прерываний происходит.
Способы увеличения производительности процессоров
Разгон
При увеличении частоты ядра повышается количество исполняемых операций за секунду. Казалось бы, с возрастанием производительности процессора проблемы должны исчезнуть. Но все не так просто, как хотелось бы думать. Прирост от увеличения частоты ЦП нелинейный. Множество процессов все еще делят одно ядро между собой и обращаются к памяти. Кроме того, не решается проблема с кэш-промахами и прерываниями операций, поскольку объем кэша от разгона не изменяется. Разгон — не самый лучший способ решения проблемы нехватки потоков. В пример можно привести всю ту же сборочную линию: рабочий увеличивает темп работы, но по-прежнему не умеет собирать два и более заказа одновременно.
Увеличение количества потоков на ядро
В процессорах Intel данная технология носит название Hyper-Threading, а в процессорах от Amd — SMT. Производители добавляют еще один регистр для работы со вторым конвейером. Пока один поток простаивает, ожидая нужные данные, свободная вычислительная мощность может быть использована вторым потоком. На кристалл же добавлен еще один контроллер прерываний и набор регистров.
Появляется возможность избавиться от последствий прерывания операций и сокращения времени простоя процессорной мощности. Благодаря чему ядро с двумя потоками выполняет больше работы за одинаковый отрезок времени, нежели в случае с однопотоком. На примере с рабочим: у конвейера появляется вторая сборочная линия, на которую выкладываются заказы. Пока производство на первой ленте простаивает в ожидании нужных инструментов, рабочий приступает к работе на второй ленте, сокращая время перерыва.
Стоит учитывать, что логический поток это не второе ядро, как может показаться с первого взгляда. Это лишь дополнительная «линия производства», чтобы более эффективно использовать доступную мощность. Из минусов технологии Hyper-Threading или SMT можно выделить увеличение тепловыделения, недостаток кэша (кэш на два потока по-прежнему общий), и проблемы с оптимизацией некоторых программ или игр, не способных отличать настоящее ядро от логического потока.
Именно по этой причине процессоры серии i7 «горячее» и имеют больше кэша по сравнению с i5. Использование технологии многопоточности может принести примерно до 30 % прироста производительности. Все это применимо как к Intel Hyper-Threading, так и к AMD SMT, поскольку технологии во многом схожи. Может возникнуть вопрос: «Если можно добавить второй поток, то почему бы не добавить третий и четвертый?» Это реализуемо, но не имеет смысла, поскольку кэш одного ядра достаточно мал для большего количества потоков и прироста производительности практически не будет.
Увеличение количества ядер
Это самый действенный способ решения проблемы, поскольку каждый конвейер теперь располагает своим FPU, ALU и кэшем, который не придется делить с другим потоком. Разные процессы используют разные ядра, из-за чего реже происходят кэш-промахи и конфликты приоритетных задач. Способ, разумеется, несет в себе некоторые издержки для производителей: дороговизна разработки и производства, увеличение тепловыделения и размера кристалла, и, как результат, повышается итоговая стоимость процессора.
Сферы применения многопоточных процессоров
С развитием компьютерных технологий перечень программ, использующих многопоточность, неуклонно растет. Это дает огромный простор разработчикам для создания нового софта и игр. Например, сейчас каждый современный triple-A проект оптимизирован для многопоточных процессоров, что позволяет наслаждаться игрой, получая высокий уровень fps на многоядерном CPU.
Еще больше распространены многоядерные системы в среде разработчиков. Программы для 3D-моделирования, монтажа видео и создания музыки требуют параллельного выполнения большого количества задач, с чем хорошо справляются системы с Hyper-Threading или SMT. В операционных системах мощность одного потока может тратиться на фоновые задачи (Skype, браузер, мессенджер), в то время как остальные задействуются для тяжелой игры или программы.
Но далеко не всегда увеличение количества потоков означает увеличение общей производительности. Почему же SMT процессоры порой уступают немногопоточным собратьям? Дело в программной поддержке. Иногда плохо оптимизированные программы не могут отличать логический поток от настоящего ядра, из-за чего на одно ядро может попасть две тяжелых задачи и замедлить работу. Тем не менее, подобные технологии имеют огромный потенциал, главное — грамотно реализовать его на программном уровне.
Ядра или тактовая частота процессора: выясняем, что важнее для работы и игр
реклама
Процессоры будут являться «синтетическими», «созданными» на основе многоядерного процессора 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
Для упрощения восприятия результатов тестирования, все данные были отображены в виде диаграммы с таблицей значений.
И опять с крохотным отрывом победу одержали четыре быстрых ядра. Но не стоит забывать, что это самые минимальные настройки графики, если бы видеокарта позволяла выставить максимальные настройки графики без «бутылочного горлышка», то процессор с четырьмя ядрами, скорее всего, серьезно бы уступил более медленному процессору, но с большим количеством ядер.
Заключение
Четыре ядра, шесть ядер, низкая частота, высокая частота имеет ли это такое большое значение, если итоговая производительность «гуляет» от игры к игре, а в синтетических тестах разница между этими решениями настолько мала, что становится трудно «рассудить», какой типовой процессор действительно лучший? Все зависит от ваших конкретных задач.