- Тетельбаум И. М., Шнейдер Ю. Р. 400 схем для ABM
- Понятие алгоритма его свойства логические теории алгоритмов
- Аналоговые вычислительные машины. Обобщенная структура
- Задачи
- Эффективность применения
- Решающие элементы
- Типы АВМ
- Гибридные вычислительные машины. Обобщенная структура
- 6. Цифровые вычислительные машины специального назначения. Микропроцессоры. Структура. Организация вычислений.
- 7. СуперЭВМ. Основные характеристики. Структура. Организация вычислительного процесса.
Тетельбаум И. М., Шнейдер Ю. Р.
400 схем для ABM
МОСКВА «ЭНЕРГИЯ» 1978
В книге собрано большое количество схем, раскрывающих практические приемы использования операционных блоков, и показаны пути преодоления различных трудностей, возникающих в практике моделирования динамических систем на аналоговых вычислительных машинах (АВМ), при решении задач как в их математической, так и физической постановке.
Книга рассчитана на инженерно-технических и научных работников, занимающихся вопросами эксплуатации АВМ, моделирования и автоматического управления. Книга может служить справочным пособием для специалистов.
Тетельбаум И. М., Шнейдер Ю. Р. 400 схем для ABM. — Mосква: издательство Энергия, 1978. — 248 с.
Содержание книги
400 схем для ABM
Предисловие
Введение
В-1. Аналоговое моделирование как метод динамических исследований
В-2. Принципы структурного моделирования
В-3. Выбор параметров операционных элементов
В-4. Структура АВМ
Глава первая. Линейные операции
1-1. Линейные операционные элементы
1-2. Схемы линейных блоков с различными передаточными функциями F(p)
1-3. Схемы линейных элементов на одном операционном усилителе
1-4. Схемы моделей временного запаздывания
Глава вторая. Нелинейные операции
2-1. Нелинейные операционные элементы
2-2. Схемы элементов нечувствительности на кремниевых диодах и стабилитронах
2-3. Мостовые схемы элементов ограничения
2-4. Схемы элементов образования зоны нечувствительности — ограничения
2-5. Схемы образования модуля переменной (схемы выпрямления)
2-6. Схемы ограничения выходного напряжения по амплитуде
2-7. Схемы ограничения .выходного напряжения по знаку
2-8. Схемы образования зоны нечувствительности
2-9. Схемы с релейными характеристиками
2-10. Схемы с гистерезисом
2-14. Схемы получения некоторых функциональных зависимостей
Глава третья. Генераторы функций времени
3-1. Принципы получения функций времени
3-2. Схемы генераторов некоторых единичных сигналов в функции времени
3-3. Схемы генераторов «некоторых периодических функций времени
3-4. Схемы формирования некоторых нелинейных функций времени
3-5. Схемы генераторов некоторых специальных функций времени
Глава четвертая. Схемы логических операций, запоминающие устройства, схемы квантования и преобразователи
4-1. Схемы сравнения (компараторы)
4-2. Схемы ключей
4-3. Схемы выделения переменной, имеющей наибольшее (наименьшее) значение
4-4. Некоторые специальные логические схемы
4-5. Некоторые схемы запоминания
4-6. Схемы квантования по уровню
4-7. Некоторые специальные схемы с запоминающими элементами
4-8. Схемы различных видов модуляции сигналов
4-9. Схемы некоторых преобразователей
Глава пятая. Некоторые специальные методические приемы
5-1. Схемы с отслеживанием
5-2. Интегрирование по невременному аргументу
5-3. Некоторые специальные схемы
5-4. Схемы испытаний и настройки блоков АВМ
Глава шестая. Моделирование электрических цепей и физических элементов методом прямых аналогий
б-1. Электрические аналогии
6-2. Модели прямой аналогии операционных элементах
6-3. Схемы моделей реле, вентилей и электромагнитного прерывателя
6-4. Схемы моделей некоторых элементов электрических устройств
6-5. Схемы моделей характеристик некоторых механических систем, элементов и узлов
6-6. Схемы воспроизведения вольт-амперных характеристик реальных элементов, подключаемых к модели
6-7. Управляемые элементы на операционных усилителях для работы с пассивными цепями н моделями прямой аналогии
Глава седьмая. Технические средства аналоговой вычислительной техники
7-1. Аналоговая вычислительная машина АВК-31
7-2. Аналоговая вычислительная машина МН-7М
7-3. Аналоговая вычислительная машина МН-10М
7-4. Аналоговое вычислительное устройство «Ампер»
7-5. Аналоговая вычислительная машина МН-17М
7-6. Аналоговая вычислительная машина МН-18М
7-7. Аналоговый вычислительный комплекс АВК-2
7-8. Аналого-цифровая вычислительная система АЦЭМС-1
7-9. Аналоговая; вычислительная система ЭМУ-200
7-10. Гибридная вычислительная система ГВС-100
7-11. Операционные усилители
7-12. Регистрирующая и измерительная аппаратура
Электронно-лучевые индикаторы
Двухкоординатные регистрирующие приборы (графопостроители)
Быстродействующие самопишущие приборы
Светолучевые осциллографы
Электронные цифровые вольтметры
Список литературы
Аналоговые вычислительные машины (А-ВМ) с операционными усилителями постоянного тока нашли в настоящее время широкое применение для решения инженерных задач и в первую очередь для исследования динамических систем. Вопросы конструирования электронных моделей, технические и математические принципы их построения заняли уже довольно большое место в нашей технической литературе. Довольно широко представлена в отечественной технической литературе и методика применения АВМ в различных областях техники. Имеются многочисленные примеры решения задач на АВМ обычными методами. В то же время практические вопросы применения АВМ пока еще мало освещены. Отсутствует руководство, обращающее внимание на «тонкости» применения АВМ, на практические приемы использования операционных блоков и пути преодоления различных трудностей, возникающих в практике моделирования динамических систем. Восполнению этого пробела должна способствовать предлагаемая книга.
При использовании аналоговых вычислительных устройств существует опасность сведения работы на них лишь к формализованной технической процедуре решения дифференциальных уравнений. Физический подход, превращающий эту техническую процедуру в содержательное научное исследование, требует использования специальных приемов моделирования.
Основное место в книге занимает сводка приемов моделирования, отражающих различные особенности методики моделирования. Книга в значительной мере обобщает опыт авторов по разработке методики аналогового моделирования на кафедре вычислительной техники и Вычислительным центре Московского ордена Ленина энергетического института. Авторы выражают признательность руководителю ВЦ МЭИ доценту, канд. техн. наук Н. И. Челнокову за постоянное внимание к данной работе.
В книге использованы многие отечественные и иностранные источники; основные из них указаны в списке литературы. Составители данного руководства ни в коей мере не претендуют на авторство публикуемых схем, хотя некоторые из них были, по-видимому, впервые осуществлены ими или с их участием в МЭИ. Схемы представляют собой коллективный опыт, часто собираемый по крупицам. В этой связи следует указать на большой вклад М. Рота и его соавторов, Э. Б. Саткевичуса и др. Мы рассчитываем, что книга поможет читателю выбрать сведения, необходимые ему при постановке конкретных задач.
Нам представляется, что данная книга будет встречена с интересом, так как теперь, когда наша промышленность широко выпускает электронные моделирующие устройства, важнейшей проблемой является повышение технического уровня их применения. В связи с этим авторы надеются, что будут весьма полезны приведенные в отдельной главе книги справочные сведения о технических характеристиках АВМ, находящихся в настоящее время в серийном производстве или достаточно широко используемых на практике, а также характеристики внешних устройств и новых операционных усилителей АВМ, скомплектованные из материалов проспектов, каталогов и справочников.
Улучшению книги способствовали замечания, сделанные рецензентом канд. техн. наук Я. Н. Лугинским и профессором, доктором техн. наук И. М. Витенбергом, взявшим на себя труд по редактированию книги. Авторы приносят им искреннюю благодарность.
Пожелания, замечания и, что очень важно, дополнения просьба посылать по адресу: 113114, Москва, М-114, Шлюзовая наб., д. 10, издательство «Энергия».
Понятие алгоритма его свойства логические теории алгоритмов
Аналоговые вычислительные машины. Обобщенная структура
Аналоговая вычислительная машина (АВМ) — вычислительная машина, в которой каждому мгновенному значению переменной величины, участвующей в исходных соотношениях, ставится в соответствие мгновенное значение другой (машинной) величины, часто отличающейся от исходной физической природой и масштабным коэффициентом. Каждой элементарной математической операции над машинными величинами, как правило, соответствует некоторый физический закон, устанавливающий математические зависимости между физическими величинами на выходе и входе решающего элемента (например, законы Ома и Кирхгофа для электрических цепей, выражение для эффекта Холла, лоренцовой силы и т. д.).
В АВМ все математические величины представляются как непрерывные значения каких-либо физических величин. Главным образом, в качестве машинной переменной выступает напряжение электрической цепи. Их изменения происходят по тем же законам, что и изменения заданных функций. В этих машинах используется метод математического моделирования (создаётся модель исследуемого объекта). Результаты решения выводятся в виде зависимостей электрических напряжений в функции времени на экран осциллографа или фиксируются измерительными приборами. Основным назначением АВМ является решение линейных и дифференцированных уравнений.
высокая скорость решения задач, соизмеримая со скоростью прохождения электрического сигнала;
простота конструкции АВМ;
лёгкость подготовки задачи к решению;
наглядность протекания исследуемых процессов, возможность изменения параметров исследуемых процессов во время самого исследования.
— малая точность получаемых результатов (до 10%);
— алгоритмическая ограниченность решаемых задач;
— ручной ввод решаемой задачи в машину;
— большой объём задействованного оборудования, растущий с увеличением сложности задачи
Задачи
Контроль и управление . В системах автоматического управления АВМ пользуются, как правило, для определения или формирования закона управления, для вычисления сводных параметров процесса (кпд, мощность, производительность и др.). Если задано математическое выражение, определяющее связь сводного параметра или управляющего воздействия с координатами объекта, АВМ служат для решения соответствующего уравнения. Результат вычислений поступает либо на исполнительный механизм (замкнутая система), либо к оператору. Когда закон управления заранее не определён, а заданы лишь некоторый критерий оптимальности и граничные условия, АВМ применяются в системах поиска оптимального управления и служат математической моделью объекта.
Опережающий анализ , основанный на быстродействии. Многократно решая систему уравнений, описывающих управляемый процесс, учитывая его текущие характеристики, АВМ за короткое время «просматривает» большое число вариантов решений, отличающихся значениями параметров, подлежащих изменению при управлении процессом. Намного опережая ход процесса, АВМ прогнозирует сигналы управления, которые могут обеспечить необходимое качество протекания процесса. В режиме опережающего анализа АВМ выполняют функции либо машин-советчиков, либо управляющих машин, автоматически учитывающих текущие характеристики процесса и управляющих им по оптимальным показателям. Выбор наилучшего режима технологического процесса осуществляется также самонастраивающимися математическими машинами в режиме опережающего анализа.
Экспериментальное исследование поведения системы с аппаратурой управления или регулирования в лабораторных условиях. С помощью АВМ воспроизводится та часть системы, которая по каким-либо причинам не может быть воспроизведена в лабораторных условиях.
Анализ динамики систем управления или регулирования . Заданные уравнения объекта решаются в выбранном масштабе времени с целью нахождения основных параметров, обеспечивающих требуемое протекание процесса.
Решение задач синтеза систем управления и регулирования сводится к подбору по заданным техническим условиям структуры изменяемой части системы, функциональных зависимостей требуемого вида и значений основных параметров. Окончательный результат получается многократным повторением решения и сопоставлением его с принятым критерием близости.
Решение задач по определению возмущений или полезных сигналов, действующих на систему . В этом случае по дифференциальным уравнениям, описывающим динамическую систему, по значениям начальных условий, известному из эксперимента характеру изменения выходной координаты и статистическим характеристикам шумов в измеряемом сигнале определяется значение возмущения или полезного сигнала на входе. АВМ может также служить для построения приборов, автоматически регистрирующих возмущения и вырабатывающих сигнал управления в зависимости от характера и размера возмущений.
Эффективность применения
Повышение эффективности АВМ связано с внедрением в аналоговую технику цифровых методов, в частности цифровых дифференциальных анализаторов. Их применение снижает общий объём аппаратуры, хотя в остальных случаях они существенно уступают цифровым вычислительным машинам. Гораздо большими возможностями обладают гибридные вычислительные системы, у которых исходные величины представлены одновременно в цифровой и аналоговой форме.
Перспективны для полной автоматизации АВМ так называемые матричные модели . Их основной недостаток — большое количество аппаратуры — в связи с появлением интегральных схем уже не имеет решающего значения.
Решающие элементы
АВМ состоят из некоторого числа решающих элементов, которые по характеру выполняемых математических операций делятся на:.
линейные решающие элементы — выполняют операции суммирования, интегрирования, перемены знака, умножения на постоянную величину и др.
нелинейные (функциональные преобразователи) — воспроизводят нелинейные зависимости. Различают решающие элементы, предназначенные для воспроизведения заданной функции от одного, двух и большего числа аргументов. Из этого класса обычно выделяют устройства для воспроизведения разрывных функций одного аргумента (типичные нелинейности) и множительно-делительные устройства.
логические — к таким решающим элементам относятся устройства непрерывной логики, например предназначенные для выделения наибольшей или наименьшей из нескольких величин, а также устройства дискретной логики, релейные переключающие схемы и некоторые др. специальные блоки. Для связи устройств непрерывной и дискретной логики широко пользуются гибридными логическими устройствами (например, компараторами). Все логические устройства обычно объединяются в одном, получившем название устройства параллельной логики. Оно снабжается своим наборным полем для соединения отдельных логических устройств между собой и с остальными решающими элементами АВМ.
Вследствие не идеальности работы отдельных решающих элементов, неточности установки их коэффициентов передачи и начальных условий, решение, найденное с помощью АВМ, имеет погрешности. Результирующая погрешность зависит не только от перечисленных первичных источников, но и от характера и особенностей решаемой задачи. Практически можно считать, что погрешность при исследовании устойчивых нелинейных систем автоматического управления не превышает нескольких %, если порядок набираемой системы дифференциальных уравнений не выше 10-го.
Типы АВМ
В зависимости от физической природы машинных величин различают механические , пневматические , гидравлические , электромеханические и электронные АВМ. Наиболее распространены электронные АВМ, отличающиеся значительно более широкой полосой пропускания, удобством сопряжения нескольких машин между собой и с элементами аппаратуры управления. Решающие элементы АВМ строятся в основном на базе многокаскадных электронных усилителей постоянного тока с большим коэффициентом усиления в разомкнутом состоянии и глубокой отрицательной обратной связью
По структуре различают АВМ с ручным и с автоматическим программным управлением . В первом случае решающие элементы перед началом решения соединяются между собой в соответствии с последовательностью выполнения математических операций, задаваемых исходной задачей. В машинах с программным управлением последовательность выполнения отдельных математических операций может меняться в процессе решения задачи в соответствии с заданным алгоритмом решения
Аналоговые вычислительные машины. Обобщенная структура.
На основе подобия или изоморфизма
Линейные: +,-, *, 1/х, dx, любые Const
Нелинейные: /, интеграл, f (x, y, t)
АВМ – параллельный принцип
Принцип вычислений – параллельный
Входной сигнал – значение напряжения
Набор операций – основные арифметические d и s
Область значений – должна существовать модель, описывающая диф. и интегр. уравнениями
Требования к пользователю – навыки моделирования + инженерное образование
Это взято из лекций по ТВП
Гибридные вычислительные машины. Обобщенная структура
Гибридная вычислительная система, аналого-цифровая вычислительная машина, комбинированная вычислительная машина, комбинированный комплекс из нескольких электронных вычислительных машин, использующих различное представление величин (аналоговое и цифровое) и объединённых единой системой управления. В состав Г. в. с., кроме аналоговых и цифровых машин (АВМ и ЦВМ) и системы управления, обычно входят преобразователи представления величин, устройства внутрисистемной связи и периферийное оборудование (см. структурную схему на рис.). Г. в. с. — комплекс ЭВМ, в этом её главное отличие от гибридной вычислительной машины, названной так потому, что она строится на гибридных решающих элементах, либо с использованием аналоговых и цифровых элементов.
Расчленение вычислительного процесса в ходе решения задачи на отдельные операции, выполняемые АВМ и ЦВМ в комплексе, уменьшает объём вычислительных операций, возлагаемых на ЦВМ, что при прочих равных условиях существенно повышает общее быстродействие Г. в. с.
Различают аналого-ориентированные, цифро-ориентированные и сбалансированные Г. в. с. В системах первого типа ЦВМ используется как дополнительное внешнее устройство к АВМ, предназначенное для образования сложных нелинейных зависимостей, запоминания полученных результатов и для осуществления программного управления АВМ. В системах второго типа АВМ используется как дополнительное внешнее устройство ЦВМ, предназначенное для моделирования элементов реальной аппаратуры, многократного выполнения небольших подпрограмм.
Создание эффективных гибридных комплексов требует в первую очередь уточнения основных областей их применения и детального анализа типичных задач из этих областей. В результате этого устанавливают рациональную структуру гибридного комплекса и формируют требования к его отдельным частям.
Задачи, которые эффективно решаются на Г. в. с.
1. моделирование в реальном масштабе времени автоматических систем управления, содержащих как аналоговые, так и цифровые устройства; (пример, моделирование системы управления прокатного стана. Динамика процессов в нём воспроизводится на аналоговой машине, а специализированная управляющая станом машина моделируется на универсальной ЦВМ среднего класса. Вследствие кратковременности переходных процессов в приводах прокатных станов, полное моделирование таких процессов в реальном масштабе времени потребовало бы применения сверхбыстродействующих ЦВМ.);
2. воспроизведение в реальном масштабе времени процессов, содержащих высокочастотные составляющие и переменные, изменяющиеся в широком диапазоне (являются задачи управления движущимися объектами, в т. ч. и задачи самонаведения, а также задачи, возникающие при создании вычислительной части комплексных тренажеров. Для задач самонаведения характерно формирование траектории движения в процессе самого движения. Большая скорость изменения некоторых параметров при приближении объекта к цели требует высокого быстродействия управляющей системы, превышающего возможности современных ЦВМ, а большой динамический диапазон — высокой точности, трудно достижимой на АВМ При решении этой задачи на Г. в. с. целесообразно возложить воспроизводство уравнений движения вокруг центра тяжести на аналоговую часть, а движение центра тяжести и кинематические соотношения — на цифровую часть вычислительной системы.);
3. статистическое моделирование; моделирование биологических систем; решение уравнений в частных производных; оптимизация систем управления (относятся задачи, решение которых получается в результате обработки многих реализаций случайного процесса, например решение многомерных уравнений в частных производных методом Монте-Карло, решение задач стохастичемкого программирования, нахождение экстремума функций многих переменных. Многократная реализация случайного процесса возлагается на быстродействующую АВМ, работающую в режиме многократного повторения решения, а обработка результатов, воспроизводство функций на границах области, вычисление функционалов — на ЦВМ. Кроме того, ЦВМ определяет момент окончания счёта. Применение Г. в. с. сокращает время решения задач этого вида на несколько порядков по сравнению с применением только цифровой машины).
Применение Г. в. с. эффективно также при решении нелинейных уравнений в частных производных. При этом могут решаться как задачи анализа, так и задачи идентификации и оптимизации объектов. Примером задачи оптимизации может служить подбор нелинейности теплопроводного материала для заданного распределения температур; определение геометрии летательных аппаратов для получения требуемых аэродинамических характеристик; распределение толщины испаряющегося слоя, предохраняющего космические корабли от перегрева при входе в плотные слои атмосферы; разработка оптимальной системы подогрева летательных аппаратов с целью предохранения их от обледенения при минимальной затрате энергии на подогрев; расчёт сети ирригационных каналов и установление оптимальных расходов в них и т.п. При решении этих задач ЦВМ соединяется с сеточной моделью, многократно используемой в процессе решения.
Развитие Г. в. с. возможно в двух направлениях: построение специализированных Г. в. с., рассчитанных на решение только одного класса задач, и построение универсальных Г. в. с., позволяющих решать сравнительно широкий класс задач. Структура такого универсального гибридного комплекса (рис.) состоит из АВМ однократного действия, АВМ с повторением решения, сеточной модели, устройств связи между машинами, специального оборудования для решения задач статистического моделирования и периферийного оборудования. Помимо стандартного математического обеспечения ЭВМ, входящих в комплекс, в Г. в. с. требуются специальные программы, обслуживающие систему связи машин и автоматизирующие процесс подготовки и постановки задач на АВМ, а также единый язык программирования для комплекса в целом.
Наряду с новыми вычислительными возможностями в Г. в. с. возникают специфические особенности, в частности появляются погрешности, которые в отдельно работающих ЭВМ отсутствуют. Первичными источниками погрешностей являются временная задержка аналого-цифрового преобразователя, ЦВМ и цифро-аналогового преобразователя; ошибка округления в аналого-цифровом и цифро-аналоговом преобразователях; ошибка от неодновременной выборки аналоговых сигналов на аналого-цифровой преобразователь и неодновременной выдачи цифровых сигналов на цифро-аналоговый преобразователь; ошибки, связанные с дискретным характером выдачи результатов с выхода ЦВМ.
Структурная схема универсальной гибридной вычислительной системы: сплошной линией обозначены информационные, а пунктирной — управляющие каналы.
6. Цифровые вычислительные машины специального назначения. Микропроцессоры. Структура. Организация вычислений.
Принцип вычислений – последовательный
Входной сигнал – цифровой набор импульсов
Набор операций – основные арифметические
Область значений – любая
Популярны, так как:
Используются для решения задач в методе последовательной детализации. Подзадачи устойчивы достаточно
Большой класс стабильных задач (от калькуляторов до больших вычислительных комплексов)
Использование как сателлитов или сопроцессоров для распараллеливания данных
При разработке оптических сопроцессоров
Гибкие ВС для технологического производства
Микропроцессоры. Структура. Организация вычислений.
Микропроцессор – это программируемое устройство обработки информации.
Микропроцессор содержит 3 основных блока цифровой машины: схему управления (СУ), арифметико-логическое устройство (АЛУ), запоминающие устройства (ЗУ) в виде регистров.
Эти блоки соединены шиной данных, шиной адреса и линиями управления
АЛУ предназначено для обработки инфции (+,-, сдвиг влево или вправо, инверсия, И, ИЛИ, исключающее ИЛИ)
Буферный регистр нужен для записи операндов
Регистры –это быстродействующая внутренняя память. Каждый регистр хранит 1 слово данных.
Бывают регистры общего назначения и специальные
Регистры общего назначения – (B,C,D) нужны для хранения данных
Регистр состояния – хранит признаки операции;
Буферные регистры – для хранения операнда;
Аккумулятор – хранит результаты операций;
Регистр команд (INPUT) – хранит код выполняемой команды;
Счетчик команд (СК) – хранит адрес следующей выполняемой команды (0 FFFF);
Регистр адреса памяти(РАП). На входе 8 разрядная шина.
Схема управления (СУ) -поддерживает автоматическое выполнение цикла «выборка-исполнение» (обычно микропрограммируется)
Синхронизация работы МП с помощью таймера;
Управление последовательностью включения питания;
Определение кто и когда пользуется внутренней шиной данных;
тактовой частотой, определяющей максимальное время выполнения переключения элементов в ЭВМ;
2) разрядностью, т.е. максимальным числом одновременно обрабатываемых двоичных разрядов.
архитектурой. Понятие архитектуры микропроцессора включает в себя систему команд и способы адресации, возможность совмещения выполнения команд во времени, наличие дополнительных устройств в составе микропроцессора, принципы и режимы его работы.
7. СуперЭВМ. Основные характеристики. Структура. Организация вычислительного процесса.
Появление в середине шестидесятых первого компьютера класса суперЭВМ, разработанного в фирме CDC знаменитым Сеймуром Крэем, ознаменовало рождение новой — векторной архитектуры. Начиная с этого момента суперкомпьютером принято называть высокопроизводительный векторный компьютер. Основная идея, положенная в основу новой архитектуры, заключалась в распараллеливании процесса обработки данных, когда одна и та же операция применяется одновременно к массиву (вектору) значений. В этом случае можно надеяться на определенный выигрыш в скорости вычислений. Идея параллелизма оказалась плодотворной и нашла воплощение на разных уровнях функционирования компьютера. Более подробное обсуждение аппаратной реализации параллельной обработки информации можно найти во второй главе, здесь же упомянем конвейерную обработку, многопроцессорность и т.д.
Основными особенностями модели параллельного программирования являются высокая эффективность программ, применение специальных приемов программирования и, как следствие, более высокая трудоемкость программирования, проблемы с переносимостью программ.
1 задача – работает несколько процессоров
много задач – каждый процессор решает свою задачу, а потом обмениваются информацией
по способу построения памяти
по способу передачи информации
Р – элементарный процессор
М – элемент памяти
Модель параллелизма данных основана на применении одной операции к множеству элементов структуры данных (пример такой операции — «;увеличить в два раза стипендию всем студентам группы 111»;). Программа, написанная в рамках данной модели, содержит последовательность таких операций. «;Зернистость»; вычислений мала, поскольку каждая операция над каждым элементом данных может считаться независимой задачей. Программист должен указать транслятору, как данные следует распределить между процессорами (т. е. между задачами). Транслятор генерирует SPMD-код, автоматически добавляя в него команды обмена данными. Методы разработки алгоритмов и анализа программ в модели с параллелизмом данных аналогичны тем, которые используются в модели задача/канал.
Основная идея подхода, основанного на параллелизме данных, заключается в том, что одна операция выполняется сразу над всеми элементами массива данных. Различные фрагменты такого массива обрабатываются на векторном процессоре или на разных процессорах параллельной машины. Распределением данных между процессорами занимается программа. Векторизация или распараллеливание в этом случае чаще всего выполняется уже на этапе компиляции — перевода исходного текста программы в машинные команды. Роль программиста в этом случае обычно сводится к заданию опций векторной или параллельной оптимизации компилятору, директив параллельной компиляции, использованию специализированных языков для параллельных вычислений. Наиболее распространенными языками для параллельных вычислений являются Высокопроизводительный ФОРТРАН (High Performance FORTRAN) и параллельные версии языка C (это, например, C*).
Более детальное описание рассматриваемого подхода к распараллеливанию содержит указание на следующие его основные особенности:
Обработкой данных управляет одна программа;
Пространство имен является глобальным, то есть для программиста существует одна единственная память, а детали структуры данных, доступа к памяти и межпроцессорного обмена данными от него скрыты;
Слабая синхронизация вычислений на параллельных процессорах, то есть выполнение команд на разных процессорах происходит, как правило, независимо и только лишь иногда производится согласование выполнения циклов или других программных конструкций — их синхронизация. Каждый процессор выполняет один и тот же фрагмент программы, но нет гарантии, что в заданный момент времени на всех процессорах выполняется одна и та же машинная команда;
Параллельные операции над элементами массива выполняются одновременно на всех доступных данной программе процессорах.
Видим, таким образом, что в рамках данного подхода от программиста не требуется больших усилий по векторизации или распараллеливанию вычислений. Даже при программировании сложных вычислительных алгоритмов можно использовать библиотеки подпрограмм, специально разработанных с учетом конкретной архитектуры компьютера и оптимизированных для этой архитектуры.
Подход, основанный на параллелизме данных, базируется на использовании при разработке программ базового набора операций:
операции управления данными;
операции над массивами в целом и их фрагментами;
операции, связанные с пересылкой данных.
Параллелизм любого рода требует одновременной работы, по крайней мере, двух устройств. Такими устройствами могут быть: арифметико-логические устройства (АЛУ), устройства управления (УУ). В ЭВМ классической архитектуры УУ и АЛУ образуют процессор. Увеличение числа процессоров или числа АЛУ в каждом из них приводит к соответствующему росту параллелизма. Наличие в ЭВМ нескольких процессоров означает, что одновременно (параллельно) могут выполняться несколько программ или несколько фрагментов одной программы. Работа нескольких АЛУ под управлением одного УУ означает, что множество данных может обрабатываться параллельно по одной программе. В соответствии с этим описание структур параллельных систем можно представить в виде упорядоченной тройки:
где k — количество устройств управления, т.е. наибольшее количество независимо и одновременно выполняемых программ в системе;
d — количество АЛУ, приходящихся на одно устройство управления;
w — количество разрядов, содержимое которых обрабатывается одновременно (параллельно) одним арифметико-логическим устройством.
Другая форма распараллеливания — конвейеризация, также требует наличия нескольких ЦП или АЛУ. В то время, как множество данных обрабатывается на одном устройстве, другое множество данных может обрабатываться на следующем устройстве и т.д., при этом в процессе обработки возникает поток данных от одного устройства (ЦП или АЛУ) к следующему. В течение всего процесса над одним множеством данных выполняется одно за другим n действий. Одновременно в конвейере на разных стадиях обработки могут находиться от 1 до n данных.
Параллелизм и конвейеризацию можно рассматривать на трех различных уровнях, представленных в таблице. Шесть основных форм параллелизма, в широком смысле этого слова, позволяют построить схему классификации, в рамках которой можно описать разнообразие высокопроизводительных вычислительных систем и отразить их эволюцию.
Классификация МВС по типу распараллеливания