Намного ли быстрее процессоры с несколькими ядрами
Многих людей при выборе компьютера часто волнует один и тот же вопрос. Во сколько раз больше ядер в процессоре, во столько раз он быстрее и работает? Попробуем разобраться в том, как всё устроено, и пояснить простыми словами. Эта статья, с целью облегчения восприятия новичками, будет содержать некоторые упрощения.
Чтобы понять, что такое многоядерность процессора, и какая от неё может быть польза, нужно, сначала, определиться с терминами.
Ядро процессора будем представлять как некий конвейер, выполняющий операции над данными. Программа в процессе работы отдаёт данные на обработку ядру. И получая некоторый результат, для примера, выводит его на экран.
Операционная система – группа программ, которая, помимо прочего, занимается разделением доступа к «конвейеру». Определяя, в какой момент времени и от какой программы будут обрабатываться данные. Для пользователя работа программ выглядит единовременной. Так происходит из-за очень большого количества операций производимых в секунду. Таким образом, все действия выполняются последовательно и быстро.
Сегодня уже не являются новинкой процессоры на 2-4 ядра. С момента появления Hyper-threading – технологии мультипоточности, операционная система стала выполнять две задачи параллельно. Технология делила мощность процессора на две части.
Позже производители процессоров поставят до 8 ядер на игровые приставки, например, PLAYSTATION. А количество ядер для персональных компьютеров стремиться к десяти. Соответственно, каждое ядро в единицу времени могло бы брать на себя отдельную задачу. Что давало бы равное количество единовременно обрабатываемых программ. Хотя на практике так не всегда бывает. Иногда несколько ядер обслуживают одну и ту же программу. Но при этом пользователь тоже может обнаружить разницу.
Это обоснованно наличием собственных системных программ операционной системы. Их может быть около двух или трёх десятков. Плюс, нужно помнить про дополнительные процессы, запущенные в фоновом режиме. Например, переводчик или антивирус. Все эти программы должны обслуживаться процессором. Они нуждаются в его вычислительной мощности и занимают такты времени. Если все они будут обслуживаться несколькими «конвейерами», то время на выполнения конкретного количества задач должно быть явно меньше, чем при выполнении всех задач одним ядром. А если пользователь запустил несколько приложений – разница будет ещё нагляднее: увеличение скорости выполнения каждой программы и переключения между ними. Но есть и некоторые требования к оперативной памяти, ведь каждое ядро будет использовать часть её для своих нужд. Таким образом, если объём памяти будет около половины гигабайта – результат вас не порадует. Баланс системы очень важен, в том числе, учитывая и операционную систему. Сбалансированная система может давать, при прочих равных, от 30 до 300 процентов прироста производительности.
Диспетчер задач
Бывают случаи, когда какая-либо программа «зависает», то есть, продолжая занимать ядро процессора, перестаёт выполняться. В случае, когда ядер процессора несколько – это не приведёт к критическим последствиям и операционная система сможет полагаться на оставшиеся в работе ядра, что позволит завершить задачу без перезагрузки системы. Для снятия задачи с выполнения нужно открыть диспетчер задач на вкладке со списком выполняемых приложений. Выбрать нужное, и нажать на кнопку «Снять задачу». Если это не помогает, или в списке нет нужной задачи (приложения), то придётся искать процесс (или несколько), отвечающий за выполнения данной программы. Для этого нужно перейти в закладку «процессы». И выбрать нужный для завершения процесс. Иногда безопаснее перезагрузить операционную систему.
Также в диспетчере задач, на закладке «Быстродействие», есть хронология загрузки ЦП. Надо отметить, что хронология ведётся для каждого ядра, что даёт дополнительную возможность узнать о количестве ядер процессора.
Современные программы, равно как и операционные системы, берут курс на поддержание многоядерности. Новые игры уже пишутся с учётом возможностей процессора. Операционные системы пытаются распределять нагрузку между всеми ядрами равномерно. А программы начали проектировать так, чтобы не занимать (не блокировать) ядра процессора, дольше необходимого времени. Но это практикуют лишь некоторые разработчики.
Поэтому, выбирая домашний компьютер для обычных целей, не стоит отдавать предпочтение лишь большему количеством ядер процессора. Нужно учитывать общий баланс системы и подбирать тактико-технические характеристики сообразно задачам.