Чем был вызван переход к многоядерным процессорам
Многоя́дерный проце́ссор — центральный процессор, содержащий два и более вычислительных ядра на одном процессорном кристалле или в одном корпусе.
Наращивание количества ядер
На сегодня основными производителями процессоров — Intel и AMD дальнейшее увеличение числа ядер процессоров признано как одно из приоритетных направлений увеличения производительности.
Имеются экспериментальные разработки процессоров с большим количеством ядер (более 20). Некоторые из таких процессоров уже нашли применение в специфических устройствах.
Эра одноядерных
Быстрый взгляд на пред-многоядерную эру позволит нам оценить проделанный путь. Одноядерный процессор, как следует из названия, это CPU с одним физическим ядром. Самым ранним коммерчески доступным процессором был Intel 4004, выпуск которого в 1971 году ознаменовал собой технический прорыв.
Этот 4-битный процессор с частотой 750 кГц произвел революцию не только в технологии производства микропроцессоров, но и во всей отрасли интегральных микросхем. Примерно в то же время появляются другие заметные процессоры, такие как TMS-0100 от Texas Instruments, сформировавшие конкуренцию на рынках калькуляторов и контрольных систем. С тех пор улучшение производительности процессора достигалось в основном за счёт увеличения тактовой частоты и пропускной способности шин. Пример тому – выпущенный в 1979 году Intel 8086, который был одноядерным процессором с максимальной тактовой частотой 10 МГц, 16-битной шиной данных и 20-битной адресной шиной.
Переход от Intel 4004 до 8086 представлял собой 10-кратное увеличение количества транзисторов, и эта мера осталась неизменной при переходе от поколения к поколению на фоне расширения спецификаций. В дополнение к частоте и пропускной способности шин, появились другие инновации, способствующие улучшению производительности процессоров, такие как блоки обработки значений с плавающей запятой, множители, а также улучшения и расширения базовой архитектуры набора команд (ISA).
Итогом продолжавшихся исследований стал Intel I386 (80386) – первый процессор с возможностью конвейеризации, позволяющий обрабатывать несколько инструкций параллельно, что достигалось путем разделения потока выполняемых инструкций на отдельные этапы, и, следовательно, когда одна инструкция выполнялась на одном этапе, другие инструкции могли выполняться на других этапах.
Также была представлена суперскалярная архитектура процессора, которую можно считать предшественником многоядерной технологии. Суть её в том, что некоторые функциональные узлы вычислительного ядра дублированы, что позволяет процессору выполнять несколько инструкций одновременно при условии отсутствия у этих инструкций зависимостей по данным. Первыми промышленными суперскалярными процессорами считаются Intel I960CA, AMD серии 29000 и Motorola MC88100.
Одним из важнейших факторов, повлиявших на быстрое развитие процессоров от одного поколения к другому, является прогресс в технологии производства полупроводников, направленный на миниатюризацию транзисторов и других полупроводниковых приборов. Благодаря этому удалось значительно снизить энергопотребление транзисторов и увеличить их количество в процессоре, при этом предоставляя больше места на кристалле для кэшей и других узлов, также повышающих общую производительность.
В 1999 году AMD выпустил ставший классикой и любимчиком процессор Athlon, за несколько месяцев увеличивший не только свою тактовую частоту до умопомрачительных 1 ГГц, но и все другие характеристики, имеющие отношение к обсуждаемым нами технологиям. Чип показал замечательную производительность. Более того, разработчики продолжали оптимизировать и совершенствовать его, добавляя новые функции, такие как многопоточность и прогнозирование ветвлений (branch prediction).
Апогеем считается топовый для своего одноядерного времени десктопный 2-потоковый процессор Intel Pentium 4, достигший потолка тактовых частот в 3,8 ГГц. Оглядываясь назад на ту эпоху, большинство из нас думали, что тактовые частоты продолжат столь же планомерно расти и уже не за горами процессоры с частотой 10 и более ГГц. Но в оправдание нашему невежеству можно сказать, что большинство пользователей в то время не были столь же грамотными в этом плане, как сегодня.
Увеличение тактовых частот и миниатюризация транзисторов привело к повышению производительности, но в то же время и к повышению потребляемой мощности пропорционально частоте. А значит, к увеличению тока утечки. Это не проблема, когда у вас в процессоре 25 тысяч транзисторов. Но когда дело доходит до миллиардов транзисторов на кристалле, проблема встаёт во весь рост.
Дальнейшее увеличение числа транзисторов и, соответственно, выделяемого ими тепла в результате неизбежной утечки тока, в конце концов стало невозможным из-за риска температурного повреждения чипа, эффективно отводить тепло от которого становилось всё труднее. Чтобы преодолеть это ограничение, разработчикам придётся кардинально переосмыслить устройство процессора, если они хотят и впредь двигаться вперёд, добиваясь какого-либо прогресса в улучшении производительности.
Содержание
Будущее десктопных процессоров
Как и одноядерная архитектура, современные многоядерники тоже когда-то займут своё место на страницах истории. А в этом промежутке между прошлым и будущим мы видим, что Intel и AMD, похоже, принимают разные подходы к достижению баланса между энергоэффективностью и производительностью.
Новейшие десктопные процессоры от Intel представляют уникальную архитектуру Alder Lake, в которой сочетаются высокопроизводительные и высокоэффективные ядра, и кажется, пришедшую напрямую из рынка мобильных процессоров. Самый мощный Intel Core 12-го поколения сегодня имеет 8 двухпотоковых высокопроизводительных P-ядер плюс 8 энергоэффективных E-ядер, то есть в общей сложности 24 ядра.
AMD, с другой стороны, кажется, склоняется к увеличению количества полноценных ядер в процессоре, и по слухам, готовит 32-ядерный десктопный процессор на архитектуре нового поколения Zen 4, что вполне правдоподобно, учитывая как AMD умеет буквально строить свои процессоры, группируя несколько блоков ядер на одном кристалле.
Но некоторые слухи AMD уже официально подтвердила, в частности насчет того, что она называет 3D-V кэш – обширный кэш, размещаемый поверх ядра, что потенциально снижает латентность и значительно увеличивает производительность. Такая реализация представляет собой новую форму компоновки чипов и является перспективной областью дальнейших исследований.
А вот в производстве транзисторов особых перспектив нет, поскольку, как мы знаем, миниатюризация техпроцесса приближается к своему пределу. В настоящее время 5 нм является самым прогрессивным техпроцессом, но TSMC и Samsung уже объявили об испытаниях на 3 нм, и такими темпами мы очень скоро увидим и 1 нм. А что будет дальше – посмотрим.
На данный момент ведутся обширные исследования перспективных альтернатив на замену кремнию, в частности углеродных нанотрубок, которые меньше кремния, а значит могут ещё на какое-то время продлить тренд миниатюризации полупроводников. Другая область исследований занимается вопросом компоновки транзисторов на кристалле, как в примере V-cache у AMD или Foveros-3D у Intel, что тоже открывает неплохие перспективы по совершенствованию интегральных схем и повышению производительности.
Ещё одной многообещающей областью исследований, способной совершить революцию в вычислениях, это фотонные процессоры. В отличие от традиционных полупроводников, на которых основана современная электроника, фотонные процессоры используют свет (фотоны) вместо электронов, и учитывая свойства света со своим значительно более низким сопротивлением по сравнению с электронами, которые должны проходить по металлическим проводникам, это должно резко увеличить скорость процессора. В реальности, полнооптические компьютеры мы можем увидеть ещё нескоро, но вот гибридные системы, сочетающие в себе традиционные электронные материнские платы с периферией и фотонные процессоры, могут появиться уже в ближайшие несколько лет, удовлетворив наши чаяния в повышении производительности.
Lightmatter, LightElligence и Optalysys – вот лишь некоторые компании, которые работают над оптическими вычислительными системами в той или иной форме, и, безусловно, есть ещё много других компаний, занятых тем, чтобы принести в наш мир эту технологию.
Еще одна область научных изысканий – у всех на слуху, но развивает совершенно иную парадигму вычислений. Это квантовые компьютеры, которые всё ещё в зачаточном состоянии, но объём исследований и достижений в этой области уже ошеломляет.
Первые 1-кубитные процессоры появились не так уж давно, а уже в 2019 году Google представил 54-кубитный процессор, заявив о достижении квантового превосходства. За причудливостью этого заявления кроется способность их квантового детища сделать что-то, что не под силу сделать традиционному процессору за реалистичное время.
Не следует оставлять без внимания команду китайских инженеров, в 2021 году представивших свой 66-кубитный суперкомпьютер, и эта гонка уже вовсю набирает обороты с такими компаниями как IBM, анонсировавшей свой 127-кубитный кванто-вычислительный чип и Microsoft, объявившей о начале разработки своих собственных квантовых компьютеров.
Пусть мы ещё нескоро сможем поиграть на каком-то из этих компьютеров будущего, но наверняка какие-то из тех технологий мы в той или иной форме увидим на потребительском рынке. Внедрение и адаптация прорывных технологий, как правило, стимулирует снижение цен и рост инвестиций в дальнейшее технологическое совершенствование.
Таков был наш краткий рассказ об истории многоядерного процессора и предшествующих ему разработках, а также о тех зарождающихся технологиях, которые могут прийти на смену многоядерному процессору, каким мы знаем его сегодня.
…в процессе развития количество ядер будет становиться всё больше и больше.
Разработчики Intel
• 1999 г. – анонсирован первый в мире 2-ядерный CPU – серверный RISC-процессор IBM Power 4.
Стартовала эпоха многоядерных процессоров!
• 2001 г. – начались продажи 2-ядерных процессоров IBM Power 4.
• 2002 г. – о перспективах использования двух ядер в своих процессорах архитектуры K8 заявила компания AMD. Практически одновременно с аналогичным заявлением выступила Intel.
• Декабрь 2002 г. – вышли первые десктопные Intel Pentium 4, поддерживающие «виртуальную» 2-ядерность – технологию Hyper-Threading.
• 2004 г. – IBM выпустила второе поколение своих 2-ядерных процессоров – IBM Power 5. Каждое из ядер Power 5 поддерживает одновременное выполнение двух программных потоков (то есть снабжено аналогом Hyper-Threading).
• 18 апреля 2005 г. – Intel выпустила первый в мире настольный 2-ядерный процессор Pentium Extreme Edition 840 (кодовое название – Smithfield). Выполнен с использованием 90-нм технологии.
• 21 апреля 2005 г. – AMD представила линейку 2-ядерных процессоров Athlon 64 X2 (кодовое название – Toledo) с тактовой частотой от 2,0 до 2,4 ГГц. Выполнены с использованием 90-нм технологии.
• 1 августа 2005 г. – AMD представила линейку 2-ядерных процессоров Athlon 64 X2 (кодовое название – Manchester) с тактовой частотой от 2,0 до 2,4 ГГц. Выполнены с использованием 90-нм технологии.
• В течение второго полугодия 2005 г. Intel выпускает:
– линейку 2-ядерных процессоров Pentium D 8** (кодовое название – Smithfield) с тактовой частотой от 2,8 до 3,2 ГГц. Выполнены с использованием 90-нм технологии. 2-ядерные процессоры Pentium D – это два независимых ядра, объединенных на одной кремниевой пластине. Ядра процессоров базируются на архитектуре NetBurst процессоров Pentium 4;
– линейку 2-ядерных процессоров Pentium D 9** (кодовое название – Presler) с тактовой частотой от 2,8 до 3,4 ГГц. Выполнены с использованием 65-нм технологии (следует отметить, что инженеры Intel воспользовались преимуществом 65-нм технологического процесса, который позволяет либо уменьшить площадь кристалла, либо увеличить количество транзисторов).
• 23 мая 2006 г. – AMD представила линейку 2-ядерных процессоров Athlon 64 X2 (кодовое название – Windsor) с тактовой частотой от 2,0 до 3,2 ГГц. Выполнены с использованием 90-нм технологии.
• 27 июля 2006 г. – компания Intel представила линейку 2-ядерных процессоров Intel Core 2 Duo (кодовое название – Conroe) с тактовой частотой 1,8 – 3,0 ГГц. Выполнены с использованием 65-нм технологического процесса.
• 27 сентября 2006 г. – Intel продемонстрировала прототип 80-ядерного процессора. Предполагается, что массовое производство подобных процессоров станет возможно не раньше перехода на 32-нанометровый техпроцесс (предположительно, в 2010 г.).
• Ноябрь 2006 г. – Intel выпустила линейку 4-ядерных процессоров Intel Core 2 Quad Q6*** (кодовое название – Kentsfield) с тактовой частотой 2,4 – 2,6 ГГц. Выполнены с использованием 65-нм технологии. Фактически представляют собой сборку из двух кристаллов Conroe в одном корпусе.
• 5 декабря 2006 г. – AMD представила линейку 2-ядерных процессоров Athlon 64 X2 (кодовое название – Brisbane) с тактовой частотой от 1,9 до 2,8 ГГц. Выполнены с использованием 65-нм технологии.
• 10 сентября 2007 г. – AMD выпустила нативные (в виде одного кристалла) 4-ядерные процессоры для серверов AMD Quad-Core Opteron (кодовое название – Barcelona). Выполнены с использованием 65-нм технологии.
• 19 ноября 2007 г. – AMD выпустила 4-ядерный процессор для домашних компьютеров AMD Quad-Core Phenom. Выполнен с использованием 65-нм технологии.
• Ноябрь 2007 г. – компания Intel представила линейку 2-ядерных процессоров Penryn с тактовой частотой от 2,1 до 3,3 ГГц. Выполнены с использованием 45-нм технологии.
• 6 января 2008 г. – компания Intel выпустила (под марками Core 2 Duo и Core 2 Extreme) первые партии 2-ядерных процессоров Penryn, выполненных с использованием 45-нм технологии.
• Февраль 2008 г. – всемирно известный производитель коммуникационного оборудования, компания Cisco Systems, разработала QuantumFlow – 40- ядерный процессор, предназначенный для установки в сетевое оборудование. Процессор, на разработку которого ушло более 5 лет, способен выполнять до 160 параллельных вычислений. Чип будет использоваться в новых сетевых устройствах.
• Март 2008 г. – одноядерные процессоры семейства Pentium 4 (661, 641 и 631) и 2-ядерные семейства Pentium D (945, 935, 925 и 915) сняты с производства.
• Март 2008 г. – компания AMD выпустила 3-ядерные процессоры Phenom X3 8400, 8600, 8450, 8650 и 8750 с тактовой частотой от 2,1 до 2,4 ГГц. Выполнены по 65-нм технологии. Фактически эти процессоры представляют собой 4-ядерные Phenom с одним отключенным ядром. Анонсированы эти процессоры были в сентябре 2007 г. По словам разработчика, подобные чипы рассчитаны на тех, «кому двух ядер мало, но за четыре он платить не готов».
Основное достоинство 3-ядерных процессоров заключается в том, что они имеют более низкую по сравнению с 4-ядерными чипами стоимость, но работают быстрее 2-ядерных, таким образом, заполняя ассортиментное пространство между теми и другими. Главный конкурент AMD – корпорация Intel – такие процессоры не выпускает. Впервые о намерении приступить к производству подобных чипов AMD объявила в 2007 г.
• Март 2008 г. – компания AMD на выставке CeBIT 2008 в Ганновере представила свои первые процессоры, изготовленные на базе 45-нм технологического процесса. 4-ядерные чипы под кодовым названием Shanghai для серверов и Deneb для настольных систем были изготовлены на фабрике Fab 36 в Дрездене, Германия. Для их производства использовались 300-мм подложки. Техпроцесс с топологическим уровнем 45 нм был разработан компанией AMD совместно с ее партнером, корпорацией IBM. Новые процессоры Shanghai и Deneb, как и Phenom X4, являются «по-настоящему» 4-ядерными, так как все четыре ядра размещены на одной кремниевой подложке.
• Апрель 2008 г. – компания AMD выпустила 4-ядерные процессоры Phenom X4 – 9550, 9650, 9750 и 9850 – с тактовой частотой 2,2–2,5 ГГц. Выполнены по 65-нм технологии.
• Сентябрь 2008 г. – компания Intel выпустила линейку 4-ядерных процессоров Intel Core 2 Quad Q8*** (кодовое название – Yorkfield) с тактовой частотой 2,3 – 2,5 ГГц. Выполнены с использованием 45-нм технологии.
• Сентябрь 2008 г. – компания Intel выпустила линейку 4-ядерных процессоров Intel Core 2 Quad Q9*** (кодовое название – Yorkfield) с тактовой частотой 2,5 – 3,0 ГГц. Выполнены с использованием 45-нм технологии.
• 15 сентября 2008 г. – на конференции VMworld, организованной компанией VMware, корпорация Intel официально сообщила о выходе первого в отрасли массового 6-ядерного серверного процессора Xeon 7400 (кодовое название чипов – Dunnington). Фактически представляет собой три 2-ядерных кристалла, объединенных в одном корпусе. Создан по 45-нм технологии, работает на частоте 2,66 ГГц. Может работать с несколькими операционными системами одновременно. Имеет аппаратную поддержку технологии виртуализации (Intel Virtualization Technology).
• Октябрь 2008 г. – компания Intel разработала 80-ядерный процессор. Изготовлен он по 65-нм технологии, что позволило уменьшить его размеры, но, тем не менее, он остается еще слишком большим для коммерческого использования. Скорее всего, в ближайшие 7 лет процессор будет находиться в стадии доработки. На данный момент существующие технологии не позволяют снизить его энергопотребление и размеры. По мнению специалистов, массовое производство станет возможно только после 2012 г., когда Intel освоит 10-нм техпроцесс. На данный момент известно, что компания планирует введение 32-нм технологии производства процессоров в конце 2009 г., а 22-нм – в 2011 г.
Сейчас процессор не способен даже запустить операционную систему, но это не смущает разработчиков. Происходит масштабная «обкатка» новых функций, которые будут применяться в будущем в процессорах, одной из которых станет smart-функция по отключению неиспользуемых ядер, что положительно скажется на потреблении электроэнергии и тепловыделении.
• 17 ноября 2008 г. – Intel представила линейку 4-ядерных процессоров Intel Core i7, в основу которых положена микроархитектура нового поколения Nehalem. Процессоры работают на тактовой частоте 2,6 – 3,2 ГГц. Выполнены по 45-нм техпроцессу. Их главной особенностью является то, что контроллер памяти стал составной частью процессора. Это позволило увеличить скорость работы чипа с модулями оперативной памяти и сделало ненужной фронтальную системную шину FSB.
• Декабрь 2008 г. – начались поставки 4-ядерного процессора AMD Phenom II 940 (кодовое название – Deneb). Работает на частоте 3 ГГц, выпускается по техпроцессу 45-нм.
• Февраль 2009 г. – компания AMD продемонстрировала первый 6-ядерный серверный процессор. Выполнен с использованием 45-нм технологии. Кодовое название процессора – Istanbul, он придет на смену серверным процессорам Opteron с кодовым названием Shanghai, которые имеют только 4 ядра. Массовый выпуск таких чипов планируется начать во II половине 2009 г.
• Февраль 2009 г. – компания AMD объявила о начале поставок новых моделей:
– 3-ядерный Phenom II X3 (кодовое название чипа – Toliman) с тактовой частотой 2,8 ГГц. Выполнен по 45-нм технологии;
– 4-ядерный Phenom II X4 810 (кодовое название чипа – Dragon) с тактовой частотой 2,6 ГГц. Выполнен по 45-нм технологии.
• Апрель 2009 г. – компания Intel начала поставки 32-нм центральных процессоров Westmere производителям ПК, как мобильных систем, так и десктопов. Пока речь не идет о готовых коммерческих решениях, а лишь о первых тестовых экземплярах, основное предназначение устройств – их тестирование для выявления некоторых особенностей работы, чтобы производители смогли отладить конструкцию своих систем, и выпустить в продажу полностью совместимые с новым поколением процессоров компьютеры.
По своей сути, процессоры Westmere представляют собой изготовленную по 32-нм техпроцессу архитектуру Nehalem. Семейство включает в себя две категории микрочипов: решения для настольных компьютеров (кодовое обозначение – Clarkdale), и устройства для мобильных систем (кодовое обозначение – Arrandale).
«Мобильные» процессоры Arrandale включают не только само процессорное ядро, но и интегрированную графику. Согласно заверениям разработчиков, такая архитектура позволяет существенно снизить энергопотребление связки процессор–системная логика с интегрированной графикой. Помимо этого, за счет перехода на более прецизионный технологический процесс, снизится стоимость изготовления самих микрочипов, а за счет интеграции большего количества элементов на одном «кристалле» снижается и стоимость готовых мобильных компьютеров.
Поставки серийных экземпляров процессоров Westmere должны стартовать к концу 2009 г.
• Апрель 2009 г. – компания AMD выпустила две новые модели 4-ядерных центральных процессоров для ПК – Phenom II X4 955 Black Edition и Phenom II X4 945. Выполнены по 45-нм технологии.
• 14 мая 2009 г. – компания Fujitsu объявила о создании самого производительного в мире процессора, способного выполнять до 128 млрд. операций с плавающей запятой в секунду. Процессор SPARC64 VIIIfx (кодовое название Venus) работает примерно в 2,5 раза быстрее, чем самый мощный чип крупнейшего в мире поставщика микросхем корпорации Intel.
Увеличение скорости работы стало возможным за счет более плотной интеграции схем процессора и перехода на 45-нм технологию. Ученые смогли расположить на кремниевой пластинке площадью 2 см 2 8 вычислительных ядер, вместо 4-х в предыдущих разработках. Снижение уровня топологии также привело к сокращению потребления электроэнергии. В Fujitsu заявляют, что их чип потребляет в 3 раза меньше энергии, чем современные процессоры Intel. Помимо 8 ядер, чип включает в себя контроллер оперативной памяти.
Процессор SPARC64 VIIIfx планируется использовать в новом суперкомпьютере, который будет построен в институте естественных наук RIKEN в Японии. В него войдут 10 тыс. таких чипов. Суперкомпьютер планируется использовать для прогнозирования землетрясений, исследований медицинских препаратов, ракетных двигателей и прочих научных работ. Запустить компьютер планируется до весны 2010 г.
• Май 2009 г. – компания AMD представила разогнанную версию графического процессора ATI Radeon HD 4890 с тактовой частотой ядра, увеличенной с 850 МГц до 1 ГГц. Это первый графический процессор, работающий на частоте 1 ГГц. Вычислительная мощность чипа, благодаря увеличению частоты, выросла с 1,36 до 1,6 терафлоп (следует заметить, что видеокарты на базе разогнанной версии Radeon HD 4890 не нуждаются в жидкостном охлаждении – достаточно вентилятора).
Процессор содержит 800 вычислительных ядер, поддерживает видеопамять GDDR5, DirectX 10.1 , ATI CrossFireX и все другие технологии, присущие современным моделям видеокарт. Чип изготовлен на базе 55-нм технологии.
• 27 мая 2009 г. – корпорация Intel официально представила новый процессор Xeon под кодовым названием Nehalem-EX. Процессор будет содержать до 8 вычислительных ядер, поддерживая обработку до 16 потоков одновременно. Объем кэш-памяти составит 24МБ.
Nehalem-EX способен обеспечить в 9 раз более высокую скорость работы оперативной памяти по сравнению с Intel Xeon 7400 предыдущего поколения.
Новый чип подходит для объединения серверных ресурсов, виртуализации, запуска приложений с интенсивной обработкой данных и для проведения научных исследований. Его массовое производство планируется начать во второй половине 2009 г. Чип будет изготовлен на базе 45-нм технологии с применением формулы транзисторов hi-k. Число транзисторов – 2,3 млрд. Первые системы на базе Nehalem-EX ожидаются в начале 2010 г.
• 1 июня 2009 г. – компания AMD объявила о начале поставок 6-ядерных серверных процессоров Opteron (кодовое название Istanbul)для систем с двумя, четырьмя и восемью процессорными гнездами. По данным AMD, 6-ядерные процессоры примерно на 50% быстрее по сравнению с серверными процессорами с четырьмя ядрами. Istanbul будет конкурировать с 6-ядерными процессорами Intel Xeon под кодовым названием Dunnington, появившимися в продаже в сентябре 2008 г. Процессор изготавливается с использованием 45-нм технологии, работает на частоте 2,6 ГГц и обладать 6МБ кэш-памяти третьего уровня.
• 22 сентября 2009 г. – компания AMD заявила о намерении выпустить первые 6-ядерные центральные процессоры для ПК. Новинки будут базироваться на 6-ядерной архитектуре серверных процессоров AMD Opteron Istanbul, их кодовое обозначение – Thuban. Как и серверные процессоры Istanbul, Thuban будут представлять собой устройства на основе единого кристалла, при этом изготовление интегральных микросхем будет осуществляться по 45-нм техпроцессу. 6-ядерные процессоры, как и их серверные аналоги, будут состоять из 904 млн. транзисторов, при этом площадь микросхемы составит 346 кв. мм. Предположительно, на рынке процессоры появятся под брендом AMD Phenom II X6.
Примечания
1. Кодовое название (обозначение, наименование) – это название ядра процессора.
2. Линейка – это модельный ряд процессоров одной серии. В рамках одной линейки процессоры могут значительно отличаться друг от друга по целому ряду параметров.
3. Чип (англ. chip) – кристалл; микросхема.
4. Под технологическим процессом (техпроцесс, технология, технология производства микропроцессоров) подразумевается размер затвора транзистора. Например, когда мы говорим – 32-нм технологический процесс, – это означает, что размер затвора транзистора составляет 32 нанометра.
5. Канал – это область транзистора, по которой проходит управляемый ток основных носителей заряда.
Исток – это электрод транзистора, из которого в канал входят основные носители заряда.
Сток – это электрод транзистора, через который из канала уходят основные носители заряда.
Затвор – это электрод транзистора, служащий для регулирования поперечного сечения канала.
6. Фактически, транзисторы – это миниатюрные переключатели, с помощью которых реализуются те самые «нули» и «единицы», составляющие основу цифровой информации. Затвор предназначен для включения и выключения транзистора. Во включенном состоянии транзистор пропускает ток, а в выключенном – нет. Диэлектрик затвора расположен под электродом затвора. Он предназначен для изоляции затвора, когда ток проходит через транзистор.
Более 40 лет для изготовления диэлектриков затвора транзистора использовался диоксид кремния (благодаря легкости его применения в массовом производстве и возможности постоянного повышения производительности транзисторов за счет уменьшения толщины слоя диэлектрика). Специалистам Intel удалось уменьшить толщину слоя диэлектрика до 1,2 нм (что равнозначно всего 5 атомарным слоям!) – такой показатель был достигнут в 65-нанометровой технологии производства.
Однако дальнейшее уменьшение толщины слоя диэлектрика приводит к усилению тока утечки через диэлектрик, в результате чего растут потери тока и тепловыделение. Рост тока утечки через затвор транзистора по мере уменьшения толщины слоя диэлектрика из диоксида кремния является одним из самых труднопреодолимых технических препятствий на пути следования закону Мура. Для решения этой принципиальной проблемы корпорация Intel заменила диоксид кремния в диэлектрике затвора на тонкий слой из материала high-k на основе гафния. Это позволило уменьшить ток утечки более чем в 10 раз по сравнению с диоксидом кремния. Материал high-k диэлектрика затвора несовместим с традиционными кремниевыми электродами затвора, поэтому в качестве второй составляющей «рецепта» Intel для ее новых транзисторов, создаваемых на основе 45-нанометрового техпроцесса, стала разработка электродов с применением новых металлических материалов. Для изготовления электродов затвора транзистора применяется комбинация различных металлических материалов.
7. Приведенная в статье хронология создания многоядерных процессоров не претендует на всеобъемлющий охват.
Последняя тенденция в мире процессоров — это постепенный переход от одно ядерных процессоров к многоядерным. В настоящее время оба ведущих производителя процессоров, компании Intel и AMD, представили многоядерные версии своих процессоров. Основная причина такой тенденции состоит в том, что производители процессоров столкнулись с рядом серьезных и сложных в решении проблем при постоянном повышении тактовой частоты процессора с целью увеличения его производительности. Повышение тактовой частоты стало приводить к снижению темпов прироста быстродействия процессора (что связано с возникновением различных нежелательных физических эффектов на субатомном уровне) и общей стабильности работы, увеличению энергопотребления и уменьшению производительности при обращении к оперативной памяти. Выходом из этой ситуации стало объединение на одном кристалле двух и более ядер процессоров.
Многоядерные процессор содержит в себе, по сути, сразу два процессора. Преимущество многоядерные процессора по сравнению с одно ядерной моделью проявляется, в первую очередь, при работе с много потоковыми программами. Такие программы работают быстрее одно потоковых, поскольку операционная система может распределять программные потоки отдельно для каждого ядра, в то время как в одно ядерных процессорах задачи сменяются по мере их выполнения, т.е. по очереди. Производительность оперативной памяти увеличивается гораздо медленнее, чем скорость работы процессоров, поэтому увеличение производительности за счет использования нескольких ядер представляет собой лучший вариант, чем постоянное наращивание тактовой частоты.
Итак, для того, чтобы насладиться всеми возможностями многоядерного процессора, вам понадобятся программы, которые эту самую многомерность поддерживают. И таких программ не так уж и мало. В первую очередь к ним относятся различные базы данных, программы для трехмерного моделирования (такие как Мауа и 3Ds Мах), некоторые архиваторы (например, 7Zip) и ряд компьютерных игр. К сожалению, программ, способных воспользоваться преимуществами многоядерных процессоров, совсем не так много, как хотелось бы, и большинство программ многомерность не поддерживает. Но ситуация постепенно меняется, разработчики программ выпускают или новые версии своих продуктов, поддерживающие многомерность или специальные обновления, после установки которых программа приобретает поддержку многомерности.
Начало эпохи многоядерных
Если многопоточный одноядерник можно сравнить с обычным человеком, но имеющим больше рук, то многоядерные процессоры представляются некими многоголовыми людьми с соответствующим множеством рук. Технически, одна голова хорошо, а две-четыре-десять – лучше, да. Но пока наше воображение не унесло нас слишком далеко в страну этих многоголовых созданий, давайте ещё раз обернёмся назад и взглянем на ещё одну технологию, предшествовавшую многоядерной архитектуре – многопроцессорную систему.
Это системы, которые имеют более одного физического процессора и общую основную память и периферию на одной материнской плате. Как и большинство системных инноваций, многопроцессорные системы в основном разрабатывались под определенные специфичные задачи вроде тех, что мы видим в суперкомпьютерах и серверах. Внедрить такую технологию в обычные десктопные компьютеры даже не пытались, поскольку её производительность практически не адаптируется под большинство типичных пользовательских приложений. Тот факт, что процессоры вынуждены взаимодействовать между собой через RAM и внешние шины, означает наличие больших задержек. Какой бы быстрой ни была RAM, но внутренние регистры и кэши ядра процессора – быстрее. Кроме того, большинство десктопных программ не поддерживают работу с многопроцессорными системами, поэтому их разработка для дома или офиса себя не оправдывает.
Напротив, поскольку ядра многоядерного процессора размещены в непосредственной близости на одном кристалле, скорость передачи данных между ядрами намного быстрее. Более того, эти ядра, помимо собственных кэшей, имеют общие кэши, что улучшает и значительно ускоряет межъядерную коммуникацию. Вдобавок, в отличие от многопроцессорных систем, степень согласованности и взаимодействия ядер позволила лучше масштабировать производительность по отношению к задачам десктопных компьютеров. В 2001 году мы увидели первый истинно-многоядерный процессор, выпущенный IBM на своей архитектуре Power4, и, как и ожидалось, он был ориентирован на применение в рабочих станциях и серверах. Однако в 2005 году Intel выпускает свой первый массовый двухъядерный процессор, а затем в том же году AMD выпустил свою версию на архитектуре Athlon X2.
Гонка за гигагерцами уступила поиску других инновационных решений, позволяющих повысить производительность процессоров, и прежде всего был проведён ряд общих оптимизаций и улучшений в конструкции и архитектуре. Одним из ключевых приоритетов стало развитие многоядерности, разработчики старались внедрить всё больше ядер от поколения к поколению. Отправной точкой, положившей начало многоядерного рода, считается серия Intel Core 2, зародившаяся как двухъядерная, а в последующих поколениях развившаяся до четырехъядерных процессоров.
Аналогичным образом, AMD последовала с двухъядерным Athlon 64 X2, который эволюционировал в трёх- и четырёхъядерники серии Phenom.
В наши дни обе компании производят серии многоядерников. 11-е поколение Intel Core остановилось на отметке 10 ядер/20 потоков, в то время как в 12-м поколении представлена гибридная архитектура, представляющая собой 8 производительных ядер (P-cores), в которых реализована многопоточность, и 8 эффективных ядер (E-cores), многопоточности лишённых. В свою очередь, у AMD имеется свой флагман Zen 3 с его колоссальными 16 ядрами и 32 потоками. И стоит ожидать дальнейшего увеличения числа ядер, а также применения подхода big.LITTLE, как это сделала Intel в своём 12-м поколении семейства Core.
Помимо числа ядер, обе компании увеличили размеры кэшей, добавили уровни кэша и новые расширения ISA, а также оптимизации архитектуры. В ходе этой борьбы за доминирование на десктопном рынке компании пару раз обменялись ударами.
До этого момента мы обходили стороной область мобильных CPU, но как это часто бывает со всеми инновациями, перетекающими из одной области в другую, некоторые достижения мобильного сегмента, сфокусированного в своих разработках на эффективности и производительности в расчете на ватт, оказались очень востребованы при проектировании эффективных процессоров и архитектур за пределами мобильных устройств.
Как убедительно доказал чип M1 от Apple, удачно спроектированные процессоры вполне могут совмещать эффективные профили энергопотребления с отличной производительностью. А с введением официальной поддержки Arm в Windows 11, такие игроки как Qualcomm и Samsung наверняка предпримут усилия завладеть какой-то долей рынка ноутбуков.
Заимствование этих эффективных технологических стратегий из сектора мобильных и маломощных систем не произошло в одночасье, а было следствием длительных изысканий ведущих производителей процессоров, таких как Intel, Apple, Qualcomm и AMD, старающихся адаптировать свои чипы для работы в мобильных устройствах.
Архитектура многоядерных систем
Многоядерные процессоры можно подразделить по наличию поддержки когерентности кеш-памяти между ядрами. Бывают процессоры с такой поддержкой и без неё.
Способ связи между ядрами:
- разделяемая шина
- сеть (Mesh) на каналах точка-точка
- сеть с коммутатором
- общая кеш-память
Кеш-память: Во всех существующих на сегодня многоядерных процессорах кеш-памятью 1-го уровня обладает каждое ядро в отдельности, а кеш-память 2-го уровня существует в нескольких вариантах:
- разделяемая — расположена на одном кристалле с ядрами и доступна каждому из них в полном объёме. Используется в процессорах семейств Intel Core.
- индивидуальная — отдельные кеши равного объёма, интегрированные в каждое из ядер. Обмен данными из кешей 2-го уровня между ядрами осуществляется через контроллер памяти — интегрированный (Athlon 64 X2, Turion X2, Phenom) или внешний (использовался в Pentium D, в дальнейшем Intel отказалась от такого подхода).
Производительность
В приложениях, оптимизированных под многопоточность, наблюдается прирост производительности на многоядерном процессоре. Однако, если приложение не оптимизировано, то оно не будет получать практически никакой выгоды от дополнительных ядер, а может даже выполняться медленнее, чем на процессоре с меньшим количеством ядер, но большей тактовой частотой. Это в основном приложения, разработанные до появления многоядерных процессоров, либо приложения, в принципе не использующие многопоточность.
Большинство операционных систем позволяют выполнять несколько приложений одновременно. При этом получается выигрыш в производительности даже если приложения однопоточные.
История массовых многоядерных процессоров
Двухядерные процессоры различных архитектур существовали ранее, например 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]
Нужен ли лично вам многоядерный процессор?
Нужен ли лично вам многоядерный процессор? Во-первых, производители процессоров уже все решили за нас, и одно ядерные процессоры постепенно уходят в прошлое. Во-вторых, преимущества многоядерных процессоров вы сможете ощутить даже в том случае, если на вашем компьютере нет ни единой программы с поддержкой многомерности. Все дело в том, что Windows ХР и Windows 7, 8 изначально поддерживают распределение нагрузки между несколькими ядрами. Следовательно, если одна программа загрузит один процессор на 100%, то та же самая программа загрузит двухъякорный процессор уже только на 50%. К другому преимуществу многоядерных процессоров, о котором любят говорить производители процессоров рекламируя свое творение, относится возможность одновременного выполнения ресурсосберегающих программ без потери производительности. В практическом плане это означает, что вы сможете одновременно, скажем, играть в компьютерную игру и кодировать содержимое компакт-диска в MP3 без какого-либо эффекта «торможения». Другой вопрос, что едва ли вам понадобится одновременно выполнять такие операции, но подобная возможность может действительно пригодиться.
Кроме того, не забывайте — приобретая многоядерный процессор сейчас, вы делаете вклад в будущее. Постепенно программ с поддержкой многомерности будет все больше, и вы сможете насладиться новыми мультимедийными программами и играми, не приобретая нового процессора. Уже появились модели с 4 ядрами на одном кристалле, и это еще не предел. Многоядерные процессоры будут использоваться не только в компьютерах и серверах, но и в бытовой электронике и игровой индустрии. Наглядный тому пример — процессор Cell компании Sony, который применяется в игровой приставке нового поколения Playstation 3 и имеет 8 встроенных ядер.
Мульти-сердце микропроцессор ( многоядерный в английском языке ) представляет собой микропроцессор , имеющий множество сердечников физической операционной одновременно. Он отличается от старых архитектур (360/91), где один процессор управлял несколькими одновременными вычислительными схемами.
Физическое сердце представляет собой набор цепей , способных выполнять программы независимо друг от друга. В этих ядрах присутствуют все функции, необходимые для выполнения программы: порядковый счетчик, регистры, вычислительные блоки и т. Д. Может быть несколько уровней кэш-памяти , некоторые из которых находятся внутри каждого ядра, другие разделяются между некоторыми или всеми ядрами.
Преимущества и недостатки выделенных кешей
Организация, основанная на выделенных кэшах, имеет несколько преимуществ:
- Программа, запущенная на одном ядре, не будет загрязнять кеш-память другого процессора: две программы, запущенные на разных ядрах, не мешают;
- Время доступа к выделенному кешу часто меньше, чем к общему кешу. Следует сказать, что выделенные кеши часто довольно малы по сравнению с большим общим кешем, предназначенным для удовлетворения потребностей нескольких ядер.
Многоядерные контроллеры
Существует также тенденция внедрения многоядерных микроконтроллеров в мобильные устройства.
Трудно переоценить, насколько глубоко компьютеры проникли во все аспекты нашей жизни. Практически всюду – от простых устройств вроде тостера и до новейших космических кораблей – мы найдём реализации электронно-вычислительных технологий.
Основой любой из них является соответствующий центральный процессор , отвечающий за исполнение программных инструкций и координацию всех других жизненно-важных узлов вычислительной системы. Об устройстве и проектировании процессоров мы уже подробно писали в серии « Как разрабатываются и изготавливаются процессоры ». А в этой статье мы сосредоточимся лишь на одном аспекте: многоядерной архитектуре и как она влияет на производительность современных процессоров.
Если только Ваш компьютер не старше двух десятков лет, то с большой долей вероятности процессор в нём многоядерный, и их применение не ограничивается одними лишь полноразмерными десктопными или серверными системами, но также охватывает и рынок мобильных и маломощных систем. Среди известных продуктов достаточно вспомнить часы Apple Watch Series 7, имеющие двухъядерный процессор. Учитывая, что это миниатюрное устройство, охватывающее ваше запястье, этот пример показывает, насколько конструктивные инновации важны для повышения производительности.
По части многоядерных десктопов, представление об их доле на современном рынке нам поможет дать недавний опрос Steam. По данным этого опроса, более 70% пользователей Steam имеют процессор с 4 и более ядрами. Но прежде чем мы перейдём к основной части статьи, давайте дадим определения некоторым терминам. В большинстве своём они достаточно универсальные и одинаково применяемы как в контексте десктопных систем, на которых сосредоточено основное внимание в нашей статье, так и в контексте мобильных и серверных процессоров.
Прежде всего, давайте определим, что такое «ядро». Ядро – это полностью автономный микропроцессор, способный выполнять компьютерную программу. Ядро обычно включает в себя совокупность арифметических, логических и управляющих блоков, а также кэшей и шин данных, которая позволяет независимо выполнять программные инструкции.
Термином «многоядерный» называется процессор, состоящий из более чем одного ядра на кристалле и функционирующий как единое целое. Такая конфигурация позволяет отдельным ядрам делиться некоторыми общими ресурсами, такими как кэши, что позволяет ускорить выполнение задач. Однако из этого не всегда следует, что количество ядер напрямую влияет на производительность, и об этом мы ещё поговорим ниже.
Ещё одним техническим аспектом процессора, нередко вызывающим у многих людей некоторую путаницу, является различие между физическими и логическими ядрами. Физическими ядрами называются конкретные аппаратные блоки, реализованные на транзисторах и прочих деталях цепи, составляющей ядро. В свою очередь, под логическими ядрами подразумеваются независимые потоки, на которые процессор способен распределить работу. Это стало возможным по ряду факторов, более зависящих от операционной системы, управляющей процессами и потоками, нежели от собственно процессора. Но помимо этого, и выполняемая программа должна быть разработана с учётом многопоточности, чего бывает не так просто добиться, поскольку редко когда инструкции в какой-то конкретной программе полностью независимы.
Кроме того, логическое ядро подразумевает маппинг виртуальных ресурсов для физических ресурсов ядра, из чего следует, что в случае, когда физический ресурс занят одним из потоков, то другие потоки, требующие тот же ресурс, должны быть остановлены, что отражается на производительности. Если же одно физическое ядро спроектировано таким образом, что позволяет ему выполнять более одного потока одновременно, то об этом нам и скажет количество его логических ядер, соответствующее количеству потоков, с которыми процессор может работать одновременно.
Происхождение
Термин «многоядерный» используется для описания процессора, состоящего как минимум из двух ядер (или вычислительных блоков), выгравированных внутри одного и того же чипа.
Мы обязаны IBM первым появившимся на рынке многоядерным процессором: это POWER4 в 2001 году. В 2003 году Sun выпустила Ultra SPARC IV, состоящий из 2 ядер UltraSPARC III . В 2004 году HP выпустила PA-8800, состоящий из 2 ядер PA-8700.
Первые образцы многоядерных процессоров Intel и AMD вышли на рынок персональных компьютеров в 2005 году [ 1 ] . Они были однородными, то есть идентичными сердцами. Корпус с различными ядрами и специализированный в очень точных областях (аудио, отображение, чистые вычисления и т. Д.) Использовался для процессора Cell , разработанного IBM , Sony и Toshiba . Этот тип архитектуры позволяет увеличить вычислительную мощность без увеличения тактовой частоты и, следовательно, уменьшить количество тепла, рассеиваемого эффектом Джоуля (как в многопроцессорных системах ).
Первые двухъядерные чипы на базе архитектуры x86 появились на серверном рынке в 2005 году ( Opterons от AMD). Они возникли потому, что на практике гонка до ГГц становилась дорогостоящей и сложной. Поколение процессоров того времени имело только одно ядро и потребляло более 100 Вт (особенно на процессорах Intel Pentium 4 ). Поэтому пришлось столкнуться с серьезными проблемами охлаждения в контурах [ 2 ] . Решение, которое казалось наиболее очевидным, заключалось в том, чтобы больше не отдавать предпочтение частоте, а увеличить мощность благодаря параллельной архитектуре, чтобы иметь возможность увеличить количество операций, выполняемых одновременно в тактовом цикле .
Преимущества и недостатки общих кешей
Но у организации на основе общих кешей есть и преимущества:
- Две программы могут совместно использовать кэш динамически: таким образом, они могут распределять использование кеша гораздо более гибким способом, чем это допускается с выделенным кешем;
- Упрощена реализация механизмов согласованности кэша;
- Это позволяет избежать репликации данных, совместно используемых несколькими потоками. При организации в выделенных кэшах данные, используемые двумя потоками, запущенными на двух разных ядрах, должны присутствовать в каждом из выделенных кешей. При использовании общего кэша все данные одновременно присутствуют в общем кеше.
Однако у общих кешей есть несколько недостатков:
- Общий кеш должен иметь достаточную пропускную способность для питания нескольких ядер, что часто происходит за счет задержки;
- Общий кеш должен позволять нескольким ядрам одновременно обращаться к разным данным в кэше, чтобы избежать удержания ядра во время доступа к кешу. Следствие: эти кэши представляют собой многопортовые запоминающие устройства, что влияет на их энергопотребление, задержку и скорость передачи данных;
- Их большой размер отрицательно сказывается на их задержке и энергопотреблении;
- Некоторые программы могут нарушить распределение кеш-памяти. Это редкое явление, но возможно.
В действительности, учитывая эти ограничения, не все кеши процессора являются общими. Те, которым требуется низкая задержка (кэш L1), являются выделенными кешами, а остальные являются общими (L2, L3).
До появления многоядерных процессоров производители процессоров увеличивали мощность своих продуктов, увеличивая вычислительную частоту своих одноядерных процессоров. Но со временем этот метод достиг своего предела. Действительно, увеличение частоты процессора быстро вызывает проблемы с перегревом, воздушного охлаждения (вентилятора) уже недостаточно. Чтобы бороться с этим перегревом, необходимо перейти на деликатное и дорогое водяное охлаждение , либо перейти на более крупную и скоростную вентиляцию , создающую шумовое загрязнение. С другой стороны, растущая потребность микропроцессоров в энергии была проблематичной, особенно для портативных компьютеров.
Другая проблема - это скорость распространения сигнала, ограниченная скоростью света .
Наиболее мощные одноядерные процессоры, используемые в розничных компьютерах, обычно имеют частоты, не превышающие 3–4 ГГц , поскольку за пределами этого диапазона температура становится слишком высокой. На технологических показах процессоры разгоняются за счет охлаждения жидким азотом (отрицательная температура).
Чтобы обойти этот предел, производители обратились к фрагментации микросхем. Уже были компьютеры с несколькими отдельными процессорами (например, суперкомпьютеры). Идея здесь состоит в том, чтобы воспроизвести этот параллелизм в пределах одного процессора: короче говоря, ввести несколько вычислительных блоков в один и тот же процессор. Принцип прост: вместо «простого» высокочастотного процессора, например, используются два ядра с половинной частотой. Затем мы получаем процессор теоретически той же мощности, но с меньшей тактовой частотой и меньшим энергопотреблением. Процессор не сталкивается с проблемами питания и перегрева своего одноядерного аналога: рассеиваемая мощность удваивается, когда мы удваиваем количество ядер, тогда как она была бы увеличена в четыре раза, если мы удвоили тактовую частоту.
Оказывается, помимо этих чисто технических преимуществ, эти микропроцессоры также намного эффективнее в многозадачном режиме. В одноядерных системах операционная система периодически меняет запущенную программу с одной программы на другую. Эти изменения происходят очень быстро и поэтому не видны пользователю, у которого создается впечатление, что несколько программ работают одновременно. В многоядерных системах, если на компьютере одновременно работают несколько приложений, компьютер может распределять эту работу между ядрами процессора, а не чередовать операции на одном процессоре.
Концепция сродства к процессору ( сродство к процессору ) может связать сердце, данное приложению или устройству, чтобы получить лучшую реактивность (клавиатура, мышь . ), избегая при этом дорогостоящей переделки контекстов выполнения отдельными процессорами.
К сожалению, у этого подхода есть некоторые недостатки, так как программы должны быть переработаны, чтобы иметь возможность полностью использовать характеристики этих процессоров. Действительно, отдельные компоненты многоядерного процессора имеют меньшую индивидуальную мощность, чем у обычного одноядерного процессора; программное обеспечение, которое не подходит для многоядерности и которое, следовательно, может выполнять свои различные вычисления только с использованием одного из ядер процессора, будет поэтому выполняться с меньшей скоростью.
В 2006 году очень мало программного обеспечения управляло двухъядерным процессором, и в целом программное обеспечение не было разработано для получения максимальной отдачи от этой технологии (за исключением мира GNU / Linux, где подавляющее большинство приложений портировано - почти 99,8% - под несколько типов архитектур). После обновления всех программ до новой архитектуры производительность значительно повысится в энергоемких приложениях, таких как видеоигры .
Эти обновления также влияют на операционные системы , которые могут разделять вычисления, выполняемые программным обеспечением, которое они запускают. Затем многоядерный метод можно использовать даже с программным обеспечением, которое не подходит для этого типа обработки, однако такое использование менее эффективно, чем если бы само программное обеспечение указывало, как следует разделять вычисления. Такие адаптации необходимы с каждым увеличением количества ядер в процессорах. Только когда они будут выполнены, новые процессоры можно будет использовать в полной мере.
Телекоммуникационная отрасль была один из ранних многоядерных процессоров, как для маршрутизации данных слоя и уровня управления. С тех пор эти MPU быстро заменяют сетевые процессоры (NP), которые были основаны на частных архитектурах, основанных на микрокоде и пикокоде. 6WIND (in) была первой компанией, которая предоставила встроенное сетевое программное обеспечение, оптимизированное для этих многоядерных архитектур.
Параллельное программирование также выигрывает от перехода на несколько ядер. На этих многоядерных платформах можно использовать такие модели программирования, как OpenMP , MPI или OpenHMPP . Также проводятся другие исследования, например, системный редактор Sieve Codeplay (in) , языки Chapel от Cray , Fortress of Sun и X10 от IBM .
Существующие многоядерные процессоры
В настоящее время существует несколько архитектур многоядерных процессоров. В дополнение к уже упомянутым моделям Intel и AMD, Sun Microsystems разработала линейку Niagara и Niagara II ; IBM разработала линейку PowerPC и линию CellBE , которые IBM продает в виде блейд-серверов, а Mercury - в виде усиленного шасси. Самым первым двухъядерным процессором для смартфонов, выпущенным Nvidia, был Tegra 2, выпущенный в 2011 году.
В то же время отрасль стремится увеличить количество ядер в процессоре, например Intel в своем проекте Tera-Scale .
В феврале 2020 года во время международной конференции полупроводниковых схем в Сан - Франциско , то Лаборатория электроники и информационных технологий показывает , являются процессор 96 ядер [ 3 ] , [ 4 ] .
Каждый текущий процессор содержит кэш-память, которая ускоряет доступ к памяти. На многоядерных процессорах организация этой кэш-памяти адаптирована к наличию нескольких ядер. Используются две большие базовые организации: одна основана на кэшах, выделенных для каждого ядра, а другая - на общих кэшах.
В случае выделенных кешей каждое ядро имеет свой собственный кеш, который может использовать только оно. Поэтому для каждого сердца есть тайник.
При использовании общих кешей кеш используется всеми процессорами, которые могут одновременно обращаться к нему.
Эволюция технологий
С момента выпуска первого компьютера на рынок требования к вычислительной мощности становились все более важными. Симметричная многопроцессорная обработка ( SMP ) уже давно используется для повышения производительности и эффективности вычислений за счет распределения нагрузки между несколькими процессорами. SMP особенно эффективен в многопроцессорных средах, где необходимо одновременно управлять несколькими задачами (процессами).
В связи с меняющимися требованиями к производительности приложений разработчики процессоров сталкиваются с проблемой: увеличение вычислительной мощности зависит от мощности, а увеличение мощности требует также управления уровнями рассеивания. К этому следует добавить требования производителей, которым нужны компьютеры меньшего размера, а именно: большее количество серверов на стойку, более тонкие и легкие ноутбуки и меньшая занимаемая площадь для настольных систем. Многоядерная обработка помогает преодолеть эти проблемы. Этот технологический прогресс увеличивает производительность и производительность небольших компьютеров, способных одновременно запускать несколько сложных приложений и делать больше за меньшее время.
Такой язык, как Go, позволяет разрабатывать программы, которые будут работать без перезаписи на любом количестве ядер.
История экспериментальных многоядерных процессоров
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 года.
В июне 2011 года Intel раскрыла детали разрабатываемой архитектуры Many Integrated Core (MIC) — эта технология выросла из проекта Larrabee. Микропроцессоры на основе этой архитектуры получат более 50 микроядер архитектуры x86 и начнут производится в 2012 году по 22-нм техпроцессу. Эти микропроцессоры не могут быть использованы в качестве центрального процессора, но из нескольких чипов этой архитектуры будут строиться вычислительные ускорители в виде отдельной карты расширения и конкурировать на рынках GPGPU и высокопроизводительных вычислений с решениями типа Nvidia Tesla и AMD FireStream. [10] По опубликованному в 2012 году описанию архитектуры, возможны чипы с количеством ядер до 60.
В январе 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] .
Читайте также: