УВиВУПК 6лек. Тема Процессор пк. Многопоточные и многоядерные микропроцессоры
Скачать 164.45 Kb.
|
Тема 6. Процессор ПК. Многопоточные и многоядерные микропроцессоры. Зачем процессору несколько ядер? Что такое центральный процессор? Процессор (центральный процессор) является ядром каждого смартфона, планшета, компьютера и сервера. Это критически важный компонент, который определяет, как ваш компьютер будет работать, и определяет, насколько хорошо он может выполнять свою работу. Процессор принимает основные инструкции, которые вы вводите на своем компьютере, и распределяет эти задания по другим чипам в вашей системе. Перераспределяя сложные задачи на микросхемы, лучше всего оборудованные для их обработки, он позволяет вашему компьютеру работать на пиковом уровне. Процессор иногда называют мозгом компьютера. Он расположен на материнской плате (также называемой основной платой) и является отдельным компонентом от компонента памяти. Он действует на компонент памяти, который хранит все данные и информацию в вашей системе. Компонент памяти и процессор отделены от вашей видеокарты. Единственная функция видеокарты состоит в том, чтобы получать данные и преобразовывать их в изображения, которые вы видите на мониторе. С развитием технологий из года в год, мы видим, что процессоры становятся все меньше и меньше. И они работают быстрее, чем когда-либо прежде. Вы поймете что значит быстрее, если узнаете кое-что о законе Мура, который получил свое название от соучредителя Intel Гордона Мура. Мур считает, что число транзисторов в интегральной схеме удваивается каждые два года. Процессор – это вычислительный центр любого компьютера, планшета, смартфона и даже игровой консоли. Именно процессор принимает команды пользователя, вводимые в различных приложениях и программах, обрабатывает их и распределяет задачи между другими узлами системы – видеокартой , оперативной памятью , твердотельным диском . Вот поэтому процессор – это мозговой центр каждого компьютера, отвечающий за его вычислительные способности и скорость работы. Что делает процессор? Как мы уже говорили ранее, процессор - это мозг вашего компьютера. Он берет данные из определенной программы или приложения, выполняет серию вычислений и выполняет команду. Он выполняет цикл из трех частей, иначе называемый повторяющимся циклом извлечения, декодирования и выполнения. На первом этапе процессор выбирает инструкции из памяти вашей системы. Как только он получает инструкции из памяти, он переходит ко второму этапу. Именно на этом втором этапе он декодирует эти инструкции. Как только машина расшифровывает инструкции, она переходит к третьему этапу выполнения. Декодированная информация проходит через ЦП, чтобы достичь блоков, которые фактически должны выполнять требуемую функцию. В процессе декодирования он выполняет математические уравнения для отправки требуемого сигнала в вашу систему. Этот цикл повторяется снова и снова для каждого действия и команды, которые вы выполняете. Процессор является важной частью любой системы, и он тесно работает с потоками. Различные процессоры имеют различное количество потоков, чтобы ограничить или увеличить производительность вашего компьютера. Первые процессоры были едиными устройствами, которые принимали команды и выполняли их в строгой очередности. Одно ядро позволяло выбирать процессор при покупке только по показателям частоты. А недостаток производительности на первых порах компенсировали созданием двух- и многопроцессорных конфигураций. В таких сборках команды пользователя на ввод обрабатывал первый процессор, а остальные операции по возможности равномерно распределялись между остальными. Для сборки таких систем использовались двухпроцессорные платы или конфигурации на несколько сокетов. Следующим шагом производители создали многоядерную архитектуру, позволяющую на площади, казалось бы, небольшого микрочипа размещать несколько вычислительных центров, которые по сути являлись самостоятельными процессорами. Так в продаже появились двух-, четырех- и восьмиядерные устройства, которые обрабатывали сразу несколько потоков информации. Позже корпорация Intel в линейке процессоров Pentium внедрила техническую возможность выполнения одним ядром двух команд за такт, что стало началом новой эпохи в компьютерных технологиях – гиперпоточности процессоров. А сейчас специалисты компании активно работают над новой технологией реализации четырех потоков на одном ядре, и уже в ближайшее время подобные процессоры будут представлены публике. Чем отличаются ядра и потокиЯдро – это самостоятельный вычислительный блок в архитектуре процессора, способный выполнять линейную последовательность задач за определенный период времени. Если нагрузить одно ядро несколькими последовательностями задач, то оно будет попеременно переключаться между ними, обрабатывая по одной задаче из каждого потока. В масштабах системы это приводит к замедлению работы программ и сервисов. Поток – это программно выделенная область в физическом ядре процессора. Такая виртуальная реализация позволяет разделять ресурсы ядра и работать параллельно с двумя разными последовательностями команд. Таким образом операционная система воспринимает поток, как отдельный вычислительный центр, следовательно, ресурс ядра используется более рационально, и скорость вычислений увеличивается. Что же такое многопоточность? Поток - это небольшая последовательность запрограммированных инструкций. Потоки относятся к наивысшему уровню кода, который может выполнять ваш процессор. Они обычно управляются планировщиком, который является стандартной частью любой операционной системы. Чтобы создать поток, сначала должен быть запущен процесс. Затем, процесс создает поток, который выполняется, это может длится короткий или длительный период времени, в зависимости от процесса. Независимо от того, сколько времени будет выполнятся та или иная задача, создается впечатление, что ваш компьютер делает много вещей одновременно. Каждый процесс имеет по крайней мере один поток, но нет максимального количества потоков, которое процесс может использовать. Для специализированных задач, чем больше у вас потоков, тем выше производительность вашего компьютера. С несколькими потоками один процесс может одновременно обрабатывать различные задачи. Вы также услышите, как люди используют такие термины, как «многопоточность» и «гиперпоточность». Технология Hyper-Threading позволяет одному ядру ЦП выступать в качестве двух ядер, ускоряя выполнение конкретной программы или приложения. Даже с одним ядром он может имитировать производительность, как если бы у вас было два ядра. Чем больше в процессоре ядер, тем больше потоков. Чем больше у вас потоков, тем выше будет производительность вашей системы. Что такое Hyper-Threading Гиперпоточность дебютировала в 2002 году и была попыткой Intel донести до пользователей параллельные вычисления. Это немного уловка, так как ОС распознает потоки как отдельные ядра процессора.Когда вы используете Intel Chip, ваш диспетчер задач покажет вам удвоенное количество ядер и обработает их как таковые. Это позволяет им обмениваться информацией и ускорять процесс декодирования, разделяя ресурсы между ядрами. Intel утверждает, что эта технология может повысить производительность до 30%. Стоит ли ожидать удвоения производительности?Виртуальное разделение вычислительной мощности процессора на потоки называется гиперпоточностью. На практике это не физическое увеличение количества ядер, следовательно, и вычислительный потенциал процессора остается постоянным. Гиперпоточность – это инструмент, позволяющий процессору более оперативно выполнять команды операционной системы и распределять вычислительный ресурс. Таким образом, удвоенное количество потоков по отношению к ядрам способно повысить эффективность процессора за счет одновременного выполнения нескольких задач каждым ядром. Но прирост, даже по заверениям лидера рынка в производстве процессоров Intel будет находиться в пределах 30%. А вот об увеличении энергопотребления и чрезмерном нагреве волноваться не стоит. Так как виртуальное разделение выполнено на производстве, то компанией просчитаны все рабочие параметры, такие как мощность и TDP, указанные в спецификации. Как работают процессорные ядра и потоки? Ядра процессора являются аппаратными. Они делают всю тяжелую работу. Потоки используются, чтобы помочь процессору более эффективно выполнять множество паралельных задач одновременно. Если у ЦП нет гиперпоточности или многопоточности, задачи будут планироваться менее эффективно, что заставит его больше работать, чтобы получить доступ к информации, которая важна для запуска определенных приложений. Одно ядро может работать над одной задачей за раз. Множество ядер помогут вам запускать различные приложения более плавно. Например, если вы планируете запускать видеоигру, для ее запуска потребуется несколько ядер, в то время как другие ядра могут запускать фоновые приложения, такие как Skype, Spotify, Chrome или что-то еще. Многопоточность только делает обработку более эффективной. Это, конечно, приведет к повышению производительности, но также заставит процессор потреблять больше энергии, но так как, многопоточность уже включена в микросхемах, так что это не повод для беспокойства. Хотя процессор потребляет больше энергии, это редко вызывает повышение температуры. Короче говоря, когда вы рассматриваете возможность обновления, большее количество потоков означает большую производительность или лучшую многозадачность, в зависимости от того, какие приложения вы используете. Если вы используете несколько программ одновременно, это определенно приведет к повышению производительности. Многоядерность Первоначально процессоры имели одно ядро. Это означало, что на физическом процессоре был один центральный процессор. Для повышения производительности, процессоры заменяют на модели с большим количеством «ядер», или добавляют дополнительные центральные процессоры, если такая возможность предусмотренна производителем. Двухъядерный процессор имеет два центральных процессора, поэтому он представляется операционной системе как два процессора. Например, процессор с двумя ядрами может запускать два разных процесса одновременно. Это ускоряет вашу систему, потому что ваш компьютер может делать несколько вещей одновременно. В отличие от многопоточности, здесь нет хитростей - двухъядерный ЦП буквально имеет два центральных процессора на чипе ЦП. Четырехъядерный процессор имеет четыре центральных процессора, восьмиъядерный процессор имеет восемь центральных процессоров и так далее. Это помогает значительно повысить производительность, сохраняя при этом небольшой размер физического ЦП, чтобы он умещался в одном разъеме. Должен быть только один разъем ЦП с одним модулем ЦП, а не четыре различных разъема ЦП с четырьмя различными ЦП, каждый из которых требует собственного питания, охлаждения и другого аппаратного обеспечения. Время задержки меньше, потому что ядра могут обмениваться данными быстрее, поскольку все они находятся на одном чипе. Диспетчер задач Windows показывает это наглядно. Здесь, например, вы можете видеть, что эта система имеет один фактический процессор (сокет) и четыре ядра. Многопоточность делает каждое ядро похожим на два ЦП для операционной системы, поэтому оно показывает 8 логических процессоров. Выводы В основном, больше ядер и больше потоков всегда будут означать лучшую производительность. Некоторые ориентированные на производительность программы, такие как редактирование видео, получат больше преимуществ от нескольких потоков. Если ваша рабочая нагрузка включает в себя интенсивные задачи, такие как: работа с нагруженными базами данных, аналитическик задачами, редактированием видео, то многопоточные процессоры являются обязательными для вас. И Intel, и AMD предоставляют множество многоядерных, многопоточных процессоров, как для рабочих станций, так и для серверов малых и больших предприятий. Что выбирать: ядра или потоки?Поскольку ядра – это физические «мозговые центры», занимающиеся вычислениями, то за общую производительность центрального процессора отвечают именно они. Поэтому количеством ядер, ну и еще частотой процессора определяется его производительность. Но и количество потоков также заслуживает внимания. Разберем на примере: Двухъядерный процессор с двумя потокам нагружается операционной системой четырьмя параллельными последовательностями команд, например, от открытых игр и программ. Команды так и останутся в четырех «очередях», и ядра будут попеременно производить вычисления из каждой. При этом производительность ядра зачастую избыточна для обработки одной команды. Поэтому часть вычислительного потенциала ядра, а значит и процессора останется в резерве. Если же взять аналогичный процессор с двумя ядрами, но уже на четыре потока, то все четыре очереди будут задействованы одновременно, по максимуму загружая ядра. Следовательно, задачи будут решены быстрее, а простоя вычислительных мощностей удастся избежать. На практике это дает нам возможность одновременно запускать несколько программ: работать с документами, слушать музыку, общаться в мессенджерах и выполнять поиск в браузере. При этом программы будут работать эффективно, быстро, без торможений и зависаний. В производственных масштабах для комплектации рабочих станций или серверов также следует отдать предпочтение большему количеству потоков при равных числах ядер. За исключением особых случаев, таких как работа с 1С, когда решающую роль играет тактовая частота, и ряда других приложений, активно использующих TCP/IP стек. В этих случаях распараллеливание вызывает существенную задержку при обработке пакетов . Таким образом, чем больше ядер будет в процессоре, тем выше его производительность и скорость выполнения различных задач. А удвоенное количество потоков позволяет повысить эффективность процессора и задействовать его технический потенциал на полную. https://andpro.ru/blog/cpu/yadra-ili-potoki-vyyasnyaem-chto-vazhnee-dlya-protsessora/ https://server-shop.ua/what-is-more-important-for-the-processor-the-number-of-cores-or-threads.html |