Спросить
Войти
Категория: Математика

Оптимизация топологий сетей на кристалле

Автор: Романов А.Ю.

УДК 004.722

А.Ю. РОМАНОВ, аспирант каф. КЭВА НТУУ "КПИ", г. Киев

ОПТИМИЗАЦИЯ ТОПОЛОГИЙ СЕТЕЙ НА КРИСТАЛЛЕ

Рассмотрены классические топологии построения СтНк и их основные достоинства и недостатки. Предложен и реализован программно алгоритм поиска оптимальных топологий в соответствии с ограничениями по диаметру и максимальной степени вершин с оптимизацией по количеству соединений и среднему расстоянию. Синтезированы оптимальные топологии для количества вершин от 6 до 10. Ил.: 3. Табл.: 1. Библиогр.: 8 назв.

Постановка проблемы. Благодаря стремительному развитию электроники, сети на кристалле (СтНк) получили широкое распространение [1]. СтНк - это множество вычислительных модулей, объединенных общей подсистемой связи, состоящей из роутеров и соединений между ними. Подсистема связи СтНк занимает значительные ресурсы кристалла и является энергоемкой, что обуславливает необходимость поиска оптимальных решений при ее построении [1 - 3]. Важной характеристикой СтНк является ее топология, определяющая структуру роутеров, алгоритм маршрутизации, и затраты ресурсов.

Анализ литературы. В общем случае топология СтНк представляет собой неориентированный связный граф, состоящий из вершин -роутеров и ребер - физических линий связи между ними. Основными характеристиками топологии являются: количество вершин-роутеров (N); количество ребер - физических соединений между роутерами (Ed); степень вершины - количество ребер, исходящих из нее (St); диаметр графа - максимум среди минимальных расстояний между любыми двумя вершинами (D); среднее расстояние среди наиболее коротких путей между всеми узлами графа (Lav). Чем ниже Ed, тем меньше ресурсные затраты, а чем меньше Lav и D, тем быстрее пакеты достигают цели [1, 3].

Наиболее распространенной является mesh топология, представляющая собой сеть из N = m*n (обычно N = n*n) узлов, каждый из которых соединен с четырьмя соседними (рис. 1a). Крайние узлы

имеют незадействованные порты. Характеристики сети: D = 2 х (4N -1).

Ed = 2х(N-4N), а St = 2 - 4 [3, 4]. Главным недостатком mesh топологии является слишком большой диаметр. Попыткой устранить его за счет больших ресурсных затрат является топология torus, полученная путем соединения крайних узлов mesh с противоположными (рис. 1б).

Здесь

но Ed = 2 хN, а St = 4 [3, 5]. Некоторой

модификацией является вложенный torus (рис. 1в), призванный уменьшить длину соединительных линий между крайними узлами [3, 6].

Альтернативой torus является плоский hypercube (рис. 1г) [3, 5]. Ed = 2 х N, St = 4, а D = log2 N, но при этом N может быть не степенью натуральных чисел (4, 9, 16,..), как у torus и mesh, а кратной 4 (12, 16,..).

Еще одна перспективная топология spidergon представляет собой размещение узлов в виде кольца с дополнительными соединениями между противоположными узлами (рис. 1д) [3]. Характеристики

топологии: D = N /4, Ed = 1,5 х N, St = 3. Здесь Ed и St меньше, а значит и уменьшены ресурсные затраты, но D больше, в сравнении с torus.

Следует упомянуть и полносвязную архитектуру, где все узлы связаны непосредственно друг с другом. Минимальный диаметр D = 1, достигается за счет перерасхода ресурсов: Ed = N*(N-1)/2, St = N-1 [1, 5].

Другие топологии, как WK-recursive, chordal ring, diametrical mesh, звезда, граф Бруи и т. п. распространены меньше [1 - 6].

Отдельный класс представляют собой многостадийные топологии, к ним относят: omega сети, перестановочные сети, сети Клоса и др. Наиболее известной среди них является топология butterfly fat tree (BFT), где роутеры одинаковой размерности (к) объединены в дерево, а вычислительные блоки подключены к роутерам нижнего уровня (рис. 1е). Для N вычислителей необходимо L = logkN уровней, и N/2I+1 роутеров на каждом i-м уровне. Данная топология характеризуется

малым диаметром D = 2 х L, но при этом Ed = к х ^ (N/2г+1) [3, 6].

Рис. 1. Топологии СтНк

Исходя из анализа существующих реализаций, наибольшее распространение получили древовидные и тороидальные топологии благодаря простоте своей структуры и алгоритмов маршрутизации. Тем не менее, они не лишены и недостатков. Так в ВБТ существует только один путь между двумя узлами, а соединения имеют большую длину. Главный недостаток тороидальной топологии - в относительно большом диаметре. Кроме того, разработчики сталкиваются с разного рода ограничениями, связанными с особенностями самих топологий [1, 3 - 6]. Отсюда следует цель статьи - поиск новых оптимальных по ресурсозатратам и быстродействию топологий СтНк.

Оптимизация типичных топологий. Рассмотрим тороидальную сеть из 9 узлов (рис. 2а). Ее характеристики: Её:Б:8(тах - 18:2:4. Не сложно увидеть, что если убрать 2 ребра (рис. 2б), то параметры не изменятся: 16:2:4. При дальнейшем анализе можно синтезировать еще более оптимальный граф (рис. 2в): 14:2:4. То есть, в результате несложных действий получена топология с на 22% меньшим расходом ресурсов на соединения, при котором Б сети остался неизменным.

а б в

Рис. 2. Усовершенствование топологии torus 3x3

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

N, х^ у

расстояние Lav =

1

где H

- минимальное

расстояние между двумя узлами [3]. Ьау для всех трех анализируемых топологий составляет величину 1,6667. То есть, уменьшение количества соединений не повлекло потери производительности сети в целом. Более того, существует топология с параметрами 14:2:4 (рис. 3г), где Ьау = 1.6111, что обеспечивает на 3% лучшую пропускную способность.

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

т.д., которая будет иметь характеристики выше, чем у классических топологий. Единственным недостатком такой топологии будут более сложные алгоритмы маршрутизации, но эта проблема решается с помощью адаптивных алгоритмов и таблиц маршрутизации [7, 8].

Поиск оптимальной топологии сети с заданными параметрами.

Очевидно, что задача поиска оптимальной топологии сети является многопараметрической, и тривиального решения не имеет. Для представления топологического графа в цифровом виде нами предлагается описывать граф топологии в виде матрицы связей между инцидентными вершинами. Матрица связей имеет размер п х п, и на пересечении столбца х и строки у размещается 1, если х и у вершины связаны, и 0, в противном случае. Матрица симметрична с 0-ми на главной диагонали. При таком представлении сумма всех единиц строки является степенью вершины с номером у. Поэтому реализация процедуры проверки максимальной степени вершины не представляет сложности.

Для вычисления Нх у предложена рекурсивная процедура поиска,

накапливающая 1-цы в вектор-строке вершины х, соответствующие инцидентным вершинам до достижения ограничения по Б, или появления 1-цы, на позиции, соответствующей вершине у. Возвращается длина минимального пути или 0, если достигнуто ограничение по диаметру. Данная процедура является основой для процедур поиска диаметра графа и среднего расстояния между вершинами.

Поиск оптимальной топологии сети с заданными параметрами предлагается выполнять методом перебора: формируется пробная

топология и проверяется на соответствие ограничениям. Если достигается более оптимальное значение какого-либо параметра, данная топология запоминается и поиск продолжается до тех пор, пока не закончатся все возможные варианты. Общее количество вариантов равно:

2 = 2^ х2^2 х...х21 = |2і .

Таким образом, для N = 9 узлов количество альтернатив 1 = 68.719.476.736 - сравнительно большое значение, требующее слишком много вычислительных ресурсов. Для 10 узлов цифра возрастет в 29 раз. Поэтому предусмотрены различные условия, позволяющие отбрасывать заведомо неоптимальные комбинации. Так, например, очевидно, что вектор строка не может содержать все "0", а значит такие

топологии можно не рассматривать. Это позволяет отбросить | 12і

комбинаций. Можно отбрасывать те комбинации, где степень вершины или количество соединений превышает допустимое значение. Кроме того, можно задавать ограничения в диапазоне поиска. Так, возвращаясь к задаче с 9-ю узлами, на основании имеющейся torus-топологии (рис. 2а), можно сформулировать следующие ограничения: существует топология с Ed = 18 - верхнее ограничение, нижнее можно выбрать зная Ed = 10 для топологии с 8 вершинами; Stmax= 4, а Stmin = 2; L = 1,6667.

av, max ’

Введение ограничений и механизма отбрасывания заведомо неоптимальных вариантов позволило получить оптимальные топологии для количества вершин от 6 до 10, с оптимизацией по количеству соединений, среднему расстоянию и ограничениями по диаметру и максимальной степени вершин. Расчет выполнялся на ПК Asus K40AB (AMD Athlon(tm) X2 QL-65, 2099 МГц, SDRAM 2Gb) (табл., рис. 3).

Таблица. Результаты поиска оптимальной топологии сети

N 6 7 8 9 10

D 2 2 2 2 2

St 2-4 2-4 2-4 3-4 3-4

Ed 7 9 11 14 17

Lav 1.53333 1.57143 1.60714 1.61111 1.62222

Время поиска, мкс 31 516 34437 303922 54796173

Кол-во циклов 180 1890 10080 90720 669802396

Матрица связей 011000 100100 100011 010011 001100 001100 0110000 1001000 1000111 0100111 0011000 0011000 0011000 01100000 10011000 10000111 01001100 01010011 00110000 00101000 00101000 011100000 101010000 110001100 100000011 010000011 001000110 001001001 000111000 000110100 0111000000 1010100000 1100011000 1000000111 0100000111 0010001100 0010010011 0001110000 0001101000 0001101000

а б в г д

Рис. 3. Оптимальные топологии сетей с 6 - 10 вершинами

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

Поиск оптимальной топологии для сети с 10 вершинами занял время, приблизительно эквивалентное 15 ч. 13 мин. Поиск топологий с большим количеством узлов на персональном компьютере невозможен. Перспективным представляется расчет таких задач на вычислительном кластере или с помощью СтНк, где ресурсоемкие процедуры реализованы в виде аппаратных ускорителей к процессорным узлам.

Выводы. Рассмотрены классические топологии построения СтНк и их основные недостатки. Показано, что существует возможность построения более оптимальных топологий, как по расходу ресурсов, так и по среднему расстоянию, необходимому для прохождения пакетов. Предложен и реализован программно алгоритм поиска оптимальных топологий в соответствии с ограничениями по диаметру и максимальной степени вершин и оптимизацией по количеству соединений и среднему расстоянию. Синтезированы оптимальные топологии для количества вершин от 6 до 10 и показано, что с увеличением количества вершин сложность вычислений для персонального компьютера становится чрезмерно большой. Перспективным направлением дальнейших исследований является расчет топологий для большего количества вершин с помощью вычислительного кластера и СтНк.

Список литературы: 1. Axel J. Networks on Chip / J. Axel, T. Hannu // Kluwer Academic Publishers. - Dordrecht, 2003. - 303 p. 2. Benini L. Network-on-chip architectures and design methods / L. Benini, D. Bertozzi // Computers and Digital Techniques. - IEEE Proc., 2005. -Vol. 152. - №. 2. - Р. 261-272. 3. Dally W. J. Principles and practices of interconnection networks / W. J. Dally, B. Towles. - Elseiver, 2004. - 550 p. 4. Suboh S. An interconnection architecture for network-on-chip systems / S. Suboh, M. Bachouya, J. Gabe, T. El-Ghazawi // Telecommunication Systems. - Springer, 2008. - Vol. 37. - Р. 137-144. 5. SaldanaM. The Routability of Multiprocessor Network Topologies in FPGAs / M. Saldana, L. Shannon, P. Chow. // SLIP’06. - NY: 2006. 6. Balfour J. Design Tradeoffs for Tiled CMP On-Chip Networks / J. Balfour, W. J. Dally. // ICS’06. - ACM press, 2006. 7. Bjerregaard T. A survey of research and practices of NoC / T. Bjerregaard, S. Mahadevan // ACM Computing Surveys. - 2006. -Vol. 38 (1). 8. Ладыженский Ю.В. Моделирование алгоритмов маршрутизации в сетях на кристалле / Ю.В. Ладыженский, В.А. Мирецкая // Наукові праці ДНТУ. Серія: Інформатика, кібернетика та обчислювальна техника. - Донецьк: ДНТУ, 2008. - С. 79-87.

Статья представлена д.т.н., проф. НТУУ "КПИ" Лысенко А.Н.

УДК 004.722

Оптимізація топологій мереж на кристалі / Романов О.Ю. // Вісник НТУ "ХПІ". Тематичний випуск: Інформатика і моделювання. - Харків: НТУ "ХПІ". - 2011. - N° 36. -С. 149 - 155.

Розглянуто класичні топології побудови МНк і їх основні переваги і недоліки. Запропоновано та реалізовано програмно алгоритм пошуку оптимальних топологій відповідно до обмежень по діаметру і максимальному ступені вершин з оптимізацією за кількістю з&єднань і середньою відстанню. Синтезовано оптимальні топології для кількості вершин від 6 до 10. Іл.: 3. Табл.: 1. Бібліогр.: 8 назв.

Ключові слова: мережа на кристалі, оптимальна топологія.

UDC 004.722

Optimization of topologies of networks on chip / Romanov O.Y. // Herald of the National Technical University "KhPI". Subject issue: Information Science and Modelling. -Kharkov: NTU "KhPI". - 2011. - № 36. - P. 149 - 155.

The main advantages and disadvantages of classical topologies of networks on chip (NoC) are considered. The algorithm for finding optimal topologies in accordance with the restrictions on the diameter and maximum degree of optimization on the number of connections and the average distance proposed and implemented in software. The optimized topologies for the NoCs with the number of nodes between 6 and 10 synthesized. Figs: 3. Tables: 1. Ref.: 8 titles.

Поступила вредакцию 15.07.2011

СЕТЬ НА КРИСТАЛЛЕ ОПТИМАЛЬНАЯ ТОПОЛОГИЯ МЕРЕЖА НА КРИСТАЛі ОПТИМАЛЬНА ТОПОЛОГіЯ network on chip optimal topology
Другие работы в данной теме:
Контакты
Обратная связь
support@uchimsya.com
Учимся
Общая информация
Разделы
Тесты