Методика сокращения аппаратных затрат в сложных системах при решении задач с существенно-переменной интенсивностью потоков данных

Раздел VI. Аппаратно-программные средства обеспечения безопасности

УДК 004.432

А.И. Дордопуло, ДА. Сорокин

МЕТОДИКА СОКРАЩЕНИЯ АППАРАТНЫХ ЗАТРАТ В СЛОЖНЫХ СИСТЕМАХ ПРИ РЕШЕНИИ ЗАДАЧ С СУЩЕСТВЕННО-ПЕРЕМЕННОЙ ИНТЕНСИВНОСТЬЮ ПОТОКОВ ДАННЫХ*

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

Реконфигурируемые вычислительные системы; сокращение аппаратных затрат; ре.

A.I. Dordopulo, D.A. Sorokin

A METHODOLOGY OF HARDWARE OVERHEAD DECREASE IN COMPLEX SYSTEMS WHILE SOLVING TASKS WITH CONSIDERABLY VARIABLE

DATA FLOW DENSITY

The article covers a methodology of multicriterion reduction of hardware overheads based on well-known methods of overhead reduction by number of performed operations, by processed operands capacity, by off-duty factor and frequency. The developed methodology, in principle, makes possible to solve problems with considerably variable data flow density in a single computational resource. Usage of this methodology provides a considerable multiple gain in speed for the problem with considerably variable data flow density for reconfigurable computer systems.

Reconfigurable computer systems; hardware overhead decrease; performance reduction.

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

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

*

Исследования выполнены при финансовой поддержке Министерства образования и науки РФ, госконтракт № 14.527.12.0004 от 03 октября 2011 г.

нально законченных преобразований. В то же время существует большой класс , -2-4 .

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

Главная особенность этих задач состоит в том, что размер потока данных в их вычислительной структуре заранее не определен и зависит от самих обрабаты-.

, ,

,

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

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

.

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

к

дачи, состоящей из к подзадач Р, должно выполняться условие ^ N(Р) < Ь, где

1=1

ЩР) - объем ресурса, затрачиваемого на реализацию подзадачи Р. Зачастую объем аппаратного ресурса РВС много больше объема ресурса вычислительной структуры базового подграфа задачи. Можно рассчитать максимальную степень распа-

к

раллеливания базового подграфа I = Ь / ^ N

1=1

Если ресурса РВС недостаточно для реализации даже одного базового подграфа (1<1), то, согласно традиционным методам программирования РВС, такую задачу структурно реализовать невозможно. Однако это умозаключение справед-, ( ) ( ).

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

п п

А = ^ N(Р) = ^ £ • N(р;), № - объем ресурса, затрачиваемого на реализацию

;=1 ;=1

базового подграфа р( подзадачи Р,£ - число базовых подграфов подзадачи Р;.

Традиционно для сокращения аппаратных затрат А на реализацию базового подграфа задачи выполнялась г-кратная редукция числа базовых подграфов £ всех

п

подзадач Р{. аг = ^[[ / г] • N(р-) • Этот прием применим для задач, у которых 1=1

выполняется условие VI: £ > г . В противном случае редукция по числу базовых

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

Производительность вычислительной структуры Ш прямо пропорциональна

п

общему количеству операций задачи: ш ^К •Ш1 • у, где К - число операций

; =1

базового подграфа подзадачи Р;, Ш; - ширина потока данных подзадачи Р, -

скорость обработки потока данных в подзадаче Р;. Ширина потока данных рассчитывается по формуле Ш{ = £ • р{, где р; - разрядность обрабатываемых операндов. Скорость обработки потока данных в подзадаче рассчитывается по формуле

V = / Si, где V; - тактовая частота работы вычислительной структуры подзадачи

Р;, Si - скважность потока данных на входе подзадачи базового подграфа.

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

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

структуры может быть осуществлено на коэффициент редукции г' > г. Несложно , -шением числа базовых подграфов подзадачи £, но и сокращением числа операций базового подграфа подзадачи К;, разрядности обрабатываемых операндов р;, тактовой частоты работы вычислительной структуры подзадачи и увеличением скважности потока данных на входе подзадачи базового подграфа Si• Следует от, -ществлены на одинаковую величину, но не обязательно должны быть редуцированы одинаковые параметры в разных подзадачах.

В [3] подробно описаны методы сокращения аппаратных затрат при решении задач на РВС, среди которых можно отметить следующие наиболее часто применяемые на практике методы:

♦ редукция по числу в ыполняемых операций;

♦ редукция по разрядности обрабатываемых операндов;

♦ редукция по скважности и частоте.

,

затраты РВС при структурном решении задачи по единому критерию. Особенно это характерно для задач с существенно-переменной интенсивностью потоков .

, .

. -

навливается в начальное состояние (а=0).

На первом этапе необходимо оценить аппаратные затраты А на реализацию базового подграфа задачи. Если аппаратные затраты не превышают имеющийся ресурс РВС (А0 < Ь), то можно выполнять её структурную реализацию. В противном случае необходимо выполнять сокращение аппаратных затрат на реализацию базового подграфа задачи. Для этого рассчитывается начальное значение коэффициента редукции гс 1 = А / ь[ .

На втором этапе необходимо осуществить редукцию аппаратных затрат для всех I подзадач исходного базового подграфа задачи с коэффициентом г“. Для г'-й подзадачи сначала пытаемся осуществить редукцию по числу базовых подграфов подзадачи £. Если г“ < £, то значение числа базовых подграфов г'-й редуцированной

подзадачи составит £ = £ / га . В противном случае при г“>£ редукция г'-й подзадачи по £ с коэффициентом г“ невозможна, поэтому выполняем редукцию с коэффициентом, рав ным£, а затем переходим к процессу редукции следующими :

,

г;=г» / £.

В общем случае неизвестно, каким из двух данных методов эффективнее .

, , , -рядности выполняемых операций р;, а потом по количеству выполняемых операций К. Если обрабатываются данные с плавающей запятой, то порядок применения этих методов может быть обратным. Для простоты рассуждений будем считать, что приоритет для редукции по р;. Тогда при г*<р; выполняем редукцию по разрядности, которая составит р\ = р / г£. При г/ > р; редукция г'-й подзадачи по р; с коэффициентом г/ невоз можна, поэтому переходим к редукции по К;. Снова рассчитывается новое значение коэффициента редукции г» = г£ /р{. При г/ <К;

выполняем редукцию по количеству операций, которое составит К\ = К1 / г». При гра >К; редукция г'-й подзадачи по количеству операций с коэффициентом гра не.

, -

задачи снижение аппаратных затрат при редукции по разрядности обрабатываемых операндов и редукции по числу операций происходит нелинейно. Поэтому параметры рг и К редуцируются не максимально, а до каких-то значений р" = ф(р{, г») и К" = ф(К1, г»), при которых аппаратные затраты минимальны.

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

есть для остаточного коэффициента редукции г» = г» / Кг выполняется условие

гК >1, .

При этом сугубо эмпирическим путем определяем, по какому именно из этих па-

раметров применяем редукцию, исходя из свойств решаемой задачи (подзадачи). Затем переходим к редукции следующей подзадачи, и процесс повторяется до тех , .

На третьем этапе после выполнения редукции всех i подзадач необходимо оценить аппаратные затраты Ar на реализацию редуцированного базового подграфа задачи. Если Ar< L, то процесс редукции базового подграфа задачи заканчивается, иначе счетчик итераций а наращивается на 1. Вычисляется значение модифицированного коэффициента редукции r“+1 = r“ + Ar, где Ar - заранее заданное приращение . i-

Vi: fi  Ki  Pi > r“+1.

Если условие (3) не выполняется для всех подзадач, то редукция аппаратных затрат невозможна и соответственно, структурная реализация задачи на РВС с ресурсом L не может быть осуществлена. В этом случае целесообразно увеличивать аппаратный ресурс РВС.

(1) , -должать выполнять редукцию аппаратных затрат, начиная со второго этапа. Про, Ar L -

вышено наперед заданное число итераций.

, -вания аппаратного ресурса РВС при решении задачи необходимо стремиться к ,

базового подграфа стремилась к максимуму при Ar~ L.

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Каляев И А., Левин И.И.,Семерников Е.А.,Шмойлов В.И. Реконфигурир уемые мульти-конвейерные вычислительные структуры / Под общ. ред. И.А. Каляева. - Ростов-на-Дону: Изд-во ЮНЦ РАН, 2008. - 320 с.

2. Каляев А.В., Левин ИМ. Модульно-наращиваемые многопроцессорные системы со структурно-процедурной организацией вычислений. - М.: ООО «Изд-во Янус-К», 2003. - 380 .

3. Сорокин Д.А.,Левин И.И.,Дордопуло А.И.,Мельников ^.Я'.Решение задач с существенно-переменной интенсивностью потоков данных на реконфигурируемых вычислитель// . - .: -

строение, 2012. - № 2. - С. 24.

Статью рекомендовал к опубликованию д.т.н., профессор Я.Е. Ромм.

Дордопуло Алексей Игоревич - Учреждение Российской академии наук «Южный научный центр РАН»; e-mail: scorpio@mvs.tsure.ru; 344006, г. Ростов-на-Дону, пр. Чехова, 41; тел.: 88634315491; отдел информационных технологий и процессов управления; к.т.н.; старший научный сотрудник.

Сорокин Дмитрий Анатольевич - Научно-исследовательский институт многопроцессор-

. . . ; e-mail:

jotun@inbox.ru; 347928, г. Таганрог, ул. Чехова, 2; тел.: 88634315491; научный сотрудник.

Dordopulo Alexey Igorevich - Southern Scientific Centre of the Russian Academy of Sciences; e-mail: scorpio@mvs.tsure.ru; 41, Chekhov aven.; Rostov-on-Don, 344006, Russia; phone: +78634315491; cand. of eng. sc.; senior scientist.

Sorokin Dmitry Anatolievich - Scientific-Research Institute Multiprocessing Computing Systems after Kalyaev of South Federal University; e-mail: jotun@inbox.ru; 2, Chekhov street, Taganrog, 347928, Russia; phone: +78634315491; scientific associate.

УДК 004.272.22

Ю.И. Доронченко

ПРОЦЕДУРА МЕЖИТЕРАЦИОННОЙ РЕДУКЦИИ ЗАДЕРЖЕК ДЛЯ КОНВЕЙЕРНОЙ РЕАЛИЗАЦИИ РЕКУРСИВНЫХ ВЫЧИСЛЕНИЙ*

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

Конвейерные вычисления; защита информации; рекурсивные вычисления; редукция,

.

Y.I. Doronchenko

PROCEDURE OF INTER-ITERATION REDUCTION OF DELAYS FOR PIPELINE RECURSIVE CALCULATIONS

The paper covers the method of reduction of hardware resource needed for pipeline recursive calculations in computationally laborious algorithms of information security. For the first time the author has shown effectiveness of application of the suggested method in reconfigurable computer systems. The developed procedure of inter-iteration reduction provides minimal recursive constraints for time distributed calculations and reduction of synchronization costs from 1.3 up to 6 times. Besides, it helps to increase specific performance of pipeline recursive calculations for reconfigurable computer system.

Pipeline calculations; information security; recursive calculations; reduction; synchronization.

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

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

*

Исследования выполнены при финансовой поддержке Министерства образования и науки РФ, госконтракт № 14.527.12.0004 от 03 октября 2011 г.