Анализ работы многопроцессорных систем и обоснованность их применения в АСУРефераты >> Радиоэлектроника >> Анализ работы многопроцессорных систем и обоснованность их применения в АСУ
Фирма Meiko отказалась от использования жестких фиксированных топологий вычислительной поверхности, так как оценила эти топологии как компромисс, не позволяющий достичь абсолютной гибкости. Для различных областей применения требуются различные конфигурации; оптимальные топологии оказываются неодинаковыми для разных задач, решение которых может потребовать использования различных ресурсов. Так, например, для одних применений может понадобиться большая доля вычислительных ресурсов, а для других – наличие быстрых методов обращения к базам данных.
Гибкость вычислительной поверхности обеспечивается за счет наличия набор модульных подсистем, которым может быть придана любая топологическая конфигурация, соответствующая конкретному применению. Вычислительную поверхность можно рассматривать как целое процессорное хозяйство, работающее в многозадачном окружении, в котором на каждый вычислительный элемент приходится отдельная независимая задача. В этой ситуации многие реальные прикладные задачи могут решаться практически без каких-либо модификаций. С другой стороны, параллельность, внутренне присущая машине, может быть эффективно реализована в таких ситуациях, когда машина рассматривается со стороны задачи как однородный обрабатывающий ресурс.
Для того чтобы главная ЭВМ имела возможность создавать физическое отображение всей физической поверхности, предусмотрена поддерживающая инфраструктура. Пользуясь отображением и конфигурацией электронных средств, эта инфраструктура обеспечивает соединение топологических элементов в соответствии с высокоуровневым описанием, полученным из прикладной программы, которая должна быть загружена. Программные средства определяют как описание, выводимое на основе прикладной программы, так и машину, на которой эта программ будет выполняться. Программы могут быть написаны на языке Оккам или на других языках, таких, как Фортран, Си, Паскаль и т.д. Эти программы, выполняемые в соответствии с закономерностями языка Оккам, обеспечивают связь процессора с другими процессорами, которые, возможно, осуществляют копии той же программы.
Процесс формирования топологии обеспечивает иерархическое управление исходной программой, автоматическую рекомпиляцию, выдачу сообщений об ошибках в процессе выполнения, загрузку и прогонку программ в распределенном мультипроцессоре с использованием однофункциональных ключевых команд.
Производительность малой настольной вычислительной поверхности М10 может достигать 250 млн. операций/с; она ориентирована на использование ее в качестве персонального вычислительного ресурса, рабочей станции или системы проектирования. В более крупных системах используются модули типа М40, каждый из которых является основой для построения вычислительных средств в диапазоне от вычислительных установок, имеющих суммарную производительность 1100 млн. операций/с и одновременно адресуемую динамическую память с произвольной выборкой объемом 42 Мбайт, до машин баз данных с памятью 315 Мбайт, производительностью 400 млн. операций/с и пропускной способностью дисковой памяти более 75 Мбайт/с. модуль М40 имеет компактное конструктивное оформление размерами 40 дюйм ´ 20 дюйм ´ 20 дюйм и, обладая неограниченными соединительными возможностями, может быть включен в состав системы аналогичных модулей, имеющей необходимые масштабы.
Для создания заказных модулей вычислительные поверхности предусмотрен ряд плат и подсистем. Чтобы поверхность представляла логически оформленное вычислительное средство с точки зрения прикладного программиста, все вычислительные элементы соответствуют одной и той же обобщенной модели (см. рис. ниже). Каждый элемент построен на основе транспьютера и имеет наряду со специализированными функциональными блоками свой собственный интерфейс с глобальной супервизорной шиной и собственную локальную память. Каждый элемент снабжен восемью
В число специализированных функциональных плат входят следующие:
1) Счетверенное вычислительное устройство, включающее четыре элемента, каждый из которых содержит транспьютер Т414, ЗУПВ емкостью 256 Кбайт с обнаружением ошибок, восемь однонаправленных последовательных каналов связи и интерфейс супервизорной шины;
2) Запоминающее устройство большой емкости, содержащее транспьютер Т414, ЗУПВ емкостью 8 Мбайт с обнаружением ошибок, восемь однонаправленных последовательных каналов связи, интерфейс супервизорной шины и периферийный интерфейс SCSI с ЦДП-управлением и быстродействием 2 Мбайт/с. Для подключения к этому интерфейсу имеются винчестерские диски емкостью 500 Мбайт и лазерные диски емкостью 2 Гбайт;
3) Локальное главное устройство (стандарт IEEE 488), содержащее транспьютер Т414, ЗУПВ емкостью 3 Мбайт с обнаружением ошибок, ЭППЗУ емкостью 128 Кбайт, восемь однонаправленных последовательных каналов, интерфейс супервизорной шины, параллельный интерфейс IEEE 488 и сдвоенный последовательный интерфейс RS-232;
4) Элемент индикации, содержащий транспьютер Т414, внутреннее статическое ЗУПВ емкостью 128 Кбайт, двупортовая память индикации емкостью 1,5 Мбайт, восемь однонаправленных последовательных каналов связи, интерфейс супервизорной шины, внешний тракт элементов изображения с рабочей частотой 70 МГц (200 Мбайт/с) и генератор цветовых видеосигналов в соответствии со стандартами CCIR/RS-343. Множество элементов индикации может быть объединено для формирования увеличенной памяти кадра и расширения пропускной способности при формировании изображений.
Существуют вычислительные элементы повышенной производительности, построенные на базе транспьютера Т800, который имеет расширенные возможности для выполнения операций с плавающей запятой и внутреннее ЗУПВ емкостью 4 Кбайт.
Гиперкуб, или двоичный N-куб.
Гиперкубическая архитектура впервые была разработана в Калифорнийском технологическом институте; основной ее принцип состоит в использовании множества микропроцессоров, каждый из которых снабжен локальной памятью, для формирования вычислительных узлов, соединенных между собой двухпунктовыми связями. Гиперкуб размерности n объединяет N=2n узлов, которые независимо работают над выполнением отдельных частей полной программы. Так, куб размерности 6 содержит 64 узла, каждый из которых связан с шестью ближайшими соседями в пределах 6-размерного куба.
Данные могут вводиться в узлы посредством сообщений, посылаемых по каналам связи от процессоров, выполняемых в других узлах, или от управляющего процессора куба. Для управления посылкой и получением сообщений служат специальные примитивы операционной системы. Ширина полосы пропускания сигналов связи гиперкуба растет с увеличением числа узлов пропорционально N log2N, задержка в худшем случае составляет log2N.