2022 Прикладная теория графов № 58
УДК 519.87 DOI 10.17223/20710410/58/9
ЭФФЕКТИВНЫЙ АЛГОРИТМ ПОИСКА КРАТЧАЙШИХ ПУТЕЙ В ПЛОТНЫХ ГАУССИАНСКИХ СЕТЯХ1
Э. А. Монахова, О. Г. Монахов
Институт вычислительной математики и математической геофизики СО РАН,
г. Новосибирск, Россия
E-mail: [email protected], [email protected]
Для семейства плотных Гауссианских сетей вида C(D2 + (D + 1)2; D, D + 1) как перспективной топологии сетей на кристалле предложен алгоритм поиска кратчайших путей между вершинами графа, использующий относительную адресацию вершин и позволяющий в отличие от ряда известных алгоритмов рассчитать кратчайшие пути без использования координат соседних нулей решетки в плотной укладке графов на плоскости Z2. Это сокращает затраты памяти и времени выполнения по сравнению с другими алгоритмами при реализации данного алгоритма в сетях на кристалле с топологией плотной Гауссианской сети.
Ключевые слова: плотные Гауссианские сети, циркулянтные графы, кратчайшие пути, сети на кристалле.
EFFECTIVE ALGORITHM FOR FINDING SHORTEST PATHS IN DENSE GAUSSIAN NETWORKS
E. A. Monakhova, O.G. Monakhov
Institute of Computational Mathematics and Mathematical Geophysics SB RAS, Novosibirsk,
Russia
As a promising topology of networks on a chip, we consider a family of Dense Gaussian Networks, which are optimal circulant degree four graphs of the form C(D2 + (D + 1)2; D, D + 1). For this family, an algorithm for finding the shortest paths between graph vertices is proposed, which uses relative addressing of vertices and, unlike a number of the known algorithms, allows to calculate the shortest paths without using the coordinates of neighboring lattice zeros in a dense tessellation of graphs on the Z2 plane. This reduces the memory and execution time costs compared to other algorithms when the new algorithm is implemented on a network-on-chip with a Dense Gaussian Network topology.
Keywords: Dense Gaussian Networks, circulant graphs, shortest paths, networks on a chip.
Введение
Плотные Гауссианские сети [1-7], далее — DGNs (Dense Gaussian Networks), относятся к классу циркулянтных сетей [8-10] и представляют собой семейство оптимальных циркулянтных графов вида C(Nd; D,D + 1) степени четыре и диаметра D ^ 1
1 Работа поддержана проектом ИВМиМГ СО РАН №0251-2021-0005.
с числом вершин ND = D2 + (D + 1)2 и образующими s1 = D и s2 = D + 1. Графы данного семейства достигают максимально возможного числа вершин для заданного диаметра (расстояния между наиболее удалёнными друг от друга вершинами графа) и являются лучшими по диаметру и среднему расстоянию среди всех решётчатых графов степени четыре с таким же числом вершин, включая двумерные торы (2D torus) и двумерные решётки (2D mesh) [11]. Это вместе с вершинной симметрией и регулярностью связей позволяет рассматривать их как перспективную топологию для сетей на кристалле (Networks-on-Chip, NoC). В частности, DGNs могут вмещать больше узлов в одной и той же области чипа по сравнению с другими сетчатыми структурами. В [1, 2] плотные Гауссианские сети рассмотрены в качестве топологии для NoC, получена схема их оптимальной вложимости в чип без пересечения связей и разработаны иерархические двухуровневые структуры для NoC, в основе которых лежат плотные Гауссианские сети.
При проектировании сетей на кристалле важным этапом является разработка подсистемы связей, в том числе эффективных алгоритмов маршрутизации. В работах [1, 2] предложен алгоритм маршрутизации для DGNs, основанный на использовании координат всех соседних нулей решётки в плотной укладке (plane tessellation) графов семейства на плоскости Z2 для определения кратчайших путей между вершинами. При этом применяются операции суммирования относительных координат пары вершин «источник — приёмник» с координатами всех соседних нулей и последующее сравнение полученных сумм на минимум /1-нормы, где /1-норма определена как расстояние в двумерной целочисленной решётке Z2 [12]. Алгоритмы такого типа предложены как альтернатива методам маршрутизации из [13, 14], использующим деление Евклида с высокой вычислительной стоимостью.
В алгоритме маршрутизации из [1, 2] при определении кратчайших путей используются все девять соседних нулей; в алгоритме маршрутизации для Гауссианских сетей из [4] необходимое количество используемых соседних нулей сокращено до четырёх, но при этом также требуется найти минимум расстояний до четырёх нулей. В [15, 16] метод использования координат соседних нулей решётки при получении кратчайших путей между вершинами расширен для применения в оптимальных циркулянтных сетях степени четыре с любым числом вершин N ^ 5. При этом при поиске кратчайших путей в зависимости от значения N используется девять или семь соседних нулей. Отметим также работу [17], в которой рассмотрен аналогичный алгоритм маршрутизации для семейства циркулянтных графов с числом вершин N = 2D2, где диаметр D — нечётное число, а количество используемых соседних нулей равно семи, и работы [5-7, 11, 18], в которых рассмотрены другие типы обменов либо другие подходы к построению алгоритмов маршрутизации в плотных Гауссианских сетях.
Из анализа алгоритмов маршрутизации [11, 15, 19, 20], реализованных в сетях на кристалле с двумерной циркулянтной топологией, следует, что критичными показателями для NoC наряду с задержкой передачи пакетов являются затраты ресурсов памяти и логических регистров. Как показано в [15], алгоритмы маршрутизации из [1, 2] и аналогичные им в [4, 15-17] , основанные на суммировании с координатами всех соседних нулей решётки и сравнении полученных /1-норм (длин путей), требуют больших ресурсов памяти NoC для хранения промежуточных вычислений с большим количеством затратных по времени операций присваивания и взятия абсолютной величины, и, таким образом, отсутствие операций деления не является решающим фактором для NoC.
В настоящей работе получен алгоритм поиска кратчайших путей в плотных Гаус-сианских сетях константной сложности 0(1), модифицированный по сравнению с [1, 2, 4, 15-17, 21], который для любой пары вершин «источник — приёмник» определяет кратчайший путь (пути) между ними непосредственно по их координатам относительно нулевой вершины: 1) без использования суммирования координат со всеми соседними нулями решётки и последующего сравнения на минимум длин полученных путей; 2) с меньшим количеством операций присваивания и взятия абсолютной величины при отсутствии операций деления.
1. Алгоритм поиска кратчайших путей в плотных Гауссианских сетях
Пусть в циркулянтном графе C(ND; D,D + 1), D ^ 1, (x,y) —координаты вершины u (далее — «источник») относительно вершины 0, а именно: x определяет число шагов вдоль образующей s1 (—s1), а y — число шагов вдоль образующей s2 (—s2) в кратчайшем пути из 0 в u. Аналогично определяются (x',y') —координаты вершины v (далее — «приёмник») относительно вершины 0. Требуется определить координаты (X, Y) — вектора кратчайшего пути между ними. Отметим, что вектор кратчайшего пути задаёт множество кратчайших путей между вершинами, отличающихся порядком прохождения образующих графа.
На рис. 1 показан фрагмент плотной укладки циркулянтного графа C(Nd; D, D + 1) на плоскости Z2. Пример дан для D = 3. Область ромба RD = {(x, y) Е Z2 : |x| + |y| ^ ^ D} с нулевой вершиной Z0 = (0, 0) соответствует рассматриваемому циркулянтному графу (графу DGN). Каждой клетке решётки (x,y) может быть сопоставлен номер вершины m = xD + y(D + 1) mod ND. Номера вершин графа 0 ^ m < ND повторяются на плоскости бесконечное число раз, формируя плотную укладку. Восемь соседних с Rd ромбов получены трансляцией ромба Rd на плоскости. Центральные нули для соседних ромбов обозначены через ±Z1; ±Z2 и их комбинации. Для графов DGNs известны координаты относительно Z0 соседних нулей:
Z1 = (-D - 1, D), Z2 = (D, D + 1),
из которых могут быть получены координаты других соседних нулей, например
Z1 + Z2 = (-1, 2D + 1), -Z1 + Z2 = (2D + 1,1).
В [1, 2] доказано следующее утверждение: чтобы вычислить кратчайший путь из вершины (x,y) в вершину (x',y'), достаточно найти суммы относительного вектора (x' — x,y' — y) с координатами девяти нулей Z0, ±Z1, ±Z2, ±(Z1 + Z2), ±(Z1 — Z2) и сравнить полученные векторы на минимум длины пути.
Новый подход к разработке алгоритма поиска кратчайших путей для семейства графов DGNs заключается в следующем. Мы не используем суммирования с координатами всех соседних нулей и сравнения полученных результатов. Для этого всё множество N = Nd вершин циркулянта DGN относительно вершины Z0 = (0, 0) разбиваем на четыре непересекающихся множества (квадранта), основанных на адресе источника, с числом вершин, равным D(D + 1)/2. Обозначим эти множества через Qi, i = 1,... , 4 (рис. 2). Условия принадлежности источника (x, y), где |x|, |y| ^ D, к одному из этих квадрантов следующие:
Q1 = {(x,y) Е Z2 : -y ^ x < y}, Q2 = {(x,y) Е Z2 : -x < y ^ x}, Q3 = {(x,y) Е Z2 : y < x ^ -y}, Q4 = {(x, y) Е Z2 : x ^ y < -x}.
Рис. 1. Фрагмент плотной укладки графа С(Жд; О, О + 1) на плоскости Ж2
Рис. 2. Разбиение циркулянта С(Жд; О, О + 1) на квадранты Qi, г = 1,..., 4, по адресу источника
При попадании источника и = (х, у) в один из квадрантов Qi, г =1,..., 4, в зависимости от того, где находится приёмник V = (х',у'), |х'|, |у'| ^ О, ромб Кд с центром в Z0 в общем случае также разбивается на четыре множества вершин соответственно тому, до какого из соседних нулей решётки оказывается ближе приемник V.
Сначала рассмотрим случай, когда (х,у) Е Ql. На рис. 3 показан фрагмент укладки циркулянта С(41; 4,5) диаметра О = 4 на плоскости Ж2 и соседние нули Zo, Z1, Z2, Z1 + Z2, ближайшие для любого источника (х,у) Е Q1. Пример дан для источника и
(обозначен знаком «•») с координатами (х,у) = (—1, 3) относительно Z0. В ромбе Кд с центром в Z0 разными цветами и римскими цифрами обозначены: I — приёмники, находящиеся на расстоянии не более О от и и относящиеся соответственно к Z0; II — приёмники, для которых ближайшим нулём из источника и является Z1; III — приёмники, для которых ближайший нуль Z1 + Z2; IV — приёмники, для которых ближайший нуль Z2.
Рис. 3. Источник (х,у) Е Q1
Условия принадлежности приёмников V = (х' , у') к соответствующим ближайшим соседним нулям находим из соотношений между У = у' — у и X = х' — х, задающих границы областей. Для всех приёмников, относящихся к Z0, имеем у' — у + О ^ х' — х, у' — у + О ^ х — х' (равенства достигаются на левой или правой границах области I), что равносильно условию |у' — у| + |х' — х| ^ О. Для приёмников, ближайших к Z1 из и, имеем х — х' < у' — у + О < х' — х; для приёмников, ближайших к Z2 из и, — х' — х — 1 ^ у' — у+О < х — х'; для оставшихся приёмников, принадлежащих области III, ^ + Z2 — ближайший нуль из и. Отсюда следует
Утверждение 1. Пусть в графе С; О, О + 1) с диаметром О > 1 даны вершины и = (х, у) и V = (х',у') = и, такие, что |х| + |у| ^ О, |х'| + |у'| ^ О и у > х, у ^ —х. Тогда вектор кратчайшего пути из и в V имеет следующий вид:
если |х' — х| + |у' — у| ^ О, если х — х' < у' — у + О < х' — х, если х' — х — 1 ^ у' — у + О<х — х', в остальных случаях.
Здесь и далее операции типа (X, У) ± Zi, г = 1, 2, означают сложение соответствующих координат векторов.
Для вершин, находящихся на границе Q1, из утверждения 1 следует: если для источника (х, у) выполняется у = —х, — [О/2] ^ х ^ —1, то Z2 не является ближайшим нулём ни для какой вершины (х', у'); если для источника (х, у) выполняется у = х + 1, 0 ^ х < [О/2], то Z1 + Z2 не является ближайшим нулём ни для какой вершины
(х',у').
Теперь, зная, как определяются векторы кратчайших путей в любой приёмник из источника, принадлежащего Q1, можем получить для источников, принадлежащих Qi,
(Х,У)
(х' — х,у' — у),
(х' — х, у' — у) + Zl, (х' — х, у' — у) + Z2, к (х' — х, у' — у) + Zl + Z2
г = 2, 3, 4, векторы кратчайших путей в любой приёмник с помощью соответствующих ротаций источника (направление ротаций показано стрелкой на рис.2), приёмника и соседних нулей. На рис.2 отмечены знаком «•» вершины (у, —х) = (3,1) Е (—х, —у) = (1, —3) Е и (—у, х) = (—3, —1) Е $4, полученные ротацией источника (х,у) = (—1, 3) Е $1. Рис.4 даёт пример распределения вершин приёмников по областям, относящимся к ближайшим соседним нулям для источника и с координатами (3,1), принадлежащего В ромбе Яд с центром в разными цветами и римскими цифрами обозначены: I — приёмники, находящиеся на расстоянии не более О от и и относящиеся соответственно к II — приёмники, для которых ближайшим нулем из и является III — приёмники, для которых ближайший нуль — это — IV — приёмники, для которых ближайший нуль —
Рис. 4. Источник (x,y) Е Q2
Таким образом, по аналогии с утверждением 1 для источников (х, у) Е получаем Утверждение 2. Пусть в графе С; О, О + 1) диаметра О > 1 даны вершины и = (х, у) и V = (ж', у') = и, такие, что |х| + |у| ^ О, |х'| + |у'| ^ О и — х < у ^ х. Тогда вектор кратчайшего пути из и в V имеет следующий вид:
'(x' - x,y' - y),
(X, Y)
если |x' - x| + |y' - y| ^ D,
(x' - x, y' - y) - Z1, если y' - y - D > x' - x и y' - y + D + 1 ^ x - x',
(x' - x, y' - y) + Z2, если y' - y - D<x' - x и y' - y + D<x - x',
(x' - x, y' - y) - Z1 + Z2 в остальных случаях.
Аналогично определяются векторы кратчайших путей между вершинами, когда источник находится в Q3 или Q4. Согласно полученным результатам, разработан алгоритм RDGN (Routing in Dense Gaussian Networks) поиска кратчайших путей в плотных Гауссианских сетях (алгоритм 1).
Алгоритм 1. ИВОК— поиск кратчайших путей в плотных Гауссианских сетях
Вход: (х, у) —источник; (х',у') —приёмник; О — диаметр графа. Выход: (X, У) —вектор кратчайших путей из (х,у) в (х',у'). 1: X := х' — х; У := у' — у. 2: Если IX| + |У | > О, то
// пп. 3-7— источник в квадранте Q1
3: Если (у > х)&(у ^ —х), то 4: Если (У + X< —О) & (У — X ^ —О — 1), то (^У) := (^У) + Z2,
5: иначе
6: Если (У + X> —О) & (У — X< —О), то
(^У) := (^У) + Zl, 7: иначе (X, У) := (X, У) + Z1 + Z2,
8: иначе // пп. 9-13 — источник в квадранте Q2
9: Если (у ^ х)&(у > —х), то 10: Если (У + X< —О)&(У — X<D), то
(X,У) := (^У) + Z2, 11: иначе
12: Если (У + X ^ —О — 1)&(У — X>D), то
(X, У) := (X, У) — 13: иначе (X, У) := (X, У) + Z2 — Z1,
14: иначе //пп. 15-19 — источник в квадранте Qз
15: Если (у < х)&(у ^ —х), то
16: Если (У + X>D)&(Y — X ^ О + 1), то
(X,У) := (X,У) — Z2, 17: иначе
18: Если (У + X<D)&(Y — X>D), то
(^У) := (X,У) — Zl, 19: иначе (X, У) := (X, У) — Z1 — Z2,
20: иначе //пп. 21-24 — источник в квадранте Q4
21: Если (У + X>D)&(Y — X> —О), то
(^У) := (X,У) — Z2, 22: иначе
23: Если (У + X ^ О + 1)&(У — X< —О), то
(X,У) := (^У) + Zl 24: иначе (X, У) := (X, У) — Z2 + Z1.
Корректность работы алгоритма RDGN проверена для плотных Гауссианских сетей с числом вершин от 13 до 2521 на множестве всех пар вершин «источник — приёмник» в системе Wolfram Mathematica 10 сравнением полученных кратчайших путей с результатами работы алгоритма Дейкстры [22].
2. Оценки алгоритма поиска кратчайших путей
Приведём некоторые теоретические оценки алгоритма RDGN. Используемое количество переменных: четыре входных ж, y, ж', y', две выходных X, Y и глобальная переменная D. Для плотных Гауссианских сетей диаметр D = |_\/N/2J. Кроме того, |ж|, |y|, |ж'|y'|, |X|Y| ^ D. Для хранения D в маршрутизаторе требует-
ся [log21_\/N/2J] битов. Для хранения входных и выходных переменных добавляем по одному биту для знака и получаем: общее количество необходимой памяти в битах для хранения переменных в алгоритме RDGN равно m = 7[iog2 L\/n72J1 + 6. Таким образом, по сравнению с алгоритмом поиска кратчайших путей из [1, 2] происходит более чем трёхкратное уменьшение требуемой памяти. Алгоритм RDGN также требует меньше ресурсов памяти в NoC по сравнению с [15-17] за счёт меньшего количества переменных, используемых для его работы.
Число операций разных типов, применяемых в алгоритме RDGN, приведено в таблице. Показаны минимальное (min) и максимальное (max) значения числа операций при исполнении алгоритма и среднее время выполнения одной операции в наносекундах, найденное в [15] (при подсчёте использовался язык программирования C#, процессор Intel Core i5-6500).
Операция N = & + - X <, >, >
Время, нс 6,436 2,978 0,655 0,770 0,672 0,722 0,692 2,530
min/max 2/2 2/4 0/5 2/8 1/12 0/0 1/11 0/0
По сравнению с алгоритмами поиска кратчайших путей в плотных Гауссианских сетях из [1, 2, 4,15-17, 21] алгоритм RDGN выполняет больше операций сравнения, но намного меньше затратных по времени операций взятия абсолютной величины (|а|) и присваивания (=) (например, в 8 раз меньше, чем в алгоритме 1 из [1]) и, в отличие от алгоритмов из [4, 21], не использует операций деления
Кроме того, моделирование парных обменов в сети типа «каждый — каждому», проведённое для плотных Гауссианских сетей с числом вершин 13 ^ N0 ^ 313, показало следующий результат: условие |Х| + |V| ^ Д алгоритма выполняется в 52-56% случаев пар «источник — приёмник», а это означает минимальное число исполняемых операций алгоритма RDGN и соответственно минимальное время его работы. На рис. 5 приведены результаты моделирования. Параметр Л означает отношение числа пар «источник— приёмник» с ^-нормой, меньшей или равной диаметру, к общему числу пар вершин плотных Гауссианских сетей с числов вершин N.
0.560
0.555
0.550
0.545
0.540
50
100
150
200
250
300
Рис. 5. Относительное сокращение числа операций алгоритма ИБОК при выполнении условия |Х| + |У| ^ В
А
N
Заключение
Для семейства плотных Гауссианских сетей, как перспективной топологии сетей на кристалле по сравнению с 2D torus и 2D mesh, предложен новый алгоритм поиска
кратчайших путей между вершинами графа, использующий относительную адресацию вершин и позволяющий, в отличие от ряда известных алгоритмов маршрутизации, рассчитать кратчайшие пути без суммирования с координатами всех соседних нулей в плотной укладке графов на плоскости. Теоретические оценки алгоритма подтверждают уменьшение затрат памяти и времени выполнения при реализации в сети на кристалле по сравнению с известными алгоритмами маршрутизации, реализованными в NoC. В будущем планируется апробация разработанного алгоритма в сети на кристалле и экспериментальное сравнение его оценок памяти и эффективности с другими алгоритмами маршрутизации, а также исследование возможности расширения разработки аналогичных алгоритмов маршрутизации для любого числа вершин графов семейства оптимальных двумерных циркулянтов [10], к которому плотные Гауссиан-ские сети принадлежат по определению.
ЛИТЕРАТУРА
1. Martinez C., Vallejo E., BeivideR., et al. Dense Gaussian networks: Suitable topologies for on-chip multiprocessors // Intern. J. Parallel Programming. 2006. V. 34. P. 193-211.
2. Martinez C., Vallejo E., Moreto M., et al. Hierarchical topologies for large-scale two-level networks // XVI Jornadas de Paralelismo, Granada, Spain, September 2005. https:// citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.149.7372.
3. Martinez C., Beivide R., Stafford E., et al. Modeling toroidal networks with the Gaussian integers // IEEE Trans. Computers. 2008. V. 57. No. 8. P. 1046-1056.
4. Flahive M. and Bose B. The topology of Gaussian and Eisenstein — Jacobi interconnection networks // IEEE Trans. Parall. Distrib. Syst. 2010. V.21. No. 8. P. 1132-1142.
5. Pay K.-J., Yang J.-S., Chen G.-Y., and Chang J.-M. Configuring protection routing via completely independent spanning trees in Dense Gaussian On-Chip Networks // IEEE Trans. Netw. Sci. Eng. 2022. V.9. No. 2. P. 932-946.
6. Touzene A. On all-to-all broadcast in dense Gaussian network on-chip // IEEE Trans. Parall. Distrib. Syst. 2015. V.26. No. 4. P. 1085-1095.
7. Alsaleh O., Bose B., and Hamdaoui B. On-to-many node-disjoint paths routing in dense Gaussian networks // Computer J. 2015. V. 58. No. 2. P. 173-187.
8. Bermond J.-C., Comellas F., and Hsu D. F. Distributed loop computer networks: a survey // J. Parallel Distrib. Comput. 1995. No. 24 (1). P. 2-10.
9. Hwang F. K. A survey on multi-loop networks // Theor. Comput. Sci. 2003. V. 299. P. 107-121.
10. Монахова Э. А. Структурные и коммуникативные свойства циркулянтных сетей // Прикладная дискретная математика. 2011. №3(13). С. 92-115.
11. Monakhova E. A., Romanov A. Y., and LezhnevE.V. Shortest path search algorithm in optimal two-dimensional circulant networks: Implementation for Networks-on-Chip // IEEE Access. 2020. V.8. P. 215010-215019.
12. Zerovnik J. and Pisanski T. Computing the diameter in multiple-loop networks // J. Algorithms. 1993. V. 14. P. 226-243.
13. Gomez D., Gutierrez J., Ibeas A., et al. On finding a shortest path in circulant graphs with two jumps // LNCS. 2005. V.3595. P. 777-786.
14. Cai J. Y., Havas G., Mans B., et al. On routing in circulant graphs // LNCS. 1999. V. 1627. P. 360-369.
15. Monakhova E. A., Monakhov O. G., and Romanov A. Yu. Routing algorithms in optimal degree four circulant networks based on relative addressing: Comparative analysis for
Networks-on-Chip // IEEE Trans. Network Science and Engineering. 2022. https:// ieeexplore.ieee.org/document/9910381.
16. Monakhova E. and Monakhov O. A generalized routing algorithm for a family of optimal 2D circulant networks based on relative addressing // Proc. 17th Inter. Asian School-Seminar (OPCS-21), Novosibirsk, Russia. 2021. P. 55-59.
17. Jha P. K. Dimension-order routing algorithms for a family of minimal-diameter circulants // J. Inter. Networks. 2013. V. 14. No. 1. P. 1350002 (24 pages).
18. Монахова Э. А. Поиск кратчайших путей в оптимальных двумерных циркулянтах // Прикладная дискретная математика. 2020. №47. С. 87-100.
19. Romanov A. Y. Development of routing algorithms in networks-on-chip based on ring circulant topologies // Heliyon. 2019. V. 5. Iss.4. Article e01516.
20. Romanov A. Y., LezhnevE.V., Glukhikh A.Y., and Amerikanov A. A. Development of routing algorithms in networks-on-chip based on two-dimensional optimal circulant topologies // Heliyon. Jan. 2020. V.6. No. 1. Art. No.e03183.
21. Camarero C., Martinez C., and Beivide R. L-networks: A topological model for regular two-dimensional interconnection networks // IEEE Trans. Computers. 2013. V. 62. No. 7. P. 1362-1375.
22. Dijkstra E. W. A note on two problems in connexion with graphs // Numer. Math. 1959. V. 1. No. 1. P. 269-271.
REFERENCES
1. Martinez C., Vallejo E., Beivide R., et al. Dense Gaussian networks: Suitable topologies for on-chip multiprocessors. Inter. J. Parallel Programming, 2006, vol.34, pp. 193-211.
2. Martinez C., Vallejo E., Moreto M., et al. Hierarchical topologies for large-scale two-level networks. XVI Jornadas de Paralelismo, Granada, Spain, September 2005. https:// citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.149.7372.
3. Martinez C., Beivide R., Stafford E., et al. Modeling toroidal networks with the Gaussian integers. IEEE Trans. Comput., 2008, vol.57, no. 8, pp. 1046-1056.
4. Flahive M. and Bose B. The topology of Gaussian and Eisenstein — Jacobi interconnection networks. IEEE Trans. Parall. Distrib. Syst., 2010, vol.21, no. 8, pp. 1132-1142.
5. Pay K.-J., Yang J.-S., Chen G.-Y., and Chang J.-M. Configuring protection routing via completely independent spanning trees in Dense Gaussian On-Chip Networks. IEEE Trans. Netw. Sci. Eng., 2022, vol.9, no. 2, pp. 932-946.
6. Touzene A. On all-to-all broadcast in dense Gaussian network on-chip. IEEE Trans. Parall. Distrib. Syst., 2015, vol.26, no. 4, pp. 1085-1095.
7. Alsaleh O., Bose B., and Hamdaoui B. On-to-many node-disjoint paths routing in dense Gaussian networks. Computer J., 2015, vol. 58, no. 2, pp. 173-187.
8. Bermond J.-C., Comellas F., and HsuD.F. Distributed loop computer networks: a survey. J. Parallel Distrib. Comput., 1995, no. 24(1), pp. 2-10.
9. Hwang F. K. A survey on multi-loop networks. Theor. Comput. Sci., 2003, vol.299, pp.107-121.
10. Monakhova E. A. Strukturnye i kommunikativnye svoystva tsirkulyantnykh setey [Structural and communicative properties of circulant networks]. Prikladnaya Diskretnaya Matematika, 2011, no. 3(13), pp. 92-115. (in Russian)
11. Monakhova E. A., Romanov A. Y., and LezhnevE.V. Shortest path search algorithm in optimal two-dimensional circulant networks: Implementation for Networks-on-Chip. IEEE Access, 2020, vol.8, pp. 215010-215019.
12. Zerovnik J. and Pisanski T. Computing the diameter in multiple-loop networks. J. Algorithms, 1993, vol. 14, pp. 226-243.
13. Gomez D., Gutierrez J., Ibeas A., et al. On finding a shortest path in circulant graphs with two jumps. LNCS, 2005, vol.3595, pp. 777-786.
14. CaiJ.Y., Havas G., Mans B., et al. On routing in circulant graphs. LNCS, 1999, vol.1627, pp. 360-369.
15. Monakhova E. A, Monakhov O. G., and Romanov A. Yu. Routing algorithms in optimal degree four circulant networks based on relative addressing: Comparative analysis for Networks-on-Chip. IEEE Trans. Network Science and Engineering. 2022. https:// ieeexplore.ieee.org/document/9910381.
16. Monakhova E. and Monakhov O. A generalized routing algorithm for a family of optimal 2D circulant networks based on relative addressing. Proc. 17th Intern. Asian School-Seminar (OPCS-21), Novosibirsk, Russia, 2021, pp. 55-59.
17. Jha P. K. Dimension-order routing algorithms for a family of minimal-diameter circulants. J. Inter. Networks, 2013, vol. 14, no. 1, pp. 1350002 (24 pages).
18. Монахова Э. А. Poisk kratchajshih putej v optimal'nyh dvumernyh cirkulyantah [Search for the shortest paths in optimal two-dimensional circulants]. Prikladnaya Diskretnaya Matematika, 2020, no. 47, pp. 87-100. (in Russian)
19. Romanov A. Yu. Development of routing algorithms in networks-on-chip based on ring circulant topologies. Heliyon, 2019, vol.5, iss.4, article e01516.
20. Romanov A. Y., LezhnevE.V., Glukhikh A. Y., and Amerikanov A. A. Development of routing algorithms in networks-on-chip based on two-dimensional optimal circulant topologies. Heliyon, 2020, vol.6, no. 1, art. no.e03183.
21. Camarero C., Martinez C., and Beivide R. L-networks: A topological model for regular two-dimensional interconnection networks. IEEE Trans. Computers, 2013, vol. 62, no. 7, pp. 1362-1375.
22. Dijkstra E. W. A note on two problems in connexion with graphs. Numer. Math., 1959, vol. 1, no. 1, pp.269-271.