Cray XMT ( Cray eXtreme MultiThreading , [1] под кодовым названием Eldorado [2] ) — это масштабируемая многопоточная суперкомпьютерная архитектура с общей памятью от Cray , основанная на третьем поколении архитектуры Tera MTA , ориентированная на большие графовые задачи (например, семантические базы данных, большие данные). , сопоставление с образцом ). [3] [4] [5] Представленный в 2005 году, он заменяет ранее неудачный Cray MTA-2 . Он использует процессоры Threadstorm3 внутри блейд-серверов Cray XT3 . Разработанный для использования стандартных деталей и существующих подсистем для других коммерческих систем, он устранил недостатки Cray MTA-2, связанные с высокой стоимостью полностью индивидуального производства и поддержки. [2] Он внес ряд существенных улучшений по сравнению с Cray MTA-2, в первую очередь почти утроив пиковую производительность, а также значительно увеличил максимальное количество процессоров до 8192 и максимальный объем памяти до 128 ТБ с максимальным объемом TLB данных 512 ТБ. [2] [3]
Cray XMT использует скремблированную [3] модель памяти с адресацией по содержимому [6] на модулях DDR1 ECC для неявной балансировки нагрузки доступа к памяти во всем общем глобальном адресном пространстве системы. [5] Использование 4 дополнительных битов расширенной семантики памяти ( полный/пустой , переадресация и 2 бита ловушки ) на каждое 64-битное слово памяти обеспечивает облегченную и детальную синхронизацию всей памяти. [7] Аппаратные прерывания отсутствуют, а аппаратные потоки распределяются инструкцией, а не ОС. [5] [7]
Фронтальная часть (узлы входа в систему, ввода-вывода и другие сервисные узлы, использующие процессоры AMD Opteron и работающие под управлением SLES Linux ) и серверная часть (вычислительные узлы, использующие процессоры Threadstorm3 и работающие под управлением MTK, простого микроядра на базе BSD Unix [3] ) взаимодействовать через интерфейс LUC (Lightweight User Communication), двунаправленный клиент/серверный интерфейс в стиле RPC . [1] [5]
Threadstorm3 (называемый «процессором MT» [2] и Threadstorm перед XMT2 [8] ) — это 64-битный одноядерный процессор VLIW (совместимый с 940-контактным разъемом Socket 940 , используемым процессорами AMD Opteron ) со 128 аппаратными потоками , на каждый можно сопоставить программный поток (фактически создавая 128 аппаратных потоков на каждый ЦП), работающий на частоте 500 МГц и использующий набор инструкций MTA или его расширенный набор. [7] [9] [nb 1] Имеет 4-канальный ассоциативный буфер данных емкостью 128 КБ. Каждый Threadstorm3 имеет 128 отдельных наборов регистров и программных счетчиков (по одному на каждый поток), которые практически [10] полностью переключаются по контексту в каждом цикле. [5] Его расчетная пиковая производительность составляет 1,5 GFLOPS . Он имеет 3 функциональных блока (память, объединенное умножение-сложение и управление), которые получают операции из одной и той же инструкции MTA и работают в одном и том же цикле. [7] Каждый поток имеет 32 регистра общего назначения, 8 целевых регистров и слово состояния, содержащее счетчик программ. [6] Высокоуровневый контроль распределения заданий между потоками невозможен. [5] [nb 2] Из-за длины конвейера MTA, равной 21, каждый поток выбирается для повторного выполнения инструкций не ранее, чем через 21 цикл. [11] TDP процессорного пакета составляет 30 Вт. [ 12]
Благодаря переключению контекста на уровне потока в каждом цикле производительность процессоров Threadstorm не ограничивается временем доступа к памяти. В упрощенной модели в каждом такте выполняется инструкция из одного из потоков, а другой запрос памяти ставится в очередь с пониманием того, что к моменту готовности следующего раунда выполнения запрошенные данные поступят. [13] Это противоречит многим традиционным архитектурам, которые тормозят доступ к памяти. Архитектура превосходна в схемах обхода данных, где последующий доступ к памяти не может быть легко предсказан и, следовательно, не подходит для традиционной модели кэша. [1] Главным архитектором Threadstorm был Бертон Дж. Смит . [1]
Cray XMT2 [3] (также «XMT следующего поколения» [8] или просто XMT [6] ) — масштабируемый многопоточный суперкомпьютер с общей памятью от Cray , основанный на четвертом поколении архитектуры Tera MTA . [5] Представленный в 2011 году, он заменяет Cray XMT, у которого были проблемы с точками доступа к памяти. [8] Он использует процессоры Threadstorm4 внутри блейд-серверов Cray XT5 и увеличивает объем памяти в восемь раз до 512 ТБ, а пропускную способность памяти в три раза (300 МГц вместо 200 МГц) по сравнению с XMT за счет использования вдвое большего количества модулей памяти на узел и DDR2. [6] [8] В нем представлено соединение Node Pair Link между Threadstorm, а также узлы, использующие только память, с пакетами Threadstorm4, у которых отключены компоненты CPU и HyperTransport 1.x. [5] Базовая модель зашифрованной памяти с адресацией по содержимому была унаследована от XMT. XMT2 использует 2 дополнительных бита EMS ( полный/пустой и расширенный ) вместо 4, как в XMT.
Threadstorm4 (также «Threadstorm IV» [1] и «Threadstorm 4.0» [nb 3] ) — это 64-битный одноядерный процессор VLIW (совместимый с 1207-контактным разъемом Socket F , используемым процессорами AMD Opteron ) со 128 аппаратными потоками, очень похож на своего предшественника Threadstorm3. Он оснащен улучшенным контроллером памяти с поддержкой DDR2 и дополнительными 8 регистрами ловушек на поток. Cray намеренно отказался от контроллера DDR3, сославшись на повторное использование существующей инфраструктуры Cray XT5 [nb 4] и более короткую длину пакета, чем у DDR3. [nb 5] Хотя более длинная длина пакета может быть компенсирована более высокими скоростями DDR3, это также потребует большей мощности, чего инженеры Cray хотели избежать. [8]
После запуска XMT Крэй исследовал возможный многоядерный вариант Threadstorm3, получивший название «Скорпион» . Большинство функций Threadstorm3 будут сохранены, включая мультиплексирование множества аппаратных потоков в конвейер выполнения и реализацию дополнительных битов состояния для каждого 64-битного слова памяти. Позже Крэй отказался от проекта «Скорпион», и в рамках проекта не было произведено ни одного чипа. [3]
Разработка Threadstorm4, как и всей архитектуры MTA, молча завершилась после XMT2, вероятно, из-за конкуренции со стороны обычных процессоров, таких как Intel Xeon [14] и, возможно, Xeon Phi , хотя Cray никогда официально не прекращал выпуск ни XMT, ни XMT2. С 2020 года Cray удалила всю клиентскую документацию по XMT и XMT2 из своего онлайн-каталога.
Cray XMT2 был куплен несколькими федеральными лабораториями и академическими учреждениями, а также некоторыми коммерческими клиентами HPC: например, CSCS (2 ТБ глобальной памяти с 64 процессорами Threadstorm4), [15] Noblis CAHPC. [16] Большинство систем на базе XMT и XMT2 будут выведены из эксплуатации к 2020 году.
Стив Скотт: С Xeon это можно сделать просто великолепно.
Мы не планируем создавать еще один процессор ThreadStorm.
Но для этого требуются некоторые программные технологии, заимствованные из наследия ThreadStorm.