Зачем нужны ядра в телефоне?
Изначально процессоры обладали всего одним ядром, на которое возлагались все задачи. Постепенно чипы становились мощнее – они получали возможность обрабатывать больше информации за одну единицу времени. Из-за этого они сильно нагревались, что стало настоящей проблемой. Было принято решение разделить чип на несколько ядер, в результате чего их производительность возросла, а нагрев так и остался на прежнем уровне, так как каждое ядро обрабатывало параллельно большой поток информации. Позже появились четырех-, шести- и даже восьмиядерные процессоры.
Так вот ядра в телефоне (вернее – в процессоре) нужны для параллельной (одновременной) обработки потока информации. Возложить сразу большой объем данных для обработки на одно ядро не удается.
Как проверить процессор
Когда компьютер начинает тормозить и зависать, у пользователя сразу возникает мысль о том, что проблема в ЦПУ, что-то случилось с мозгом компьютера. Давайте рассмотрим, как проверить процессор на работоспособность. Это можно сделать несколькими способами.
Перестановка процессора в другой компьютер
Предложение некоторых пользователей перенести ЦПУ на другой компьютер — не самое лучшее. Так обычно поступают с электроприборами, которые не включаются. Чтобы убедиться, что проблема в самом приборе, а не в розетке, его включают в другой источник питания. Можно, конечно, так поступить и с компьютером, если их у вас два. Но этот процесс сопряжен с некоторыми трудностями:
- Не в каждом доме есть два компьютера, тем более работающих на однотипных процессорах, а соседи или друзья, скорее всего, не позволят вам ковыряться в своем электронном друге.
- Сама перестановка CPU из одного компьютера в другой — процесс трудоемкий, хотя по сути своей, несложный.
Теперь, наверное, хотите узнать, как протестировать процессор, если рядом нет другого компьютера. Гораздо проще выполнить его проверку при помощи программ.
Диспетчер задач
Диспетчер задач — программа, являющаяся неотъемлемой частью операционной системы. Она отражает загруженность компьютера и показывает его работоспособность. Вызвать Диспетчер задач можно двумя основными способами:
- Одновременным нажатием клавиш Ctrl + Shift + Esc , которые расположены в левой части клавиатуры, или Ctrl + Alt + Delete , находящиеся в центральной ее части.
- Кнопкой ПУСК, в некоторых ОС вместо нее используется Панель задач. Но нажимаете не левой клавишей мышки, как обычно, а правой. В открывшемся меню выбираете Диспетчер задач.
В появившемся окне на вкладке «Процессы» в верхней строке можно увидеть общую загруженность процессора. Ниже — загруженность по отдельным программам. По динамике цифр можем сделать вывод о нагрузке ЦПУ в отдельных программах и его работоспособности в целом. 0% показывает, если утилита в состоянии покоя.
Вкладка «Производительность» графически демонстрирует динамику работы CPU. Здесь же можно узнать о тактовой частоте процессора (скорости его работы), количестве ядер, КЭШах, памяти и др. Частота процессора — один из самых важных параметров ЦПУ, показывающих его работоспособность. Она выражается в Герцах. Заявленная производителем тактовая частота процессора, установленного в тестируемый компьютер, 3000 МГц или 3 ГГц.
Знание данного параметра необходимо при установке программ, чтобы убедиться, потянет ли конкретный компьютер ту или иную программу, игру. Разработчики программ всегда пишут системные требования к устройству, на котором будет работать заданная утилита.
Кроме частоты процессора для установки емких программ и игр необходимо наличие оперативной и дисковой памяти. К примеру, Камтазия студио стабильно работает только при наличии 4Гб оперативной памяти. В ее системных требованиях рекомендован двухъядерный процессор со скоростью 2ГГц и выше. В ходе редактирования программа не перегружает процессор. Максимальная его нагрузка происходит только при обработке формата видеофайлов, создании фильма.
Конечно, у каждого пользователя свои приоритеты, пристрастия и, соответственно, программы. Камтазия приведена в качестве примера.
Процессор загружен на 100 %
Диспетчер задач поможет выяснить эту причину. Обратите внимание, какая именно программа перегружает процессор. Если уверены, что перегрузка безосновательна, то такую программу желательно удалить, а компьютер почистить антивирусной программой. Возможно, что программа конфликтует с каким-нибудь приложением. Если вы считаете, что данная утилита нужна, попробуйте ее переустановить.
Здесь же можно понять и то, что процессор начал перегреваться. Сведите к минимуму работу программ. И если загруженность процессора показывает 99–100%, значит, есть вероятность его перегрева. Конечно, можете возразить, что перегрев не позволяет максимально загружаться процессору. Но высокая температура перегружает CPU, поэтому стопроцентная загрузка является своеобразным индикатором перегрева.
Перегрев опасен для электронного устройства. Если не принять мер, оно рано или поздно сгорит. Если перегревается процессор, обязательно узнаете, что надо делать, дочитав статью до конца. Но сначала процессор протестируем в программе AIDA64. Она поможет выявить причину перегрузки и перегрева процессора.
Включение ядер в утилите конфигурации
Если параметры БИОСа установлены правильно, но ядра все равно не активны, можно попробовать изменить настройки в специальной программе конфигурации Windows. Для этого понадобится:
После произведенных операций перезагружаем систему.
Удвоение ядер не удваивает скорость
Многие компьютерные программы являются однопоточными, это означает, что их работа не может быть разделена между несколькими процессорами (CPU). Каждая из них должна работать с одним процессором (CPU). Это значит, что увеличение ядер не удвоит их эффективность. Если у вас есть однопоточное приложение, запущенное на четырехъядерном процессоре, то оно будет использовать только одно ядро, а остальные ядра в это время будут находиться в процессе ожидания, и только когда будут запущены другие приложения, они начнут действовать.
Правильное написание многопоточных приложений, которые можно масштабировать на нескольких процессорах одновременно, на самом деле является довольно сложной сферой компьютерной науки. Это становится все более актуальной проблемой, так как в будущем, скорее всего, будут появляться процессоры с большим количеством ядер, а не процессоры с меньшим числом ядер, рассчитанные на высокую скорость.
Некоторые приложения могут использовать преимущества нескольких ядер. Многопроцессорная архитектура Google Chrome позволяет ему выполнять действия с несколькими ядрами одновременно. Некоторые компьютерные игры также могут распределять расчеты на несколько ядер.
Тем не менее, большинство используемых приложений – однопоточные. Четырехъядерный процессор по сравнению с двухъядерным не будет работать с Microsoft Office вдвое быстрее. Если вы запустите Microsoft Office на разных процессорах, то увидите – производительность очень похожа.
Большое количество ядер может вам помочь, если вы хотите делать несколько задач одновременно или, если у вас есть многозадачные приложения, которые могут работать с многоядерными процессорами. Например, если вы запускаете несколько виртуальных машин во время кодирования видео, извлечения файлов, и некоторых других требовательных к процессору вещей, то восьмиядерный процессор может вам в этом помочь, в то время как даже четырехъядерный процессор начнет тормозить от таких нагрузок.
Нужна ли многоядерность?
В центре современного центрального микропроцессора (CPU – сокр. от англ. central processing unit – центральное вычислительное устройство) находится ядро (core) – кристалл кремния площадью примерно один квадратный сантиметр, на котором посредством микроскопических логических элементов реализована принципиальная схема процессора, так называемая архитектура (chip architecture).
Ядро связано с остальной частью чипа (называемой «упаковка», CPU Package) по технологии «флип-чип» (flip-chip, flip-chip bonding – перевернутое ядро, крепление методом перевернутого кристалла). Эта технология получила такое название потому, что обращенная наружу – видимая – часть ядра на самом деле является его «дном», – чтобы обеспечить прямой контакт с радиатором кулера для лучшей теплоотдачи. С обратной (невидимой) стороны находится сам «интерфейс» – соединение кристалла и упаковки. Соединение ядра процессора с упаковкой выполнено с помощью столбиковых выводов (Solder Bumps).
Ядро расположено на текстолитовой основе, по которой проходят контактные дорожки к «ножкам» (контактным площадкам), залито термическим интерфейсом и закрыто защитной металлической крышкой.
Что такое многоядерный процессор
Многоядерный процессор – это центральный микропроцессор, содержащий 2 и более вычислительных ядра на одном процессорном кристалле или в одном корпусе.
Для чего нужна многоядерность
Первый (естественно, одноядерный!) микропроцессор Intel 4004 был представлен 15 ноября 1971 г. корпорацией Intel. Он содержал 2300 транзисторов, работал на тактовой частоте 108 кГц и стоил $300.
Требования к вычислительной мощности центрального микропроцессора постоянно росли и продолжают расти. Но если раньше производителям процессоров приходилось постоянно подстраиваться под текущие насущные (вечно растущие!) запросы пользователей ПК, то теперь чипмейкеры идут с бо-о-о-льшим опережением!
Долгое время повышение производительности традиционных одноядерных процессоров в основном происходило за счет последовательного увеличения тактовой частоты (около 80% производительности процессора определяла именно тактовая частота) с одновременным увеличением количества транзисторов на одном кристалле. Однако дальнейшее повышение тактовой частоты (при тактовой частоте более 3,8 ГГц чипы попросту перегреваются!) упирается в ряд фундаментальных физических барьеров (поскольку технологический процесс почти вплотную приблизился к размерам атома: сегодня процессоры выпускаются по 45-нм технологии, а размеры атома кремния – приблизительно 0,543 нм):
• во-первых, с уменьшением размеров кристалла и с повышением тактовой частоты возрастает ток утечки транзисторов. Это ведет к повышению потребляемой мощности и увеличению выброса тепла;
• во-вторых, преимущества более высокой тактовой частоты частично сводятся на нет из-за задержек при обращении к памяти, так как время доступа к памяти не соответствует возрастающим тактовым частотам;
• в-третьих, для некоторых приложений традиционные последовательные архитектуры становятся неэффективными с возрастанием тактовой частоты из-за так называемого «фон-неймановского узкого места» – ограничения производительности в результате последовательного потока вычислений. При этом возрастают резистивно-емкостные задержки передачи сигналов, что является дополнительным узким местом, связанным с повышением тактовой частоты.
Применение многопроцессорных систем также не получило широкого распространения, так как требует сложных и дорогостоящих многопроцессорных материнских плат. Поэтому было решено добиваться дальнейшего повышения производительности микропроцессоров другими средствами. Самым эффективным направлением была признана концепция многопоточности, зародившаяся в мире суперкомпьютеров, – это одновременная параллельная обработка нескольких потоков команд.
Так в недрах компании Intel родилась Hyper-Threading Technology (HTT) – технология сверхпоточной обработки данных, которая позволяет процессору выполнять в одноядерном процессоре параллельно до четырех программных потоков одновременно. Hyper-threading значительно повышает эффективность выполнения ресурсоемких приложений (например, связанных с аудио- и видеоредактированием, 3D-моделированием), а также работу ОС в многозадачном режиме.
Процессор Pentium 4 с включенным Hyper-threading имеет одно физическое ядро, которое разделено на два логических, поэтому операционная система определяет его, как два разных процессора (вместо одного).
Hyper-threading фактически стала трамплином к созданию процессоров с двумя физическими ядрами на одном кристалле. В 2-ядерном чипе параллельно работают два ядра (два процессора!), которые при меньшей тактовой частоте обеспечивают большую производительность, поскольку параллельно (одновременно!) выполняются два независимых потока инструкций.
Архитектура многоядерных систем
Многоядерные процессоры можно подразделить по наличию поддержки когерентности (общей) кеш-памяти между ядрами. Бывают процессоры с такой поддержкой и без неё.
Способ связи между ядрами: разделяемая шина сеть (Mesh) на каналах точка-точка сеть с коммутатором общая Кеш-память
Способность процессора выполнять одновременно несколько программных потоков называется параллелизмом на уровне потоков (TLP – thread-level parallelism). Необходимость в TLP зависит от конкретной ситуации (в некоторых случаях она просто бесполезна!).
Основные проблемы создания многоядерных процессоров
• каждое ядро процессора должно быть независимым, – с независимым энергопотреблением и управляемой мощностью;
• рынок программного обеспечения должен быть обеспечен программами, способными эффективно разбивать алгоритм ветвления команд на четное (для процессоров с четным количеством ядер) или на нечетное (для процессоров с нечетным количеством ядер) количество потоков;
Преимущества многоядерных процессоров
• возможность распределять работу программ, например, основных задач приложений и фоновых задач операционной системы, по нескольким ядрам;
• увеличение скорости работы программ;
• процессы, требующие интенсивных вычислений, протекают намного быстрее;
• более эффективное использование требовательных к вычислительным ресурсам мультимедийных приложений (например, видеоредакторов);
• работа пользователя ПК становится более комфортной;
Недостатки многоядерных процессоров
• возросшая себестоимость производства многоядерных процессоров (по сравнению с одноядерными) заставляет чипмейкеров увеличивать их стоимость, а это отчасти сдерживает спрос;
• так как с оперативной памятью одновременно работают сразу два и более ядра, необходимо «научить» их работать без конфликтов;
• возросшее энергопотребление требует применения мощных схем питания;
• требуется более мощная система охлаждения;
• количество оптимизированного под многоядерность программного обеспечения ничтожно мало (большинство программ рассчитаны на работу в классическом одноядерном режиме, поэтому они просто не могут задействовать вычислительную мощь дополнительных ядер);
• операционные системы, поддерживающие многоядерные процессоры (например, Windows XP SP2 и выше) используют вычислительные ресурсы дополнительных ядер для собственных системных нужд;
Следует признать, что в настоящее время многоядерные процессоры используются крайне неэффективно. Кроме того, на практике n-ядерные процессоры не производят вычисления в n раз быстрее одноядерных: хотя прирост быстродействия и оказывается значительным, но при этом он во многом зависит от типа приложения. У программ, которые не рассчитаны на работу с многоядерными процессорами, быстродействие увеличивается всего на 5%. А вот оптимизированные под многоядерные процессоры программы работают быстрее уже на 50%.