В чем разница между ядром и процессором?
Я уже искал его в Google, но у меня просто есть многоядерное и многопроцессорное определение, но оно не соответствует тому, что я ищу.
В чем разница между ядром и процессором?
Я уже искал его в Google, но у меня просто есть многоядерное и многопроцессорное определение, но оно не соответствует тому, что я ищу.
Ядро, как правило, является основной вычислительной единицей процессора - он может запускать один программный контекст (или несколько, если он поддерживает аппаратные потоки, такие как гиперпоточность на процессорах Intel), поддерживая правильное состояние программы, регистры и правильное выполнение порядок и выполнение операций через ALU. Для целей оптимизации ядро может также хранить кэшированные ядра с копиями часто используемых фрагментов памяти.
Процессор может иметь один или несколько ядер для выполнения задач в данный момент времени. Этими задачами обычно являются программные процессы и потоки, которые планируют ОС. Обратите внимание, что ОС может запускать много потоков, но ЦП может запускать только X таких задач в данный момент времени, где X = число ядер * число аппаратных потоков на ядро. Остальным придется подождать, пока ОС планирует их планировать, путем вытеснения текущих запущенных задач или любых других средств.
В дополнение к одному или нескольким ядрам процессор будет включать в себя некоторое межсоединение, которое соединяет ядра с внешним миром и обычно также большой общий кэш "последнего уровня". Для работы ЦПУ требуется несколько других ключевых элементов, но их точное местоположение может отличаться в зависимости от дизайна. Вам понадобится контроллер памяти, чтобы разговаривать с памятью, контроллерами ввода/вывода (дисплей, PCIe, USB и т.д.). В прошлом эти элементы находились вне процессора, в дополнительном "чипсете", но большинство современных дизайнов интегрировали их в CPU.
Кроме того, у CPU может быть встроенный графический процессор, и в значительной степени все остальное, что разработчик хотел бы поддерживать в отношении производительности, мощности и производственных соображений. Дизайн процессора в основном отличается тем, что называется на чипе (SoC).
Это классический дизайн, используемый большинством современных универсальных устройств (клиентский ПК, серверы, а также планшеты и смартфоны). Вы можете найти более сложные проекты, обычно в академии, где вычисления не выполняются в базовых "ядровых" единицах.
Изображение может сказать более тысячи слов:
* Рисунок, описывающий сложность современной многопроцессорной, многоядерной системы.
Источник:
Позвольте сначала прояснить, что такое процессор и что такое ядро, центральный процессор центрального процессора, может иметь несколько базовых блоков, эти ядра сами по себе являются процессорами, способными выполнять программу, но он сам содержится на одном чипе.
В прошлом один процессор был распределен среди нескольких чипов, но по мере того, как закон Moore продвигался, они делали полный процессор внутри одного чипа (die), так как 90 производитель начал вписывать больше ядер в одну и ту же матрицу, так что концепция многоядерных процессоров.
В наши дни возможно иметь сотни ядер на одном процессоре (чипе или кристалле), процессоре Intel Xeon. Другой метод, разработанный в 90 году, - это одновременная многопоточность, в основном они обнаружили, что в одном и том же центральном процессоре появилась другая нить, поскольку большинство ресурсов дублировались уже как ALU, несколько регистров.
Таким образом, в основном процессор может иметь несколько ядер, каждый из которых способен одновременно запускать один поток или более, в будущем мы можем ожидать, что в будущем будет больше ядер, но с большим трудом сможет эффективно программировать.
CPU является центральным процессором. С 2002 года у нас есть только одноядерный процессор, т.е. Мы будем выполнять только одну задачу или программу за раз.
Для одновременного запуска нескольких программ мы должны использовать несколько процессоров для выполнения нескольких процессов за раз, поэтому для этого нам нужна другая материнская плата, и это очень дорого.
Итак, Intel представила концепцию гиперпоточности, то есть преобразует единый процессор в два виртуальных процессора, т.е. у нас есть два ядра для нашей задачи. Теперь процессор одинарный, но он только притворяется (маскируется), что он имеет двойной процессор и выполняет несколько задач. Но наличие реальных многоядерных процессоров будет лучше, чем для людей, которые развивают создание многоядерного процессора, то есть нескольких процессоров на одном ящике, то есть захвата нескольких процессоров на одном большом процессоре. То есть несколько ядер.
В первые дни... как и до 90-х годов... процессоры не смогли выполнить множество задач, которые эффективно... Потому что один процессор может обрабатывать только одну задачу... поэтому, когда мы привыкли скажем, что мой антивирус, microsoft word, vlc и т.д. программное обеспечение все работает одновременно... это на самом деле не так. Когда я сказал, что процессор может обрабатывать один процесс за раз... Я имел в виду это. Он фактически обрабатывал бы одну задачу... тогда она использовала для приостановки этой задачи... выполнить другую задачу... завершить ее, если она короткая или снова приостановит ее и добавит в очередь... затем следующий. Но эта "пауза", о которой я упоминал, была настолько маленькой (appx. 1ns), что вы не понимали, что задача приостановлена. Например. На vlc во время прослушивания музыки есть и другие приложения, работающие одновременно, но, как я сказал вам, одна программа за раз... поэтому vlc на самом деле останавливается между ними за ns, поэтому вы не используете его, но музыка фактически останавливается между ними.
Но это было о старых процессорах...
В настоящее время процессоры, т.е. 3-го поколения, имеют процессоры с несколькими процессорами. Теперь "ядра" можно сравнить с процессорами первого или второго поколения... встроенными в один чип, один процессор. Итак, теперь мы поняли, что такое ядра, т.е. Это мини-процессоры, которые в совокупности становятся процессором. И каждое ядро может обрабатывать один процесс за раз или несколько потоков, предназначенных для ОС. И они выполняют те же шаги, что и выше, о одном процессоре.
Eg. Процессор i7 6gen имеет 8 ядер... т.е. 8 мини-процессоров в 1 i7... т.е. его скорость в 8 раз превышает старые процессоры. И так можно выполнить многозадачность.
В одном процессоре могут быть сотни ядер Например. Intel i128.
Надеюсь, я это хорошо объяснил.
Изображение Intel полезно, как показал лучший ответ Tortuga. Вот подпись для него.
Процессор: один полупроводниковый чип, центральный процессор (центральный процессор), расположенный в одном гнезде, примерно в 1950-х - 2010-х годах. Со временем на процессорную плату было добавлено больше функций. До выпусков одночиповых процессоров 1950-х годов один процессор мог распространяться на несколько чипов. В середине 2010 года чипы с системой на кристалле сделали несколько более отрывочным, чтобы приравнять один процессор к одному чипу, хотя обычно это то, что люди называют процессором, например, "этот компьютер имеет процессор i7" или "эта компьютерная система" имеет четыре процессора ".
Core: один блок процессора, выполняющий одну команду за раз. (Вы увидите, что люди говорят одну инструкцию за такт, но некоторые процессоры используют несколько тактовых циклов для некоторых инструкций.)
Я не могу ответить с более подробными разъяснениями, чем уже было предоставлено, хотя, если вы хотите узнать больше о основной обработке, ознакомьтесь с этой статьей: https://mindmovementmachine.com/what-is-a-processing-unit/