Алгоритм - Учебный центр

Версия сайта для слабовидящих
Заполните форму ниже! Мы вам перезвоним!

Нажав на кнопку "Отправить", Я даю своё согласие на автоматизированную обработку указанной информации, распространяющейся на осуществление всех действий с ней, включая сбор, передачу по сетям связи общего назначения, накопление, хранение, обновление, изменение, использование, обезличивание, блокирование, уничтожение и обработку посредством внесения в электронную базу данных, систематизации, включения в списки и отчетные формы.


Системная шина QPI для серверов на многоядерных процессорах Core iX.

Системная шина QPI для серверов на многоядерных процессорах Core iX.

 

Все компоненты, входящие в процессоры семейства Core iX, обычно разделены на два основных блока. В Intel их называют: «core» (ядро) и «uncore» (субъядро). Ядро (core) отвечает за выполнение традиционных функций, обычно связываемых с работой процессора. Это - вычислительные блоки, модуль предсказания ветвлений, регистры памяти и два типа кэшей L1 и L2. Субъядро ("uncore") охватывает компоненты, отвечающие за средства коммуникации с внешним миром. Сюда относятся контроллер памяти (memory controller), блок интерконнект QuickPath (QuickPath links), кэш 3-го уровня (L3 cache), средства управления энергопитанием (power management). Еще одним из элементов, относящимся к уровню uncore, стал и встроенный графический контроллер (графический процессор). Предложенное архитектурное деление осуществляет переход на новый принцип модельного деления серии выпускаемых процессоров. Отличительным признак серии будет использованное ядро (core). А вот различная комплектация уровня субъядро ("uncore") позволит выделить специализированные типы процессоров для отдельных применений: домашние, настольные для бизнес-решений, серверные. Понятно, что серверная версия будет отличаться расширенным размером кэша L3 и добавлением каналов QPI (QuickPath Interconnect).

Итак, кристалл процессора Core i7 (Nehalem) с другими компонентами системы пока связывают два архитектурных блока (рис. 1):

- QuickPath Interconnect (QPI) – связь с чипсетом (и другим процессором в многопроцессорных вариантах);

- Integrated Memory Controller (IMC) – связь с модулями памяти.

Рис. 1. Внешние и внутренние связи процессора Cоre iX

Основное достоинство нового интерфейса QPI – это сочетание высокой пропускной способности - до 15 Гбит/с  и низкого энергопотребления (не более 5,0 мВт на каждый гигабит в секунду при пропускной способности 15 Гбит/с). При скорости передачи данных 5 Гбит/с  новый интерфейс Intel обладает уровнем энергопотребления не более 2,7 мВт на каждый гигабит в секунду. Эти результаты сегодня являются рекордными с точки зрения эффективности работы современных приёмников данных Теоретически, Intel может повысить пропускную способность существующих интерфейсов в три раза, довольствуясь только 25% уровня энергопотребления нынешних интерфейсов.

Главный параметр системы, влияющий на частоту практически всех узлов системы – частота тактового генератора - Host Clock Frequency (при конфигурировании задаётся на первом же экране раздела «Performance»). Штатное значение этой частоты – 133 МГц, однако некоторые платы предлагают широкие возможности для её увеличения, например, до 240 МГц.

Частота шины QPI формируется за счет умножения определенного коэффициента на частоту тактового генератора, равную в номинале 133 МГц. Ее также называют опорной частотой шины QPI -  QPI bclk или просто Bclk (есть, например, специальная утилита «CPU-Z», которая определяет ее как  Bus Speed). За счет Bclk формируются частоты ядер процессора, кэш-памяти, контроллера памяти и частота системной памяти.

Таким образом, в современных системах на процессорах Intel в Core iX частота 133 МГц  – это просто частота тактового генератора, формирующего все остальные частоты. Частота процессора получается как произведение этой величины на коэффициент умножения (например, частота Core i7-920 получается умножением коэффициента 20х на 133 МГц). Интерфейс QPI, связывающий процессор с северным мостом (и другими процессорами), также использует эту частоту в качестве базовой, умножая её на свой собственный коэффициент. Частота интерфейса QPI будет варьироваться на разных моделях CPU (например, в Core i7-965 Extreme Edition эта шина работает на частоте 3,2 ГГц, а на Core i7-940 и i7-920 её частота понижена до 2,4 ГГц).

Что касается возможности разгона шины QPI, то почти все процессоры будут ею обладать в полной мере. Множитель частоты шины QPI - от 4x до 64x (но некоторые процессоры Core i7 920 - 2.66 ГГц и Core i7 940 - 2.93 ГГц не позволяют повышать множитель, определяющий тактовую частоту ядер и, соответственно, технология Intel Dynamic Speed Technology ими тоже поддерживаться не будет). Частота шины QPI для процессоров Intel Core i7-920 и Core i7-940 составляет 2,4 ГГц, что эквивалентно пропускной способности 4800 мегатранзакций в секунду (или 4,8 ГТ/с). Для Core i7-965 EE это значение соответствует 3,2 ГГц или 6,4 ГТ/с. Зная частоту QPI можно  высчитать коэффициент умножения шины у каждого из процессоров: для Core i7-920 и  Core i7-940 он равен 18, для Core i7-965 EE -  24.

Значительного повышения эффективности новой шины удалось добиться за счёт динамического управления частотой и напряжением принимающего и передающего чипов, а также некоторых других нововведений. Кроме того, компания также разработала чип-диспетчер, который позволяет аппаратно распределять потоки между ядрами процессора. Производительность симулированного 64-ядерного процессора при его помощи удалось повысить в два раза. Все эти новые разработки Intel приведут к появлению еще более эффективных и экономичных многоядерных процессоров.

Еще в случае с SANDY BRIDGE разработчики использовали новую кольцевую топологию 256-битной компонентной шины, которая выполнена на основе доработанной версии технологии Quick Path Interconnect. Кольцевая шина предназначена для обеспечения обмена данными между основными компонентами кристалла: четырьмя процессорными ядрами, кэшем L3, системным агентом и графическим ядром. Шину можно представить как четыре 32-байтных кольца: шина данных, шина запросов, шина подтверждения и шина мониторинга состояния. Управляет шинами коммуникационный протокол распределенного арбитража, обработка запросов при этом происходит на тактовой частоте ядер процессора. Топология шины позволяет передавать данные со скоростью 96 Гбайт/с на соединение при частоте 3 ГГц. Фактически эти цифры в четыре раза превышают показатели процессоров Intel предыдущего поколения. Кэш L3 (LLC - Last Level Cache, или «кэш последнего уровня») благодаря кольцевой шине распределяется не только между ядрами процессора, но и между графическим ядром и системным агентом, в который разработчики интегрировали блок видеовыхода и модуль аппаратного ускорения графики. Упреждением конфликтов доступа между ядрами процессора и графикой занимается специальный трассировочный механизм. Каждое из четырех ядер, в свою очередь, в новом процессоре Intel получило прямой доступ к «личному» сегменту кэша, при этом каждый сегмент предоставляет половину ширины своей шины для доступа со стороны общей кольцевой шины данных. Кроме того, каждый сегмент наделен независимым контроллером доступа к шине, который отвечает за обработку запросов по размещению физических адресов. Также этот контроллер постоянно обменивается данными с системным агентом, выявляя неудачные обращения к кэшу L3, фиксируя некэшируемые обращения и контролируя межкомпонентный обмен данными.

В первом квартале 2012 года были представлены серверные процессоры платформы Intel Romley, (модели серий Intel Xeon E5-1600 и Intel Xeon E5-2600).

Новые технологии приёма/передачи данных, которые будут использоваться в многопроцессорных системах следующего поколения, требуют не только повышенной пропускной способности канала ввода/вывода, но и более эффективного с точки зрения потребляемой мощности интерфейса передачи информации.

Технология шины QPI от Intel превосходит все современные аналоги как минимум втрое, потребляя при этом на 75% меньше энергии. Технология в основном используется в качестве интерфейса для нескольких процессоров в многопроцессорных вычислительных системах (рис. 2). Шина QPI, является аналогом шины HyperTransport от AMD, и тоже предназначена для связи процессора с другими компонентами. Она призвана обеспечить согласованный обмен данными между небольшими группами локальных процессоров, а также взаимодействие между банками памяти (даже не обязательно одного типа) в распределенных системах, включающих не более 128 процессоров. QPI обеспечивает меньшие задержки и более высокую производительность, по сравнению с HyperTransport.

Шина QuickPath дебютировала еще в рамках серверной платформы Tylersburg, которая использовала процессоры поколения Nehalem с разделяемым кэшем третьего уровня и поддержкой "виртуальной многоядерности" (в частности, система на базе двух четырёхъядерных процессоров сможет имитировать работу шестнадцати процессорных ядер).

Рис. 2. Архитектурные особенности систем процессоров с шиной QPI

 

Ключевой особенностью новой архитектуры является применение концепции масштабируемой разделяемой памяти (scalable shared memory). В рамках новой архитектуры каждый CPU имеет собственную выделенную память, к которой он будет обращаться напрямую, через свой интегрированный контроллер памяти. В случае, если процессору потребуется доступ к выделенной памяти другого CPU, он сможет связаться с ней посредством одного из каналов QuickPath Interconnect.  Как и шина HyperTransport, применяемая в процессорах компании AMD, QPI будет использовать последовательную связь по схеме "точка-точка" (point-to-point), что обеспечит высокую скорость при малой латентности. Итак, основными ключевыми характеристиками Intel QuickPath Architecture являются:

                - производительность каналов QuickPath Interconnect до 6,4 гигатранзакций в секунду (благодаря чему общая пропускная способность может достигать 25,6 Гбайт/сек)

                - QPI уменьшает количество служебной информации, необходимой для функционирования многопроцессорных систем (что, соответственно, позволяет повысить скорость передачи полезных данных);

                 - реализация контроля при помощи циклического избыточного кода (CRC) и повторной передачи при обнаружении ошибок на канальном уровне (что позволяет обеспечить целостность данных без ощутимого влияния на производительность);

                - возможность реализации высокоуровневых функций обеспечения надежности, готовности и удобства обслуживания (RAS, Reliability, Availability and Serviceability) благодаря реконфигурации каналов в случае повреждения отдельных участков, поддержке "горячей замены". При нарушении сигнала в одной или нескольких из линий контроллер шины может автоматически перенастроить QPI на ширину 15 и даже 5 бит, не теряя работоспособности, таким образом, серверы, например, на базе мощных процессоров Xeon 5500 будут обладать повышенной устойчивостью к сбоям шины (рис. 3). При организации шины с различной шириной линий, управ­лением потоком данных занимает­ся специальный агент QPI, который распределяет поток данных перед тем, как от­править его по различным физи­ческим линиям, а при приеме аналогичный агент собирает разные потоки данных в один (рис. 3).

Рис. 3. Пример конфигурирования 20 каналов в четыре группы по 5 каналов

Максимальная производительность QPI составляет 6,4 миллиарда передач в секунду, что в случае Nehalem соответствует пропускной способности 25,6 ГБ/с (но это не является пределом для шины QPI).

Многие разработчики чипсетов уже активно работают над решениями для серверов с использованием шин QPI. В случае, если процессору потребуется доступ к выделенной памяти другого CPU, он сможет связаться с ней посредством одного из каналов QPI (рис. 2).  Шина QPI использует последовательную связь по схеме "точка-точка" (point-to-point), что обеспечивает высокую скорость при малой латентности.

Рис. 4. Архитектурные особенности процессоров с шиной QPI

 Серверные модели оборудованы двумя (и более) линиями QPI (рис. 4), что позволяет выделить всем критичным направлениям (например, связь двух процессоров между собой и каждого из них с северным мостом) по собственному соединению. В любом случае, производительности QuickPath Interconnect вполне достаточно, чтобы обеспечить нормальную работу платформ с несколькими CPU (рис. 4). Интерфейс QPI в 2-3 раза эффективнее и к тому же не обременен взаимодействием с оперативной памятью (этим занимается встроенный контроллер памяти DDR3).

Рис. 5.

 Специальный последовательный интерфейс с топологией точка-точка, именованный как QPI (QuickPath Interconnect) с технической точки зрения представляет собой два 20-битных соединения, ориентированных на передачу данных в прямом и обратном направлении (рис. 5). Из 20 битного соединения 16 бит предназначаются для передачи данных, оставшиеся четыре – носят вспомогательный характер, они используются протоколом и коррекцией ошибок. Таким образом, QPI является последовательной, высокоскоростной двунаправленной шиной. Ее ширина в каждую сторону (передача и прием) составляет по 20 бит (20 отдельных пар линий), при этом 16 бит отводится для передачи данных, две линии зарезервированы для передачи служебных сигналов и еще две - для передачи кодов коррекции ошибок CRC. C учетом еще двух пар линий, используемых для сигналов синхронизации (одна на прием и одна на передачу), олучаем, что шина QPI состоит из 42 пар линий, то есть является 84-контактной. Это соединение представляет собой пару из двух шин функционирующих в режиме полного дуплекса, снабженных задающей тактовую частоту линией. В секунду QPI может передавать данные от 4,8 до 6,4 млрд. раз, что обеспечивает полезную пропускную способность от 9,6 до 12,8 ГБ/с в каждую сторону, не считая данных CRC (это вдвое выше чем  у FSB 1600 МГц  наиболее быстрых чипсетов Intel прошлого поколения).

Многопроцессорные системы, построенные на процессорах со встроенными контроллерами памяти (рис. 6), должны использовать «распределенную» модель памяти NUMA (Non-Uniform Memory Access), а, следовательно, нуждаются в прямом и высокоскоростном соединении между процессорами. Появление прямой связи между процессорами позволило Intel реализовать архитектуру доступа к памяти NUMA, столь необходимую для критичных к быстродействию ОЗУ задач в многопроцессорных средах. Теперь оптимизированные под NUMA операционные системы и приложения смогут при генерации и распределении вычислительных потоков учитывать, в каком сегменте памяти размещать данные, чтобы не обращаться за ними в удаленную и, следовательно, намного менее быструю память. Благодаря этому оптимизированные приложения, генерирующие по одному потоку на ядро CPU, получат вплоть до 5,3-кратного прироста пропускной способности по сравнению с четырехканальной общей FB-DIMM. При этом оптимизацию под NUMA можно отключить в BIOS серверной материнской платы, вновь сделав всю установленную в системе RAM общей, впрочем, вряд ли многим потребителям это понадобится, так как большинство современных операционных систем поддерживают NUMA.

Рис. 6. Использование QPI в серверных платформах

 Шина QPI имеет собственную многоуровневую модель. Архитектурой QPI определены (см. рис. 7) пять уровней:

 - физический уровень,

 - уровень связи,

 - уровень маршрутизации,

 - транспортный уровень,

 - уровень протокола.

Многоуровневая архитектура обеспечивает большую гибкость выполнения обмена и учитывает дальнейшее развитие в рамках стандарта Intel® QuickPath архитектуры. 

Физический уровень состоит из физических проводов для передачи сигналов и схем, необходимых для поддержки логика работы и особенностей физических линий связи. Единица передачи информации на физическом уровне имеет размер 20 бит (ее называют Phit - единица обмена на физическом уровне).

Уровень связи является следующим уровнем стека протокола. Он ответственен за надежную передачу и контроль потока. Единица передачи на уровне связи имеет размер 80 бит (кадр для блока управления потоком).

Уровень маршрутизации обеспечивает структуру для пересылки пакетов через сеть.

Транспортный уровень – архитектурно определен, но не реализован в начальном

продукте, в дальнейших реализациях будет обеспечивать более высокий уровень производительности процесса маршрутизации для надежной сквозной передачи данных.

Уровень протокола - набор правил высокого уровня, необходимых для организации и обеспечения обмена пакетов данных между устройствами и интеграции пакетов в кадры. Шина QuickPath включает и протокол соблюдения целостности данных, обеспечивающий  нормальную работу с распределенной памятью и структурами кэширования, последовательно в процессе работы системы, что обеспечивает малое время ожидания. Протокол последовательности обмена, для обеспечения оптимального времени ожидания, предусматривает прямое обращение и обмен между памятью различного уровня. 

Рис. 7 .  Архитектурные уровни шины Intel® QuickPath (полная архитектура шины QPI)

Сейчас функции, выполняемые QPI, логически сгруппированы в четыре различных уровня, как показано на рис. 8. Для Intel® QuickPath архитектуры используются три формата, которые идентифицируют степень детализации информации, в обмене между уровнями: phits, пакеты, кадры.Модульный подход обеспечивает расширение возможностей шины, которые будут необходимы для удовлетворения всевозрастающих потребностей компонентов системы (например, описание физического уровня - сегодня он обеспечивает определенный диапазон эксплуатационной скорости и особенности подключенных к сети каналов, но это не ограничивает QPI в развитии в сторону увеличения скорости, использования новых каналов коммуникаций, или новых типов используемых сообщений).

Рис. 8. Архитектурные уровни шины Intel® QuickPath (существующая архитектура шины QPI)

 


Лицензия