Современные вычислительные технологии и их аппаратные платформы
6.6. Факторы, ограничивающие коэффициент распараллеливания вычислений
Условия эксплуатации технотронных комплексов космического базирования, ориентированных на решение глобальных задач телекоммуникаций и связи, разведки полезных ископаемых, мониторинга земной и водной поверхности для нужд экологии, сельского хозяйства, добычи рыбы и т. д., таковы, что к их вычислительным системам предъявляется наиболее полный и противоречивый перечень требований. В результате, который качество бортовых вычислительных систем (БВС) оценивается наиболее комплексным показателем [173]:
( 6.2) |
который учитывает:
- - эффективную производительность БВС (операций/с);
- - время наработки на 1 отказ (часов);
- - разрядность арифметики (бит);
- - объем оперативной памяти (байт);
- - вес или массу вычислителя (кг или дм3);
- - потребляемую или излучаемую энергию (Вт).
Эффективная производительность однородных параллельных БВС определяется:
( 6.3) |
где:
- безразмерный коэффициент характеризует системные аппаратно-временные издержки на организацию вычислений в (сверх)многопроцессорной БВС;
- представляет собой коэффициент распараллеливания физических возможностей (сверх)многопроцессорной БВС, в которой каждый процессор способен выполнить все операции со скоростью операций/с.
Как показывает опыт, с ростом коэффициента распараллеливания вычислений возрастают и системные аппаратно-временные издержки, которые в основном связаны с динамическим управлением вычислительными ресурсами и связанными с этим простоями аппаратуры. В случае БВС аэрокосмического базирования (102-103), так как они решают задачи с экстремальными требованиями по производительности и пропускной способности по потокам данных, которые на 2-3 порядка превосходят предоставляемые. В частности, для проведения разведки подвижных наземных группировок средствами космического базирования требуется производительность порядка 1015 операций/с, что на 3 порядка превышает производительность существующих наземных супер-ЭВМ.
Чтобы упростить процедуру оценки "сложности" алгоритмов решения задачи и вытекающей из этого потребной производительности обычно используют зависимость количества операций от размеров циклически обрабатываемых потоков данных в задачах-прототипах, которые разбиваются на несколько групп [70].
К группе задач типа в цифровой обработке сигналов и изображений относят те задачи, у которых количество операций линейно зависит от количества циклически обрабатываемых операндов . Типичный представитель - это скалярное произведение двух векторов
К группе задач типа относят те задачи, у которых количество операций квадратично зависит от количества циклически обрабатываемых операндов . Типичный представитель - это сортировка методом "пузырька", в которой количество сравнений и транспозиций не может превышать значения .
К группе задач типа относят те задачи, у которых количество операций кубически зависит от количества циклически обрабатываемых операндов . Типичный представитель - это умножение матриц, в котором количество операций умножения равно , а сложений - .
Подавляющее большинство задач разведки подвижных наземных группировок аэрокосмическими средствами относится к группе , где пикселей, которое расходуется на графическое представление эталонного описания объекта разведки.
Из сказанного видно, что в БВС активно решаются задачи, требующие (сверх)высоких коэффициентов распараллеливания вычислений как по потокам команд, так и по потокам данных. Отсюда и вытекает задача эффективного управления ходом вычислительного процесса, так как с ростом коэффициента распараллеливания вычислений резко возрастают системные аппаратно-временные издержки на управление в реальном времени ходом вычислительного процесса, что приводит к резкому падению коэффициента в (6.3).
Объясняется это тем, что вычислительный процесс представляет собой взаимодействие двух, вообще говоря, неразличимых потоков, один из которых принято называть потоком инструкций, а другой - потоком данных. Последовательный характер алгоритмов решения задач вынуждает поочередно предоставлять аппаратный ресурс инициализированным инструкциям программы. В результате в любой (Б)ВС сосуществуют два взаимосвязанных процесса, один из которых является собственно вычислительным,а второй представляет собой процесс перечисления исполняемых потоков инструкций и преобразуемых ими потоков данных. Первый из этих потоков является упорядоченным только частично, так как в нем присутствуют операторы условных переходов, изменяющие порядок перечисления (инициализации) инструкций в зависимости от содержимого обрабатываемых или промежуточных данных.
В системах реального времени операнды многомерного потока данных обычно упорядочены хронологически,их содержимое изменяется случайным образом, асинхронно по каждому измерению (измеряемой и контролируемой физической величине) и плохо прогнозируется. В результате предельную физическую производительность удается достичь только на линейных участках программы,где отсутствуют операторы условных переходов и где адрес последующей (инициализируемой) команды вычисляется постоянным смешением по отношению к адресу предыдущей (исполняемой) команды. С появлением операторов условных переходов в многомерных адресных потоках команд,а вслед за ними и в многомерных адресных потоках данных возникают "вихри", обработка которых и приводит к аппаратно-временным издержкам на управление ходом вычислительного процесса в (сверх)многопроцессорных (Б)ВС.
Рост времени наработки на один отказ ( ) одновременно увеличивает как числитель, так и знаменатель показателя качества (6.2) работы БВС, так как с увеличением коэффициента распараллеливания вычислений снижается надежность всей БВС, что приводит к росту аппаратно-временных затрат на резервирование, а значит, и к росту массо-габаритов ( ) и потребляемой мощности ( ). Такое нелинейное влияние надежности работы отдельного процессора на показатель качества работы всей (сверх)многопроцессорной БВС имеет следующие последствия:
- коэффициент локального и/или глобального резервирования не превышает значений 3-4, как это имеет место в системах управления посадкой американских космических кораблей многоразового использования типа "Шаттл";
- на первое место выходит не показатель надежности, а показатель отказоустойчивости, который характеризует способность БВС выполнять полностью или частично возлагаемые на нее функции при наличии в ней карты отказов.
Объемы используемой памяти ( ) также двойственно влияют на комплексный показатель качества (6.2) БВС. С одной стороны, увеличение объема ОЗУ повышает пропускную способность всей БВС как по многомерным потокам команд, так и по многомерным потокам данных, а с другой стороны, современные, особенно многопортовые ОЗУ являются основными источниками повышения потребляемой мощности и снижения надежности работы всей БВС.
В (сверх)многопроцессорных БВС особое место занимает разрядность параллельной арифметики ( ), которая, с одной стороны, увеличивает коэффициент распараллеливания вычислений на микропрограммном уровне управления ходом вычислительного процесса, а с другой стороны, снижает помехозащищенность параллельных шин передачи данных, особенно в гигагерцовой области и выше.
При этом следует иметь в виду тот факт, что с ростом коэффициента распараллеливания вычислений на микропрограммном или ассемблерном уровне организации вычислений возрастает количество операций межпроцессорной пересылки данных, что приводит к росту операций округления данных и падению вычислительной устойчивости программно-аппаратного комплекса.
Программно-аппаратный комплекс считается вычислительно устойчивым, если погрешность вычислений в нем не превышает погрешность представления исходных данных, то есть если проведенные вычисления выполняются с абсолютной точностью и поэтому не вносят дополнительной погрешности в результат.
Оценить возрастание погрешности вычислений проще всего на различных моделях схем суммирования с накоплением операндов (рис. 6.5).
В схеме рис. 6.5-а вся сумма
сначала накапливается в регистре-аккумуляторе ( АКК ) и только после этого передается в ОЗУ, то есть в ходе вычислений осуществляется только одна пересылка результата. При этом следует иметь в виду, что разрядность аккумулятора ( n = 84-128) в несколько раз превосходит разряд-ность шин данных ( ). Поэтому при выполнении операций пересылки данных типа Х(ОЗУ):= АКК происходит округление накопленных данных. В схеме рис. 6.5-а такое округление выполняется всего один раз, а в схеме рис. 6.5-б - 3 раза, так как появляются две
дополнительные операции межпроцессорной пересылки накопленных частных сумм
и , ( )
Очевидно, что с ростом коэффициента распараллеливания вычислений количество пересылок результатов промежуточных вычислений возрастает в раз.
Второй наиболее интенсивный источник округления, а значит, и ошибок вычислений - это операция денормализации меньшего слагаемого в арифметике плавающей запятой, которая вносит дополнительную погрешность, если разность порядков суммируемых операндов превосходит разрядность регистра-аккумулятора.
Типичное влияние двух этих источников на точность вычислений суммы чисел с одинарной и двойной точностью показано соответственно на рис. 6.6 и 6.7, из которых видно:
- абсолютная погрешность вычислений носит неустойчивый колебательный характер, который зависит как от коэффициента распараллеливания, так и от порядка суммирования одних и тех же чисел;
- при вычислениях с одинарной точностью абсолютная погрешность проявляется в первом десятичном разряде после запятой, а при вычислениях с двойной точностью - только в десятом десятичном разряде; это указывает на необходимость наращивания разрядности во время вычислений, особенно при использовании операций умножения, удваивающих разрядность произведения по отношению к исходным операндам, и операций деления, в которых останов алгоритма работы микропрограммы в общем случае осуществляется по счетчику, а не по условию.
Рис. 6.6. Зависимость абсолютной погрешности суммирования от коэффициента распараллеливания вычислений, выполненных с одинарной точностью
Здесь за наиболее точный (почти "эталонный") результат принято значение , вычисленное в "однопроцессорном" варианте с двойной точностью и после упорядочения по возрастанию псевдослучайной последовательности , где изменяется от 1 до , а коэффициент распараллеливания вычислений - от 1 до 200.
Абсолютные погрешности суммирования основную опасность представляют в операторах условных переходов, где условие становится нестабильным и может сработать по-разному для одной и той же последовательности входных данных, но упорядоченной разным образом или вычисленной с разным коэффициентом распараллеливания.
Рис. 6.7. Зависимость абсолютной погрешности суммирования от коэффициента распараллеливания вычислений, выполненных с двойной точностью
На основе приведенных данных можно заключить:
- В комплексной оценке качества БВС вида (6.1) тесно переплетены как системотехнические, так и конструктивно-технологические факторы, первые из которых фактически предопределяют коэффициент использования физических возможностей параллельных БВС, а вторые - сами эти возможности.
- Основными факторами, ограничивающими допустимый уровень параллелизма в (Б)ВС, являются не только потребляемая мощность и габариты, но и вычислительная устойчивость, которая в параллельной арифметике падает с ростом коэффициента распараллеливания вычислений. Поэтому в (сверх)параллельных (Б)ВС более перспективной является последовательная (конвейерная) арифметика, обеспечивающая одинаковую и произвольно наращиваемую в ходе вычислений разрядность как регистров-аккумуляторов, так и шин обмена данными.
- Основные системные аппаратно-временные издержки (сверх)парал-лельных (Б)ВС связаны с обеспечением взаимодействия многомерных потоков команд и многомерных потоков данных, в которых образуются "вихри" из-за наличия в программах операторов условных переходов, нарушающих линейный порядок перечисления потоков инструкций. 4. Прямой перенос алгоритмов и программ с последовательных на параллельные (Б)ВС может привести к потере вычислительной устойчивости, а значит, и к непрогнозируемому поведению автоматизированных комплексов в целом. Это чревато потерей управления сложными и опасными объектами, функционирование которых осуществляется на и над собственной территорией.
Системотехнические выводы по лекции 6
- Многофункциональный характер задач, решаемых современными технотронными комплексами как в сфере обороны, так и в остальных сферах деятельности человека, вынуждает их разработчиков использовать практически весь спектр существующих вычислительных технологий, поддерживающих требуемый уровень параллелизма на всех уровнях организации вычислений: бит-командном, слов-командном и поток-операторном, то есть параллельные вычисления следует считать атрибутом (Б)ВС современных и перспективных технотронных комплексов двойного назначения.
- Основное достоинство МКМД-бит-процессорных технологий состоит в том, что они позволяют на однородной элементной базе малой номенклатуры наиболее полно воплотить архитектурные решения, которые лежат в основе других технологий.
- Основной вклад в увеличение трудоемкости и сроков создания современных технотронных комплексов вносят этапы, обеспечивающие алгоритмизацию, программирование и (кремниевую) компиляцию задач пользователя в исполняемый формат или, что одно и то же, в получение булева представления заданий пользователя.
- Нейрокомпиляция является единственной альтернативой современным технологиям погружения заданий пользователя на уровень аппаратной реализации, и она призвана сократить финансовые, временные и интеллектуальные издержки на формирование исполняемого формата за счет замены дорогостоящих этапов алгоритмизации, программирования и компиляции обучением "дочерней" нейро-ЭВМ.
- Нейрокомпьютерные технологии не отменяют интеллектуальный этап и связанные с ним затраты на создание формализованного описания задач. Они лишь изменяют представление этого формализованного описания в виде репрезентативных обучающих выборок. Обоснование, выбор или формирование репрезентативной обучающей выборки - не менее сложная интеллектуальная задача, чем получение формализованного описания задания пользователя ЭВМ.
- Основное преимущество нейрокомпьютерных технологий сосредоточено в стандартных процедурах обучения или, что одно и то же, в формировании исполняемого формата задания вплоть до физико-технического или молекулярно-биологического уровня описания вычислительного процесса.
- Основная опасность использования нейрокомпьютерных технологий в технотронных комплексах проистекает от непрогнозируемости поведения таких комплексов в быстро изменяющейся "внешней среде". При этом диспетчерские службы и руководство глобальных технотронных комплексов должны иметь автоматизированные средства и оперативные возможности:
- для оперативной оценки адекватности реальных условий и модельных условий, представленных репрезентативными выборками во время обучения;
- для прекращения текущих задач в случае существенных отклонений реальных условий от условий обучения "материнской" нейро-ЭВМ.
- С учетом высокой вероятности потери управляемости технотронными комплексами в ближайшей перспективе применение нейроком-пьютерных технологий можно ожидать при интерактивном решении задач подготовки и планирования глобальных экономических, финансовых, технических и т. п. мероприятий, где руководящий состав еще имеет время и возможности для оценки результатов работы нейро-ЭВМ.
- В современных вычислительных технологиях основная опасность в применении технотронных комплексов проистекает из возможной потери вычислительной устойчивости алгоритмических и программных платформ, отлаженных и проверенных на последовательных аппаратных платформах и перенесенных впоследствии на параллельные аппаратные платформы.
- Даже созданная в кооперации с зарубежными партнерами отечественная элементная база отстает и еще долго будет отставать от элементной базы США. Поэтому отечественные (Б)ВС должны обеспечить более высокие коэффициенты распараллеливания вычислений, чтобы решить задачи интеллектуальной и информационный поддержки персонала в противоборстве с конкурентами, обладающими организационно-техническим, финансовым и технологическим превосходством. Это ужесточает требования к вычислительной устойчивости и устойчивости к отказам отечественных алгоритмических и аппаратных платформ, что требует поиска принципиально новых решений в области вычислительных технологий.
- Создание RISC -процессоров и основанных на них вычислительных технологий является несомненным успехом DARPA, консолидировавшего усилия ученых и коммерческих фирм, обеспечивших продвижение на коммерческий и военный рынок инновационной технологии, в корне изменившей стратегию создания средств вычислительной техники.