- Многоядерный процессор
-
Многоя́дерный проце́ссор — центральный процессор, содержащий два и более вычислительных ядра на одном процессорном кристалле или в одном корпусе.
Содержание
Архитектура многоядерных систем
Многоядерные процессоры можно подразделить по наличию поддержки когерентности кеш-памяти между ядрами. Бывают процессоры с такой поддержкой и без неё.
Способ связи между ядрами:
- разделяемая шина
- сеть (Mesh) на каналах точка-точка
- сеть с коммутатором
- общая кеш-память
Кеш-память: Во всех существующих на сегодня многоядерных процессорах кеш-памятью 1-го уровня обладает каждое ядро в отдельности, а кеш-память 2-го уровня существует в нескольких вариантах:
- разделяемая — расположена на одном кристалле с ядрами и доступна каждому из них в полном объёме. Используется в процессорах семейств Intel Core.
- индивидуальная — отдельные кеши равного объёма, интегрированные в каждое из ядер. Обмен данными из кешей 2-го уровня между ядрами осуществляется через контроллер памяти — интегрированный (Athlon 64 X2, Turion X2, Phenom) или внешний (использовался в Pentium D, в дальнейшем Intel отказалась от такого подхода).
Производительность
В приложениях, оптимизированных под многопоточность, наблюдается прирост производительности на многоядерном процессоре. Однако, если приложение не оптимизировано, то оно не будет получать практически никакой выгоды от дополнительных ядер, а может даже выполняться медленнее, чем на процессоре с меньшим количеством ядер, но большей тактовой частотой. Это в основном приложения, разработанные до появления многоядерных процессоров, либо приложения, в принципе не использующие многопоточность.
Большинство операционных систем позволяют выполнять несколько приложений одновременно. При этом получается выигрыш в производительности даже если приложения однопоточные.
Наращивание количества ядер
На сегодня основными производителями процессоров — Intel и AMD дальнейшее увеличение числа ядер процессоров признано как одно из приоритетных направлений увеличения производительности.
В 2011 году освоено производство 8-ядерных процессоров для домашних компьютеров,[1] и 16-ядерных для серверных систем.[2]
Имеются экспериментальные разработки процессоров с большим количеством ядер (более 20). Некоторые из таких процессоров уже нашли применение в специфических устройствах.
История массовых многоядерных процессоров
Двухядерные процессоры различных архитектур существовали ранее, например IBM PowerPC-970MP (G5), но их использование было ограничено узким кругом специализированных применений.
В апреле 2005 года AMD выпустила 2-ядерный процессор Opteron архитектуры AMD64, предназначенный для серверов. В мае 2005 года Intel выпустила процессор Pentium D архитектуры x86-64, ставший первым 2-ядерным процессором, предназначенным для персональных компьютеров.
В марте 2010 года появились первые 12-ядерные серийные процессоры, которыми стали серверные процессоры Opteron 6100 компании AMD (архитектура x86/x86-64).[3]
В августе 2011 года компанией AMD были выпущены первые 16-ядерные серийные серверные процессоры Opteron серии 6200 (кодовое наименование Interlagos). Процессор Interlagos объединяет в одном корпусе два 8-ядерных (4-модульных) чипа и является полностью совместимым с существующей платформой AMD Opteron серии 6100 (Socket G34).[4]
Сводные данные по истории микропроцессоров и их параметров представлены в обновляющейся английской статье: Хронология микропроцессоров, 2010ые годы. Для получения числа ядер процессора надо умножить поля "Cores per die" и "Dies per module", для получения числа аппаратных потоков - умножить число ядер на число "threads per core". Например, для Xeon E7, Intel: "4, 6, 8, 10" ядер на 1 die на 1-2 аппаратных потоков = максимум 10 ядер и 20 аппаратных потоков, AMD FX "Bulldozer" Interlagos "4-8" на 2 на 1 = максимум 16 ядер и 16 потоков.
История экспериментальных многоядерных процессоров
27 сентября 2006 года Intel представила прототип 80-ядерного процессора.[5] Предполагается, что массовое производство подобных процессоров станет возможно не раньше перехода на 32-нанометровый техпроцесс.
20 августа 2007 года компания Tilera, анонсировала чип TILE64 (англ.) с 64 процессорными ядрами и встроенной высокопроизводительной сетью, посредством которой обмен данными между различными ядрами может происходить со скоростью до 32 Тбит/с.[6][7]
26 октября 2009 года Tilera анонсировала[8] 100-ядерный процессор широкого назначения серии TILE-Gx (англ.). Каждое процессорное ядро представляет собой отдельный процессор с кеш-памятью 1 и 2 уровней. Ядра, память и системная шина связаны посредством топологии mesh network. Процессоры производятся по 40-нм техпроцессу и работают на тактовой частоте 1,5 ГГц. Выпуск 100-ядерных процессоров назначен на начало 2011 года.
2 декабря 2009 года Intel представила одночиповый «облачный» Single-chip Cloud Computer (SCC) компьютер, представляющий собой 48-ядерный чип. «Облачность» процессора состоит в том, что все 48 ядер сообщаются между собой как сетевые узлы. SCC — часть проекта, целью которого является создание 100-ядерного процессора. Ожидается, что некоторые функции SCC появятся в серийных процессорах Intel в 2010 году.[9]
В июне 2011 года Intel раскрыла детали разрабатываемой архитектуры Many Integrated Core (MIC) — эта технология выросла из проекта Larrabee. Микропроцессоры на основе этой архитектуры получат более 50 микроядер архитектуры x86 и начнут производится в 2012 году по 22-нм техпроцессу. Эти микропроцессоры не могут быть использованы в качестве центрального процессора, но из нескольких чипов этой архитектуры будут строиться вычислительные ускорители в виде отдельной карты расширения и конкурировать на рынках GPGPU и высокопроизводительных вычислений с решениями типа Nvidia Tesla и AMD FireStream.[10] По опубликованному в 2012 году описанию архитектуры, возможны чипы с количеством ядер до 60.
В октябре 2011 года компания Adapteva представила 64-ядерные микропроцессоры Epiphany IV, которые показывают производительность до 70 гигафлопс, при этом потребляя менее 1 Вт электроэнергии. Микропроцессоры спроектированы с использованием RISC-архитектуры и начнут массово производится в начале 2012 года по 28-нм техпроцессу. Данные процессоры не могут быть использованы в качестве центрального процессора, но компания Adapteva предлагает использовать их в качестве сопроцессора для таких сложных задач, как распознавание лиц или жестов пользователя. Компания Adapteva утверждает, что в дальнейшем число ядер данного микропроцессора может быть доведено до 4096[11].
В январе 2012 года компания ZiiLabs (дочернее предприятие Creative Technology) анонсировала 100-ядерную систему на чипе ZMS-40. Эта система, объединяющая 4-ядерный процессор ARM Cortex-A9 1,5 ГГц (с мультимедийными блоками Neon) и массив из 96 более простых и менее универсальных вычислительных ядер StemCell. Ядра StemCell — это энергоэффективная архитектура SIMD, пиковая производительность при вычислениях с плавающей запятой (32 бит) — 50 гигафлопс, ядра которой работают скорее как GPU в других системах на чипе, и могут быть использованы для обработки видео, изображений и аудио, для ускорения 3D- и 2D-графики и других мультимедийных задач (поддерживается OpenGL ES 2.0 и OpenCL 1.1)[12].
Многоядерные контроллеры
Существует также тенденция внедрения многоядерных микроконтроллеров в мобильные устройства.
Например:
- seaForth-24 — новая разработка multi-core MISC архитектуры Chuck Moore 1 ГГц 24-ядерный асинхронный контроллер.
- Контроллер от Parallax [1] имеет восемь 32-разрядных процессоров (COG) в одном кристалле P8X32A.
- Kilocore PowerPC процессор с 1024 8-ми битными ядрами работающими на частоте 125 МГц. На данный момент существует 256-ядерный процессор.
См. также
Ссылки
- Двухъядерные процессоры Intel и AMD: теория, часть 1
- Двухъядерные процессоры Intel и AMD: теория, часть 2
- Сайт Научно-образовательного центра Параллельные Вычисления — Программирование для многоядерных процессоров. Гетерогенные вычисления и GPU computing.
- Многоядерные процессоры. Учебный курс. А. В. Калачев ISBN 978-5-9963-0349-6
Примечания
- ↑ Сайт 3DNews: «Официальный анонс процессоров AMD FX»
- ↑ Сайт 3DNews: «AMD начала массовые поставки серверных Bulldozer. Настольные откладываются?».
- ↑ «AMD дала зеленый свет 8- и 12-ядерным процессорам серии Opteron 6100» — overclockers.ua
- ↑ Сайт 3DNews: «Появились данные о серверных AMD Bulldozer: 3 ГГц максимум?».
- ↑ Intel продемонстрировала 80-ядерный суперпроцессор будущего. Lenta.ru (27 сентября 2006). Архивировано из первоисточника 2 марта 2012. Проверено 13 августа 2010.
- ↑ Статья на сайте 3dnews.ru: «Tilera Tile64 — чип с 64 процессорными ядрами»
- ↑ «Tilera Now Shipping the TILE64 Processor: the World’s Highest Performance Embedded Processor»
- ↑ Modnews
- ↑ Статья на сайте lenta.ru: «Intel продемонстрировала 48-ядерный процессор»
- ↑ Сайт 3DNews: «Intel MIC: 22-нм Knights Corner — в 2012 году, ExaScale — в 2018 году»
- ↑ Сайт 3DNews: «64-ядерный чип от Adapteva может быть использован в смартфонах и планшетах»
- ↑ Сайт 3DNews: «ZiiLabs представила „4+96-ядерный“ процессор ZMS-40»
Для улучшения этой статьи желательно?: - Найти и оформить в виде сносок ссылки на авторитетные источники, подтверждающие написанное.
- Добавить иллюстрации.
Технологии цифровых процессоров Архитектура CISC · EDGE · EPIC · MISC · URISC · RISC · VLIW · ZISC · Фон Неймана · Гарвардская
8 бит · 16 бит · 32 бит · 64 бит · 128 битПараллелизм Pipeline Конвейер · In-Order & Out-of-Order execution · Переименование регистров · Speculative execution Уровни Бит · Инструкций · Суперскалярность · Данных · Задач Потоки Многопоточность · Simultaneous multithreading · Hyperthreading · Superthreading · Аппаратная виртуализация Классификация Флинна SISD · SIMD · MISD · MIMD Реализации DSP · GPU · SoC · PPU · Векторный процессор · Математический сопроцессор • Микропроцессор · Микроконтроллер Компоненты Barrel shifter · FPU · BSB · MMU · TLB · Регистровый файл · control unit · АЛУ • Демультиплексор · Мультиплексор · Микрокод · Тактовая частота • Корпус • Регистры • Кэш (Кэш процессора) Управление питанием APM · ACPI · Clock gating · Динамическое изменение частоты • Динамическое изменение напряжения Категории:- Технологии процессоров
- Параллельные вычислительные системы
Wikimedia Foundation. 2010.