Научная статья на тему 'Производительность буферных асинхронных многоступенчатых сетей c произвольным числом приоритетных модулей памяти'

Производительность буферных асинхронных многоступенчатых сетей c произвольным числом приоритетных модулей памяти Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
65
12
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
функционирование многоступенчатых коммутирующих сетей / многопроцессорная система / MIMD-система / Multi-stage switching networks / multiprocessor system / MIMD-system

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Евграфов Вячеслав Николаевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Евграфов Вячеслав Николаевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Analytic model for performance analysis of buffered asynchronous multistage interconnection networks under non-uniform traffic

The analytic model for multistage interconnection network has been proposed in this paper. The model is used for evaluation of throughput and delay for asynchronous MIN in case of non-uniform traffic with arbitrary number of hot spots and randomly distributed packet’s length. Considered influence of buffer’s length on throughput, delay and system power of a MIN.

Текст научной работы на тему «Производительность буферных асинхронных многоступенчатых сетей c произвольным числом приоритетных модулей памяти»

УДК 004.713 В.Н. ЕВГРАФОВ

ПРОИЗВОДИТЕЛЬНОСТЬ БУФЕРНЫХ АСИНХРОННЫХ МНОГОСТУПЕНЧАТЫХ СЕТЕЙ С ПРОИЗВОЛЬНЫМ ЧИСЛОМ ПРИОРИТЕТНЫХ МОДУЛЕЙ ПАМЯТИ

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

Общая постановка проблемы

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

Анализ исследований и публикаций

Существующие результаты получены на основе математических моделей, построенных с использованием, преимущественно, вероятностных методов [2]. Такие модели могут быть применены только для многопроцессорных 81МБ-систем с синхронно работающими процессорами [3].

Однако наиболее значительный интерес представляют М1МБ-системы с работающими независимо друг от друга процессорами. Количество процессоров у таких систем нередко превышает десятки тысяч.

Для оценки производительности асинхронных коммутирующих сетей были построены математические модели с использованием теории очередей [3]. Недостаток предложенной в [3] модели состоит в ограниченности области ее применения. Модель применима только к системам с детерминированным временем коммутации пакетов и с не более чем одним приоритетным модулем памяти.

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

Задача исследования: 1) синтезировать математическую модель многоступенчатой коммутирующей сети, которая позволяет оценить пропускную способность и время отклика асинхронной коммутирующей сети до начала имплементации. Модель должна быть применима к системам с недетерминированным временем коммутации пакетов и произвольным числом приоритетных модулей памяти; 2) реализовать модель в виде программного обеспечения.

Функционирование многоступенчатых коммутирующих сетей

Многоступенчатая коммутирующая сеть состоит из множества переключающих элементов, организованных в виде последовательных ступеней (рис. 1). Процессорные элементы (РЕ) генерируют пакеты независимо друг от друга. Данное предположение справедливо для МТМБ-систем, где отдельный процессор управляется собственным потоком команд.

Рис. 1. Многоступенчатая коммутирующая сеть 8 х 8

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

Математическая модель

Модель строится на основе следующих предположений:

1) процессорные элементы генерируют пакеты независимо друг от друга с интенсивностью X согласно распределению Пуассона;

2) время, которое требуется переключающему элементу для перенаправления пакета на один из своих выходных каналов, пропорционально размеру пакета;

3) размер пакетов распределен согласно закону Эрланга;

4) каждый пакет равновероятно перенаправляется к любому модулю памяти;

5) в случае необходимости перенаправить более одного пакета на один выходной канал один из пакетов блокируется.

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

Введем следующие обозначения:

1) X - интенсивность генерации пакетов;

2) Ц - интенсивность перенаправления пакетов на выходные каналы;

3) Рк(Ь)- вероятность того, что в буфере размера Ь находится к пакетов;

4) Рк,в(Ь)- вероятность того, что в буфере размера Ь находится к пакетов и пакет, который перенаправляется на один из выходных каналов, находится в фазе 8 . 1 < 8 < г.

г

Очевидно, что Рк(Ь) = £ Рк8(Ь) .

8=1

Путь, который проходит пакет, удобно представить в виде последовательно соединенных друг с другом очередей. Уровень выходного потока предыдущей очереди равен уровню входного потока последующей очереди.

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

Введем дополнительные обозначения:

1) X; - интенсивность входного потока ступени ;;

2) Рк(Ь)(1)- вероятность нахождения к пакетов в буфере на ступени ;;

3) X; - вероятность блокировки пакета на ступени ;.

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

^ (1) = Ро(Ь) (1) • (1) + (1 - Ро(Ь) (1)) • % (1) , где (1) - функция распределения случайной величины Т;. Используя свойства линейных операторов, имеем: Е[т; ] = Р0(^ (1) • Е[т; | ф] + (1 - Р0(Ц (1)) • Е[т; | ф]. Далее находим, что

Е[Т;] = Р0Ь) (;) • (-1- + -) + (1 - Р0Ь) (;)) -1 х; Ц Ц "

В случае, когда последний отправленный пакет оставляет за собой пустой буфер, время следующей отправки пакета будет состоять из двух составляющих: времени, необходимого для поступления следующего пакета, и времени, необходимого для перенаправления пакета.

Так как интенсивность входного потока равна интенсивности выходного потока преды-

1 (1 - Х;)Х;Ц

дущей ступени, имеем: X ;+1 =

Е[т;] Р0(Ь)(;)^ + (1 -х;)х;

X Ь+1

Тк • Рк(Ь)(;)

Используя теорему Литла, получаем: Е[Т;] = -. Среднее время отклика

х;

сети рассчитывается как время пребывания пакета на ступени ;, просуммированное по всем ;. Пропускная способность сети рассчитывается как X; последней ступени.

Найдем выражение для Рк(Ь) (;). Воспользуемся результатами, приведенными в [4]:

ХХ1 XX , г в-1 1 ;

Р* = А (1 + А) • Р0, Рп,8 = А (1 + "ГЧ Т Рп-1,; -Т (—V) • Рп-1,;),

ГЦ

ГЦ ГЦ **ГЦ ГЦ ;=1 " ;=1 \ X

= X Г

= Т Рк-1,;, ГЦ ;=8

где Рп,8 - вероятность того, что в буфере находятся п пакетов и пакет в процессе переключения находится в фазе 8. 1 < п < К, 1 < 8 < Г.

СП Г

Используя эти результаты, имеем: Р^ ' = Т Рк8 .

8=1

Приоритетные модули памяти

В многопроцессорных системах поток пакетов распределяется между приоритетными модулями памяти. Это происходит вследствие того, что наиболее важные данные находятся на одном или нескольких модулях памяти. В результате происходит насыщение фрагмента многоступенчатой сети и общее падение производительности системы [5]. Для анализа производительности сети при работе с неравномерным трафиком расширим описанную выше модель.

Рассмотрим случай единственного приоритетного модуля памяти ММЬ . Методом половинного деления разобъем группу модулей памяти на подгруппы, пока в некоторой подгруппе не останется один модуль памяти ММЬ . Процессоры генерируют поток пакетов независимо друг от друга. Некоторая часть Ь0 сгенерированных пакетов направляется к приоритетному модулю памяти. Остальные пакеты, равномерно распределены между всеми модулями памяти.

Пусть процессоры генерируют пакеты с интенсивностью X о .

Этап 1. Обозначим через Х1 - интенсивность потока после прохождения первой ступени. Поток разделяется на два потока: один поток содержит пакеты как равномерно распределенные между всеми модулями памяти, так и предназначенные для приоритетного модуля памяти; второй поток содержит исключительно пакеты равномерно распределенные между всеми модулями памяти. Пусть X1} - интенсивность первого потока, X} -интенсивность второго потока.

Этап 2. Находим X1} и X}. X1} = Х1(1 - Ь0) + 2Ь0Х1, Х\ = Х1(1 - Ь0). Перепишем выражение для х1 . X1} = Х1(1 - Ь}) + Х11Ь1. Отсюда 11 = Х1 ^ Ь0) .

Х1

Этап 3. После прохождения второй ступени поток с пакетами для приоритетного модуля памяти расщепляется на два потока: X, и Хг2 . Находим X, и Хг2 ,

X, =Х 2(1 - Ь}) + 2Ь1Х 2, Хг2 =Х 2(1 - Ь}). Получаем X, =ХЬ2(1 - Ь2) + Х12Ь2, где

, =ХЬ2 -X 2(1 - Ь1) Ь2 = 1 .

А,2

Повторяем этап 3 до тех пор, пока получим интенсивность потока пакетов на последней ступени сети XI}.

Процедуру выполняем для каждой подгруппы модулей памяти. Пропускная способность сети равняется арифметическому среднему величин XI}, найденных для каждой подгруппы модулей памяти.

Применим данный метод для нахождения пропускной способности сети 8 х 8 с двумя приоритетными модулями памяти (см. рис. 1).

Разбиваем модули памяти на подгруппы : М0 :{ММ0,ММ1,ММ2,ММ3}, М1 :{ММ4}, М2 :{ММ5}, М3 :{ММ6}, М4 :{ММ7}. Модули памяти ММ4 и ММ7 из групп М1 и М 4 являются приоритетными с долей пакетов Ьо и соответственно. Оставшаяся часть пакетов (1 -Ь4 -Ь7) равномерно распределена между всеми модулями памяти. Необходимо найти X3 для каждой подгруппы:

1) М0: XM0 = X1(1 -Ь4 -Ь0), XM0 = X2, X?0 = X3.

2) М1: X?1 =X1(1 -Ь4 -Ь7) + 2Ь0X1 + 2Ь0X1;

xM1 = xM1 (1 - ь4 - Ь7)+xMlh14+xMlh7,

,4 = XM1 -Xl(l - Ь04 - Ь7) - 2Ь7 X! XM1 -Xl(l - Ь4 - Ь7) - 2Ь4 Xl

где 11 = Xм! , 111 =-Xм!-

XM1 = X2(1 -Ь4 -Ь7) + 2Ь4X2; X?! =xMlcMl +xMlh4,

где Ь9 =

хМ1 -X 2(1 - -

хМ1 -х^

3) М2:

4) М3:

хМ1

хМ2 = 2СМ1 х

С. =■

хМ21

хМ1 = 2Ь 2 х 3.

2 л3

хММ3 =х2(1 - И4 - ь7) + 2Ь7х2;

хМ3 = х х 2 = х

М3 М3 С

М31, 7

22

+ х 23ь

хМ3-х2(1 -ь4 -ь7)

где И2 =—-М-,

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

2 хМ3

хМ4 =2И2х3

М3 2

с. =

хМ3 -хМ3ь2

хМ23

хМ3 = 2сМ3 х 3

5) М^

6) х = -

4хМ0

+ хМ1

+ хМ +хМ4

8

Анализ производительности

Используем математическую модель для получения некоторых показателей производительности многоступенчатой коммутирующей сети, а именно: пропускной способности, времени отклика и системной производительности.

Влияние размера буфера на пропускную способность сети показано на рис. 2. При размере буфера в две ячейки насыщение сети происходит при входной интенсивности в 0.6. Дальнейшее увеличение интенсивности входного потока не приводит к увеличению интенсивности потока на выходе по причине блокировки пакетов.

При размере буфера в пять ячеек насыщение сети происходит медленнее. Если величина интенсивности входного потока пакетов для проектируемой системы не планируется быть больше 0.5, дальнейшее увеличение размера буфера не приведет к росту пропускной способности сети.

Рис. 2. Пропускная способность многоступенчатой сети 1024 х 1024 Для системы с размером буфера в девять ячеек увеличение интенсивности входного потока после 0.5 дает лишь незначительный прирост пропускной способности. Вместе с тем, время отклика сети увеличивается значительно (рис. 3).

Рис. 3. Время отклика многоступенчатой сети 1024 х 1024 Отдельно взятые пропускная способность и время отклика не являются достаточными показателями производительности системы. При возрастании пропускной способности и насыщении сети также увеличивается время отклика сети. Определим системную производительность как отношение пропускной способности к времени отклика сети.

Рис. 4. Производительность многоступенчатой сети 1024 х 1024

Из графика для системы с буфером на девять ячеек (рис. 4) делаем вывод, что размер буфера в девять ячеек оправдан для систем, ориентированных исключительно на пропускную способность, для которых время отклика не критично.

Выводы

Основные результаты. Разработан программный пакет, который позволяет оценить производительность асинхронной многопроцессорной системы и оптимизировать ее путем подбора оптимальных размеров буферов многоступенчатой коммутирующей сети.

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

Научная новизна. В данной работе обобщена модель, ранее предложенная в [3]. Впервые получена модель, которая применима к асинхронным многоступенчатым сетям с случайным временем коммутации, распределенным по закону Эрланга, и с произвольным числом приоритетных модулей памяти.

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

Список литературы: 1. J. Konicek, T. Tilton, et al, The organization of the Cedar system // Prac. Int' Conf. Parallel Processing, Aug. 1991.Р. 49-56. 2. Y. Mun andH. Y. Youn. Performance analysis of finite buffered multistage interconnection networks // IEEE Trans. Computers, Feb. 1994. Р. 153-162. 3. Prasant Mohapatra, Chita R. Das. Performance Analysis of Finite-Buffered Asynchronous Multistage Interconnection Networks, IEEE Transactions on Parallel and Distributed Systems, Vol. 7, No. 1. 1996. Р. 18-25. 4. El-Paoumy, On Truncated Erlangian Queuing Systems with State-Dependent Service Rate, Balking and Reneging, Applied Mathematical Sciences, Vol. 2. 2008. Р. 1161-1167. 5. Dickey S.R. and Percus O.E. Performance differences among combining switch architectures, Proc. I&Z, Conf. on Parallel Processing, Aug. 1992. Vol. 1. Р. 110-117.

Поступила в редколлегию 15.12.2008 Евграфов Вячеслав Николаевич, аспирант кафедры ПМ ХНУРЭ. Научные интересы: многопроцессорные системы, многоступенчатые сети. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 8(063)95-82-985.

УДК 681.325.53

Н.Я. КАКУРИН, С.Н. КОВАЛЕНКО, Ю.В. ЛОПУХИН, А.Н. МАКАРЕНКО

СПОСОБ ПОВЫШЕНИЯ БЫСТРОДЕЙСТВИЯ ПРЕОБРАЗОВАТЕЛЕЙ КОДОВ НА СЧЕТЧИКАХ

Предлагается способ повышения быстродействия преобразователей кодов на счетчиках с помощью параллельной стратегии использования шагов преобразования. Разрабатывается метод расчета числа тактов преобразования и программное обеспечение для его реализации.

1. Постановка задачи

Одношаговый преобразователь кодов по методу накопления эквивалентов обладает небольшими аппаратурными затратами, но требует К тактов на преобразование числа [1]. При более высоких требованиях к быстродействию применяют двухшаговые, трехшаго-вые и другие преобразователи кодов с большим числом различных преобразований шагов

[2-5].

Для максимального числа тактов преобразования N^f ПК дробных чисел в работах [1,2] была получена система формул

N^=K-1;

N2W=] (K-1 )/a[+a-1; (1)

N3 др=] (K-1)/b[+] (b-1)/a[+a-1;

N4w=] (K-1 )/c[+](c-1 )/b [+](b-1 )/a [+a-1; где К — основание системы счисления на входе; а, b, с - соответственно второй, третий и четвертый шаги преобразования (первый шаг преобразования равен 1); N^f , N/f , N3W , N4Af - максимальное число тактов преобразования соответственно одношагового, двухша-гового, трехшагового и четырехшагового ПК.

В процессе преобразования применяется стратегия последовательного использования шагов преобразования, т. е. показание разрядных счетчиков вначале уменьшается на величину наибольшего шага. Затем, если во всех разрядах значения цифр оказываются меньше величины наибольшего шага, происходит переход на меньший шаг; затем на последнем этапе преобразования происходит переход на первый шаг, равный 1, и преобразование выполняется до полного обнуления всех разрядных счетчиков.

Увеличение числа различных шагов преобразования целесообразно, если уменьшается максимальное число тактов преобразования. Из всех возможных значений шагов преобра-

i Надоели баннеры? Вы всегда можете отключить рекламу.