УДК 004.722
А.Ю. РОМАНОВ, асп., НТУУ "КПИ", Киев
СРАВНИТЕЛЬНЫЙ АНАЛИЗ ЭФФЕКТИВНОСТИ
ПСЕВДООПТИМАЛЬНОЙ И MESH ТОПОЛОГИЙ СЕТЕЙ НА
КРИСТАЛЛЕ С ИСПОЛЬЗОВАНИЕМ NETMAKER
Рассмотрены различные подходы к оптимизации подсистемы связи сетей на кристалле. Проведено моделирование псевдооптимальных и mesh топологий с 8-ю и 9-ю узлами с помощью System Verilog библиотеки Netmaker. Показано, что mesh топологии прямоугольного вида менее эффективны, чем квадратные; псевдооптимальные топологии обладают более высоким порогом насыщения по сравнению с mesh и при этом не имеют ограничений по количеству узлов. Ил.: 4. Библиогр.: 8 назв.
Ключевые слова: сеть на кристалле, моделирование псевдооптимальных и mesh топологий.
Постановка проблемы. Одной из основных тенденций развития современных систем на кристалле (СнК) является широкое использование сетевых решений (СтнК) [1 - 3]. СтнК - это множество вычислительных модулей, объединенных общей подсистемой связи, состоящей из роутеров и межсоединений. Подсистема связи СтнК занимает значительные ресурсы кристалла и является энергозатратной, что на фоне все возрастающих требований к ресурсоемкости и скорости передачи данных по сети обуславливает необходимость поиска оптимальных решений ее построения [4].
Анализ литературы. Оптимизация СтнК возможна в нескольких взаимосвязанных направлениях: в сторону увеличения пропускной способности сети, а также уменьшения транспортной задержки и затрат ресурсов на реализацию роутеров и межсоединений.
Транспортная задержка - это интервал времени между генерацией пакета и приемом его в пункте назначения. Данная характеристика во многом зависит от реализации роутеров. Пропускная способность - это максимальное количество данных, передаваемых по сети за единицу времени и ограниченных порогом насыщения, когда транспортная задержка пакетов возрастает в несколько раз.
В настоящее время наибольшее распространение получили СтнК с wormhole-управлением потоком, где пакет разбивается по ширине канала передачи на фрагменты - флиты, которые последовательно передаются по сети. Данный подход не требует буферизации всего пакета, а значит позволяет экономить ресурсы буферной памяти. Классические wormhole-роутеры применяются в сетях, например, на базе FPGA, где критичны используемые ресурсы [1]. Тем не менее, данный подход имеет большой недостаток - высокую вероятность блокировки головного флита
(deadlock) и взаимоблокировок пакетов, что может привести к полной остановке функционирования сети.
Группой ученых во главе с В. Дэлли [4] предложена схема wormhole-роутера с виртуальными каналами. Суть данного подхода состоит в том, что одному физическому каналу ставятся в соответствие несколько параллельных очередей - виртуальных каналов на входных портах роутеров. Это позволяет уменьшить штраф из-за блокировки головы колонны в одном из виртуальных каналов, т.к. по остальным передача продолжается. В то же время с введением виртуальных каналов увеличиваются ресурсные затраты на дополнительные очереди и мультиплексоры каналов, а также задержка на роутере. Кроме того, результаты моделирования, проведенного вышеуказанными авторами, показали, что увеличение количества виртуальных каналов оказывает положительный эффект на пропускную способность только в определенных пределах [2]. Это обусловлено тем, что виртуальные каналы разделяют один физический канал. В связи с этим предложена оптимизация роутера с виртуальными каналами (маршрутизатор с параллельной архитектурой и с прогнозированием), позволяющая уменьшить транспортную задержку [5].
Дальнейшим усовершенствованием сетей с виртуальными каналами может быть использование специализированных роутеров с конфигурируемым количеством виртуальных каналов в зависимости от загруженности той или иной линии связи и отсутствующими незадействованными портами.
Другим способом увеличения пропускной способности сети является увеличение ширины каналов (обычно в разных реализациях выбирают ширину канала от 8 до 32 бит), однако это вызывает увеличение ресурсных затрат на соединительные линии и буферную память [1].
Заслуживает внимания и реализация роутера с агрегацией каналов -здесь вместо виртуальных каналов используются несколько физических соединений, объединенных в одно логическое (транк). Данный подход позволяет экономить на буферной памяти под очереди виртуальных каналов и позволяет в 1.5 раза увеличить пропускную способность сети по сравнению с виртуальными каналами, но приводит к увеличению расхода ресурсов на организацию соединений в несколько раз [3].
Таким образом, оптимизация СтнК в сторону увеличения пропускной способности путем усовершенствования роутеров или расширения емкости каналов связи неизбежно приводит к увеличению затрат ресурсов (в первую очередь, на соединительные линии). В тоже время, данные ресурсы также ограничены, и существует потребность в
ISSN 2079-0031 Вестник НТУ "ХПИ", 2012, № 38
оптимизации сетей и в этом направлении. Один из способов -уменьшение разрядности физических соединительных линий путем установки на входе и на выходе сериализаторов/десериализаторов, которые разбивают флиты на пфиты и последовательно их передают. Для того чтобы не было дополнительной задержки, каналы передачи обычно тактируются на более высокой, чем роутеры, частоте - так, чтобы для роутеров передача происходила за 1 такт [7]. Данный подход достаточно сложен в реализации и требует дополнительных затрат ресурсов на реализацию передачи пфитов.
Кроме структуры роутеров и алгоритма управления потоком данных, на эффективность СтнК оказывает большое влияние ее топология. В общем случае топология СтнК представляет собой неориентированный связный граф, состоящий из вершин - роутеров и ребер - физических линий связи между ними. Топология описывает, каким образом роутеры соединены между собой. Основными характеристиками топологии являются: количество вершин-роутеров (N); количество ребер - физических соединений между роутерами (Ed); степень вершины - количество ребер, исходящих из нее (St); диаметр графа - максимум среди минимальных расстояний между любыми двумя вершинами (D); среднее расстояние среди наиболее коротких путей между всеми узлами графа (Lav) [1, 4].
Наиболее распространенной является mesh топология, представляющая собой сеть из N = m n (обычно N = nn) узлов, каждый из которых соединен с четырьмя соседними (рис. 1). Крайние узлы
имеют незадействованные порты. Характеристики сети: D = 2 • (JN -1),
Ed = 2 • (N -JN) , а St = 2-4, т.е. между роутерами в противоположных углах сети, например, размером 3*3 расстояние составляет 4 хопа.
а б
Рис. 1. Mesh топологии СтнК вида 3x3 и 2x4
Несмотря на широкое использование mesh топологий СтнК, обусловленное тем, что они легко масштабируются, имеют простую структуру и алгоритмы маршрутизации, им присущ и ряд недостатков, среди которых: в классическом виде mesh топологии позволяют
реализовать только "квадратные” сети с количеством узлов, равным натуральным числам в степени 2 (4, 9, 16, 25, ...); имеется возможность строить прямоугольные сети вида m n, что приводит к увеличению диаметра сети, а создать сеть, например, из 11 роутеров не представляется возможным; перегруженность центральных роутеров в mesh сетях из-за особенностей XY-алгоритма маршрутизации; большой диаметр mesh сетей, что негативно сказывается на качестве обслуживания; наличие других ограничений, связанных с особенностями реализации сетей mesh.
В работе [7] предложен новый подход, основанный на использовании при построении СтнК нерегулярных топологий, оптимизированных по критерию минимизации среднего расстояния между роутерами и количества соединений в условиях ограничения диаметра и максимального числа портов роутеров. Предложенное решение позволяет синтезировать ряд псевдооптимальных топологий СтнК с любым количеством узлов [7]. При этом отсутствие для них алгоритмов маршрутизации решается использованием таблиц маршрутизации, а повышение вероятности deаdlock-ов компенсируется применением whormhole-роутеров с виртуальными каналами.
Результаты компьютерного моделирования. Для оценки эффективности предложенных псевдооптимальных топологий относительно mesh использована System Verilog библиотека с открытым исходным кодом Netmaker (Р. Муллинз) [5, 8]. С этой целью сгенерированы mesh-сети размером 4*2 и 3*3 (рис. 1), а также, путем модификации модуля построения связей между узлами и модуля маршрутизации, синтезированы сети из 8-ми и 9-ти узлов с псевдооптимальной топологией и диаметром 2 хопа (рис. 2).
Рис. 2. Пседооптимальная топологии СтнК с 8-ю и 9-ю вершинами
В Netmaker используются whormhole-роутеры с четырьмя внешними и одним локальным портами [5, 8]. При этом каждый внешний порт содержит четыре виртуальных канала, а локальный порт связан с генератором-потребителем трафика, имитирующим работу
вычислительного IP-ядра. Пакеты размером в 10 флит инжектируются в сеть генераторами трафика с заданной интенсивностью, выбор узла назначения выполняется случайным образом. С начала моделирования каждый источник трафика генерирует по 1100 пакетов, первые 100 из которых используются для достижения установившегося режима. Размер буферов виртуальных каналов составляет 4 флита. Окончанием моделирования считается прием всех отправленных пакетов в пунктах назначения. Моделирование проводилось при различной интенсивности введения флитов в сеть (If = Nj/NJNn, где Nf - количество флитов, введенных за время моделирования; Nc - число циклов, Nn - количество узлов в сети) в среде ModelSim 6.5 на персональном компьютере Asus K40AB. Для множественного прогона модели при различных значениях нагрузки на сеть созданы специальные bash-скрипты, которые запускаются из среды Cygwin, эмулирующей работу Unix-системы под управлением Windows XP. Построение графиков и обработка результатов моделирования выполнялось в среде MathCad 12.
На рис. 3 приведены полученные зависимости между транспортной задержкой и приложенной нагрузкой для сетей с mesh и псевдооптимальной топологией для 8 и 9 узлов.
2000
1900
1S00
1700
Ф1600 1»
73 1500 0,1400 3 1300
0,1200
В g 1100
£ 1000 §
X роо
^ S00
о 700
g. 600
^ 500
400
300
200
100 1Щ
Рис. 3. Зависимость транспортной задержки от приложенной нагрузки
Для наглядности вертикальная ось линейная (рис. 3) и логарифмическая (рис. 4). Из полученных графиков видно, что порог насыщения для СтнК с псевдооптимальной топологией выше, чем у mesh сети. Кроме того, порог насыщения для сети mesh с 8-ю узлами оказался ниже, чем у mesh с 9-ю узлами. Это обусловлено большим диаметром и малой шириной сечения mesh сети из 8-ми узлов из-за использования неоптимальной топологии прямоугольной формы.
а. мо3
I
I
6-
+- Н" pservc
о9
в- ■S psevd о8
4
//j
0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0.54
Приложенная нагрузка (flits/cycles/nodes)
Рис. 4. Зависимость транспортной задержки от приложенной нагрузки
Минимальная транспортная задержка для моделируемых сетей не превышает 20-ти циклов, исходя из чего осуществлен выбор порогового значения в 200 циклов. Линейной интерполяцией графиков функций получены пороговые значения приложенной нагрузки для mesh c 8-ю (0.447) и 9 ю (0.453) узлами, а также псевдооптимальной топологией с 8-ю (0.478) и 9-ю (0.465) роутерами. Таким образом, применение предложенных псевдооптимальных топологий обеспечивает прирост порога насыщения для сетей с 8-ю и 9-ю узлами соответственно на 7.1% и 2.7%.
Выводы. Сравнительный анализ эффективности mesh и псевдооптимальной топологий СтнК показал: использование
предложенных псевдооптимальных топологий обеспечивает прирост порога насыщения сетей, по сравнению с mesh, от 2.7% до 7.1%;
применение неоптимальной прямоугольной топологии mesh свидетельствует о том, что mesh топологии актуальны только для сетей квадратной формы, в то время как псевдооптимальные топологии применимы и эффективны для СтнК с любым количеством узлов.
Список литературы: 1. Moraes F. HERMES: an Infrastructure for Low Area Overhead Packet-switching Networks on Chip / F. Moraes, N. Calazans, A. Mello // Integration, the VLSI Journal. -2004. - Vol. 38. - No. 1. - P. 69-93. 2. Mello A. Virtual channels in networks on chip: implementation and evaluation on Hermes NoC / A. Mello, L. Tedesco, N. Calazans, F. Moraes // Proc. 18th SICSD. - NY, USA, 2005. - P. 178-183. 3. KorotkiyE.V. Link aggregation in networks on chip / E.V. Korotkiy, O.M. Lysenko, M.O. Tereshin // Прикладная радиоэлектроника. - 2011.- № 3 (10). - С. 330-336. 4. Dally W. Virtual-channel flow control / W. Dally // IEEE Trans. on Parallel Distrib. Syst. - 1992. - Vol. 3. - No. 2. - P. 194-205. 5. Mullins R. The design and implementation of low-latency on-chip network / R. Mullins, A. West, S. Moore // Proc. of 11 ASPDAC. - Japan, 2006. - P. 164-169. 6. Ogg S. Serialized Asynchronous Links for NoC / S. Ogg, E. Valli, B. Al-Hashimi, L. Benini. - DATE. - Southampton, 2008. -P. 1003-1008. 7. Романов А.Ю. Оптимизация топологий сетей на кристалле / А.Ю. Романов // Вісник НТУ "ХПІ". - Х.: НТУ "ХПІ", 2011. - № 36. - С. 149-155. 8. Fully-synthesizable parameterized NoC implementations library: Netmaker, http://www-dyn.cl.cam.ac.uk/
~rdm34/wiki.
Статью представил д.т.н., проф. НТУУ "КПИ" Лысенко А.Н.
УДК 004.722
Порівняльний аналіз ефективності псевдооптимальної та mesh топологій мереж на кристалі з використанням Netmaker / Романов О.Ю. // Вісник НТУ "ХПІ". Серія: Інформатика та моделювання. - Харків: НТУ "ХПІ". - 2012. - № 38. - С. 156 - 162.
Розглянуто різні підходи до оптимізації підсистеми зв'язку мереж на кристалі. Проведено моделювання псевдооптімальних і mesh топологій з 8-ма і 9-ма вузлами за допомогою System Verilog бібліотеки Netmaker. Показано, що топології mesh прямокутного виду менш ефективні, ніж квадратні; псевдооптімальні топології мають більш високий поріг насичення порівняно з mesh і при цьому не мають обмежень на кількість вузлів. Іл.: 4. Бібліогр.: 8 назв.
Ключові слова: мережа на кристалі, моделювання псевдооптімальних і mesh топологій.
UDC 004.722
The Comparative Analysis of Efficiency of Pseudo-optimal and Mesh Topologies of
Networks on Chip, Using Netmaker / Romanov A.Y. // Herald of the National Technical University "KhPI". Subject issue: Information Science and Modelling. - Kharkov: NTU "KhPI". -2012. - №. 38. - P. 156 - 162.
The different approaches to the optimization of network communications subsystem on a chip are considered. The mesh and pseudo-optimal topologies with 8 and 9 nodes using System Verilog library Netmaker are modelled. It is shown, that mesh topologies of rectangular form are less efficient, than square ones; pseudo-optimal topologies have a higher threshold of saturation compared to the mesh and they have no restrictions on the number of nodes. Figs.: 4. Refs.: 8 titles.
Keywords: network on chip, pseudo-optimal topology, model.
Поступила в редакцию 15.03.2012