RU2614926C2 - Мультипроцессорная система - Google Patents
Мультипроцессорная система Download PDFInfo
- Publication number
- RU2614926C2 RU2614926C2 RU2015127125A RU2015127125A RU2614926C2 RU 2614926 C2 RU2614926 C2 RU 2614926C2 RU 2015127125 A RU2015127125 A RU 2015127125A RU 2015127125 A RU2015127125 A RU 2015127125A RU 2614926 C2 RU2614926 C2 RU 2614926C2
- Authority
- RU
- Russia
- Prior art keywords
- group
- node
- communication
- switches
- computing nodes
- Prior art date
Links
Images
Landscapes
- Multi Processors (AREA)
Abstract
Изобретение относится к области вычислительных и коммуникационных систем и может быть использовано при создании вычислительных комплексов различной производительности. Технический результат заключается в повышении отказоустойчивости и пропускной способности коммуникационной сети за счет использования топологии мульти-тор. Мультипроцессорная система содержит группы вычислительных узлов, каждый узел из которых содержит процессорные элементы и адаптер, соединенные между собой интерфейсом связи, в каждую группу вычислительных узлов дополнительно введен коммуникационный узел, включающий в себя коммутаторы, при этом адаптер каждого вычислительного узла одной группы соединен двунаправленными каналами связи с коммутаторами коммуникационного узла той же группы, при этом все коммутаторы одной группы соединены с соответствующими коммутаторами других групп с образованием многомерных торов. 3 ил.
Description
Изобретение относится к области вычислительных и коммуникационных систем и может быть использовано при создании вычислительных комплексов различной производительности.
Известна мультипроцессорная система K-Computer (Fujitsu) (см. http://www.fujitsu.com/downloads/TC/sc10/interconnect-of-k-computer.pdf, http://www.fujitsu.com/downloads/MAG/vo148-3/paper05.pdf), построенная по гибридной топологии, в которой 3-мерные решетки объединяются между собой 3-мерными торами. Такая топология получила название Tofu (от английского TOrus FUsion - объединение торов). В мультипроцессорной системе, построенной по такой топологии, вычислительные узлы объединяются в группы по 12 штук с образованием решетки размерности 2×2×3. При этом измерение, состоящее из трех узлов, дополнительно замкнуто в тор. Таким образом, решетка размерности 2×2×3 может рассматриваться как тор аналогичной размерности. Соответствующие узлы из каждой группы объединены между собой с образованием двенадцати 3-мерных торов.
Вышеуказанное устройство является наиболее близким по технической сущности к заявляемому устройству и поэтому выбрано в качестве прототипа.
Недостатками прототипа являются высокая вероятность возникновения блокировок при деградации коммуникационной сети, предотвращение которых значительно увеличивает сложность маршрутных алгоритмов, а передача сообщений между парой вычислительных узлов осуществляется по одному фиксированному маршруту, что приводит к ограничению пропускной способности.
Решаемой технической задачей является создание масштабируемой мультипроцессорной системы с высокой производительностью и надежностью, которая обеспечивает меньшие затраты на коммуникацию сообщений между вычислительными узлами.
Достигаемым техническим результатом является высокая отказоустойчивость и высокая пропускная способность коммуникационной сети за счет использования топологии мульти-тор.
Для достижения технического результата в мультипроцессорной системе, содержащей группы вычислительных узлов, каждый узел из которых содержит процессорные элементы и адаптер, соединенные между собой интерфейсом связи, новым является то, что в каждую группу вычислительных узлов дополнительно введен коммуникационный узел, включающий в себя коммутаторы, при этом адаптер каждого вычислительного узла одной группы соединен двунаправленными каналами связи с коммутаторами коммуникационного узла той же группы, при этом все коммутаторы одной группы соединены с соответствующими коммутаторами других групп с образованием многомерных торов.
Введение в каждую группу коммуникационного узла позволило осуществлять передачу сообщений между парой вычислительных узлов по нескольким параллельным маршрутам одновременно, что в свою очередь повышает пропускную способность сети. Соединение вычислительных узлов и коммутаторов одной группы по топологии «жирного дерева» не приводит к возникновению блокировок при деградации коммуникационной сети и поэтому значительно упрощает алгоритмы системы маршрутизации.
Использование топологии мульти-тор позволяет сохранить высокую отказоустойчивость и коммуникационные характеристики при масштабировании мультипроцессорной системы.
Новая совокупность существенных признаков позволяет сохранить высокую отказоустойчивость и коммуникационные характеристики при масштабировании мультипроцессорной системы за счет использования топологии мульти-тор.
На фигуре 1 представлена блок-схема мультипроцессорной системы, на фигуре 2 - структура одной группы вычислительных узлов.
Мультипроцессорная система содержит группы вычислительных узлов, каждый вычислительный узел от 1.1 до 1.N содержит процессорные элементы от 1.1.1 до 1.N.1 и адаптеры от 1.1.2 до 1.N.2, соединенные между собой интерфейсом связи, вычислительные узлы 1.1…1.N объединены в группы, каждая из которых содержит коммуникационный узел 2, включающий в себя коммутаторы 2.1…2.М, при этом адаптеры 1.1.2…1.N.2 каждого вычислительного узла одной группы соединены двунаправленными каналами связи с коммутаторами 2.1…2.М коммуникационного узла 2 той же группы, все коммутаторы 2.1…2.М одной группы соединены с соответствующими коммутаторами других групп с образованием многомерных торов.
Каждый адаптер 1.1.2…1.N.1 представляет собой плату расширения, подключенную к вычислительному узлу через стандартный интерфейс подключения плат расширения и предназначен для связи вычислительных узлов с коммутаторами коммуникационного узла через M высокопроизводительных портов, что позволяет строить мультипроцессорные системы с числом параллельных торов до М.
Каждый коммутатор 2.1…2.М имеет K+N высокопроизводительных портов и предназначен для передачи сообщений по направлениям топологических связей многомерного тора с максимально возможной производительностью. K портов используются для передачи сообщений по направлениям K/2-мерного, оставшиеся N используются для связи с адаптерами вычислительных узлов.
Базовым элементом топологии мульти-тор является группа вычислительных узлов (см. фиг. 2) с установленными в них адаптерами, объединенными через один уровень коммутации с помощью нескольких коммутаторов.
Каждый коммуникационный узел 2 может содержать от одного до М коммутаторов (количество коммутаторов в коммуникационном узле ограничено количеством портов в адаптере), что обеспечивает функционирование от одной до M подсетей с топологией многомерного тора. Внутри одного коммуникационного узла коммутаторы не соединены между собой и обеспечивают передачу сообщений между коммутаторами, объединенными по топологии многомерного тора. Для этого каждый коммутатор имеет K портов по два для каждого направления: один в направлении увеличения координаты, второй в направлении уменьшения координаты.
К каждому коммутатору 2.1…2.M одного коммуникационного узла подключено до N вычислительных узлов с установленными в них адаптерами 1.1.2…1.N.2. Порты 1, 2…N коммутаторов предназначены для связи с портами 1, 2…M адаптеров. На фигуре 2 показана связь между портами коммутаторов и адаптеров внутри одной группы вычислительных узлов. Порты 1, 2…N коммутатора 2.1, входящего в первую подсеть, подключены к порту 1 всех адаптеров 1.1.2…1.N.2 всех вычислительных узлов, входящих в группу. Порты 1, 2…N второго коммутатора 2.2, входящего во вторую подсеть подключены к порту 2 адаптеров 1.1.2…1.N.2 всех вычислительных узлов, входящих в группу. Соответственно, порты третьего 2.3 и последующего коммутаторов из третьей и последующих подсетей подключены к третьему и последующим портам адаптеров.
Мультипроцессорная система работает следующим образом. Вычислительные узлы объединены между собой топологией мульти-тор. Объединение узлов позволяет программам, которые выполняются на процессорных элементах, обмениваться данными между собой, образуя единое вычислительное поле. От эффективности коммуникации, объединяющей вычислительные узлы, зависит производительность мультипроцессорной системы.
Обмен данными между процессорными элементами осуществляется сообщениями. Каждое сообщение разбивается на пакеты, передающиеся по сети между вычислительными узлами. Каждый передаваемый пакет имеет заголовок, содержащий служебную информацию, в частности адрес источника пакета и адрес получателя пакета, используемые для маршрутизации пакета по сети.
Адрес в сети мульти-тор состоит из двух полей: координатный адрес коммуникационного узла (для трехмерной подсети это X, Y, Z) и номер вычислительного узла в группе (n): X.Y.Z:n.
На фиг. 3 приведен фрагмент сети с топологией мульти-тор третьей степени (три параллельных подсети). Каждая группа содержит по четыре вычислительных узла.
Рассмотрим процесс передачи сообщения от узла с адресом 0.0.0:1 узлу с адресом 0.2.0:2. Передаваемое сообщение разбивается на пакеты адаптерным модулем. Пакеты из сообщения последовательно передаются в порты 1, 2, 3, обеспечивая равномерную загрузку подсетей мульти-тора.
Когда пакет попадает в коммутатор коммуникационного узла, осуществляется его маршрутизация, то есть принятие решения в какой порт перенаправить пакет. Проверяется координатная часть адреса, и если адрес не совпадает, то пакет начинает свое движение в одном из направлений тора: вначале пакет движется по координате X, затем по координате Y и так далее по всем координатам той подсети, по которой пакет начал движении от адаптера. В рассматриваемом примере пакет будет перенаправлен в порт Y+.
При попадании в следующий коммутатор с адресом 0.1.0 при проверке адреса назначения пакет будет перенаправлен далее по направлению Y в направлении увеличения координаты.
В коммутаторе, адрес которого совпадает с координатной частью адреса назначения, пакет маршрутизируется по второму полю адреса - по номеру вычислительного узла n. В рассматриваемом примере пакет будет передан в порт, подключенный к вычислительному узлу с номером 1 в группе.
Когда пакет поступает в адаптер узла назначения, проверяется соответствие адреса назначения пакета и адреса адаптера, и при совпадении пакет передается через интерфейс связи процессорному элементу.
Хотя коммутаторы одного коммуникационного узла не связаны напрямую, но благодаря адаптерам между ними можно передавать пакеты, не занимая топологические порты.
Если на одном из переходов между коммутаторами порт, в который перенаправляется пакет, окажется неисправным, такой пакет передается в один из адаптеров, подключенных к данному коммутатору. Когда в адаптер попадает пакет, координатная часть адреса которого не совпадает с адресом адаптера, пакет перенаправляется в коммутатор из другой подсети, таким образом осуществляется обход неисправных связей, не приводящий к блокировкам в сети.
Такой способ обхода неисправностей не требует усложнения коммутаторов и адаптеров в виде дополнительных виртуальных каналов, так как переход между подсетями только увеличивает длину маршрута на два транзитных участка, но не создает дополнительных циклов (замкнутых путей). Возможность перехода из одной подсети в другую позволяет обойти множественные неисправности оборудования, что повышает надежность коммуникационной сети с топологией мульти-тор.
Описанная выше топология мультипроцессорной системы прошла проверку в составе вычислительного комплекса, построенного на коммуникационной системе СМПО-10G-1. Аппаратная составляющая коммуникационной системы СМПО-10G-1 включает в себя адаптерный блок СМПО-10GA-AD и коммутаторный блок СМПО-10GA-SW.
Адаптерный блок СМПО-10GA-AD (адаптер) представляет собой плату расширения PCI Express 8х Gen 2. Для подключения адаптера к коммуникационному узлу предусмотрено четыре высокоскоростных последовательных порта стандарта QSFP с производительностью 20 Гбит/с.
Коммутаторный блок СМПО-10GA-SW (коммутатор) содержит десять последовательных высокоскоростных портов стандарта QSFP. Шесть портов с производительностью 40 Гбит/с используются для связи с другими коммутаторами с образованием трехмерного тора. Четыре высокоскоростных последовательных порта с производительностью 20 Гбит/с используются для организации связи с адаптерами.
На базе коммуникационной системы СМПО-10G-1 была построена мультипроцессорная система, содержащая 64 вычислительных узла, объединенных в группы по четыре узла. Каждый коммуникационный узел в группе состоит из трех коммутаторов, что позволило реализовать топологию мульти-тор третьей степени. Испытания и замеры производительности, произведенные на вычислительной системе, показали ее высокую производительность и эффективность.
Искусственная деградация коммуникационной системы не привела к блокировкам во время групповых обменов и подтвердила надежность маршрутных алгоритмов, применяемых в топологии мульти-тор для обхода как единичных отказов связей, так и для обхода множественных отказов.
Claims (1)
- Мультипроцессорная система, содержащая группы вычислительных узлов, каждый узел из которых содержит процессорные элементы и адаптер, соединенные между собой интерфейсом связи, отличающаяся тем, что в каждую группу вычислительных узлов дополнительно введен коммуникационный узел, включающий в себя коммутаторы, соединенные между собой через адаптеры вычислительных узлов той же группы, при этом адаптер каждого вычислительного узла одной группы соединен двунаправленными каналами связи по топологии «жирного дерева» с коммутаторами коммуникационного узла той же группы, причем все коммутаторы коммуникационного узла одной группы соединены с соответствующими коммутаторами коммуникационных узлов других групп с образованием параллельных подсетей с топологиями многомерных торов.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2015127125A RU2614926C2 (ru) | 2015-07-06 | 2015-07-06 | Мультипроцессорная система |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2015127125A RU2614926C2 (ru) | 2015-07-06 | 2015-07-06 | Мультипроцессорная система |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2015127125A RU2015127125A (ru) | 2017-01-11 |
RU2614926C2 true RU2614926C2 (ru) | 2017-03-30 |
Family
ID=58449189
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2015127125A RU2614926C2 (ru) | 2015-07-06 | 2015-07-06 | Мультипроцессорная система |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2614926C2 (ru) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2084953C1 (ru) * | 1990-11-13 | 1997-07-20 | Интернэшнл Бизнес Машинз Корпорейшн | Параллельная процессорная система |
US5708836A (en) * | 1990-11-13 | 1998-01-13 | International Business Machines Corporation | SIMD/MIMD inter-processor communication |
US5717944A (en) * | 1990-11-13 | 1998-02-10 | International Business Machines Corporation | Autonomous SIMD/MIMD processor memory elements |
US5963746A (en) * | 1990-11-13 | 1999-10-05 | International Business Machines Corporation | Fully distributed processing memory element |
US6106575A (en) * | 1998-05-13 | 2000-08-22 | Microsoft Corporation | Nested parallel language preprocessor for converting parallel language programs into sequential code |
US6292822B1 (en) * | 1998-05-13 | 2001-09-18 | Microsoft Corporation | Dynamic load balancing among processors in a parallel computer |
US20070105089A1 (en) * | 2001-10-25 | 2007-05-10 | Bar-Ilan University | Interactive transparent individual cells biochip processor |
WO2010043401A2 (en) * | 2008-10-15 | 2010-04-22 | Martin Vorbach | Data processing device |
WO2012003997A1 (en) * | 2010-07-09 | 2012-01-12 | Martin Vorbach | Data processing device and method |
-
2015
- 2015-07-06 RU RU2015127125A patent/RU2614926C2/ru active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2084953C1 (ru) * | 1990-11-13 | 1997-07-20 | Интернэшнл Бизнес Машинз Корпорейшн | Параллельная процессорная система |
US5708836A (en) * | 1990-11-13 | 1998-01-13 | International Business Machines Corporation | SIMD/MIMD inter-processor communication |
US5717944A (en) * | 1990-11-13 | 1998-02-10 | International Business Machines Corporation | Autonomous SIMD/MIMD processor memory elements |
US5752067A (en) * | 1990-11-13 | 1998-05-12 | International Business Machines Corporation | Fully scalable parallel processing system having asynchronous SIMD processing |
US5822608A (en) * | 1990-11-13 | 1998-10-13 | International Business Machines Corporation | Associative parallel processing system |
US5963746A (en) * | 1990-11-13 | 1999-10-05 | International Business Machines Corporation | Fully distributed processing memory element |
US6106575A (en) * | 1998-05-13 | 2000-08-22 | Microsoft Corporation | Nested parallel language preprocessor for converting parallel language programs into sequential code |
US6292822B1 (en) * | 1998-05-13 | 2001-09-18 | Microsoft Corporation | Dynamic load balancing among processors in a parallel computer |
US20070105089A1 (en) * | 2001-10-25 | 2007-05-10 | Bar-Ilan University | Interactive transparent individual cells biochip processor |
WO2010043401A2 (en) * | 2008-10-15 | 2010-04-22 | Martin Vorbach | Data processing device |
WO2012003997A1 (en) * | 2010-07-09 | 2012-01-12 | Martin Vorbach | Data processing device and method |
Also Published As
Publication number | Publication date |
---|---|
RU2015127125A (ru) | 2017-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101809396B1 (ko) | 분산된 직접 상호 접속 네트워크에서 패킷을 라우팅하는 방법 | |
CN108400880B (zh) | 片上网络、数据传输方法和第一交换节点 | |
Liao et al. | Dpillar: Scalable dual-port server interconnection for data center networks | |
KR100259276B1 (ko) | 대역폭확장이 가능한 상호연결망 | |
KR20140139032A (ko) | 패킷플로우 상호연결 패브릭 | |
CN107612746B (zh) | 一种构建Torus网络的方法、Torus网络和路由算法 | |
US10050843B2 (en) | Generation of network-on-chip layout based on user specified topological constraints | |
WO2015066367A1 (en) | Network topology of hierarchical ring with recursive shortcuts | |
JP6254617B2 (ja) | 改良3dトーラス | |
RU2614926C2 (ru) | Мультипроцессорная система | |
CN116915708A (zh) | 路由数据包的方法、处理器及可读存储介质 | |
Kan et al. | The communication performance of BCDC data center network | |
Thamarakuzhi et al. | 2-dilated flattened butterfly: A nonblocking switching topology for high-radix networks | |
Bhardwaj et al. | A new fault tolerant routing algorithm for advance irregular alpha multistage interconnection network | |
Adamu et al. | Review of deterministic routing algorithm for network-on-chip | |
Zulkefli et al. | A efficacy of different buffer size on latency of network on chip (NoC) | |
Momeni et al. | Improved-XY: A High Performance Wormhole-Switched Routing Algorithm for Irregular 2-D Mesh NoC | |
Somisetty et al. | Regional Congestion Aware Odd Even Routing with Fair Arbitration for Network on Chip | |
Phing et al. | Towards high performance network-on-chip: A survey on enabling technologies, open issues and challenges | |
Momeni et al. | A low latency routing algorithm for irregular mesh network-on-chip | |
Khan | Performance Analysis of XY Routing Algorithm using 2-D Mesh (M x N) Topology | |
MM et al. | Dynamic communication performance of a hierarchical torus network under non-uniform traffic patterns | |
Huang et al. | SCautz: a high performance and fault-tolerant datacenter network for modular datacenters | |
Kochar et al. | nD-RAPID: a multidimensional scalable fault-tolerant optoelectronic interconnection for high-performance computing systems | |
Teh et al. | A design space exploration of the flexspander topology |