Развитие вычислительных технологий и средств сопровождалось пониманием того, что работы надо делить между многими исполнительными устройствами. Распараллеливание — естественный жизненный принцип, основанный на утверждении, что коллектив сильнее одиночки. Основной критерий эффективности распараллеливания заключается в минимизации времени выполнения работы. Однако действенен и другой критерий — выбор системы исполнителей, обладающей минимальной стоимостью и способной закончить работу не позже указанного срока.
Вычислительные системы с особой остротой на реальном техническом уровне вобрали в себя принцип распараллеливания, развив его в самом широком многообразии применения. Наступила пора разрушить монополию, систематизировать и обобщить методы и технологии распараллеливания, обеспечить их эффективное применение во всех областях хозяйственной деятельности человека.
Можно представить следующие направления развития параллельных технологий.
Книга рассчитана на студентов старших курсов технических и экономических вузов, аспирантов, инженеров-исследователей в области современных информационных технологий решения задач планирования и управления.
Необходимый объем предварительных знаний базируется на стандартах курсов по информатике и основам ЭВМ.
В соответствии с названием книги мы будем говорить как о принципах работы параллельного компьютера, так и о методах организации и управления параллельным вычислительным процессом, а также о параллельных вычислительных методах решения задач. Но в более значительной степени нас будут интересовать обобщения и расширение использования методов параллельного планирования за границы узкого применения в области вычислительных средств.
Теперь не секрет, что "холодная война" стимулировала развитие вычислительных средств сверхвысокой (по тому времени) производительности, призванных удовлетворить требования управления сложными объектами и системами в реальном масштабе времени. Отсутствие какой-либо внешней помощи вынуждало мобилизовать все внутренние научные и производственные ресурсы, производя работы в режиме экономии средств и времени.
Развитие элементно-конструкторской базы, основанное на физических
принципах электроники, всегда (и это диалектически правильно) отстает от
требований конкретно решаемых задач. Быстродействия одного компьютера
недостаточно для, например, массового обслуживания группы перехватчиков,
стартующих против налета баллистических целей. Своевременно пришло
понимание того, что только
Сначала стало ясно, что вместо одной ЭВМ в систему управления необходимо
встраивать несколько, решающих единый набор функционально связанных задач.
Такой коллектив ЭВМ получил название вычислительного комплекса (ВК).
Информационная взаимосвязанность задач потребовала применения средств
оперативного обмена данными внутри ВК и
Впоследствии принципы распараллеливания стали применяться на всех уровнях разработки ВС: и отдельных устройств, и процессоров. Отметим, что такой способ распараллеливания, как конвейерный, использовался на раннем этапе создания ЭВМ и используется сейчас.
Приоритет в создании ВС на общей памяти принадлежит С. Крею, признанному
"отцу
В нашей стране, в режиме строгой экономии средств, экспериментальная разработка альтернативных проектов была затруднительной. Крупные проекты осуществлялись для непосредственного внедрения. В этих условиях оказалось, что на малое число ученых-разработчиков приходилась армия ученых-исследователей, на теоретическом уровне обосновывающих как принимаемые решения, так и оптимальную эксплуатацию, а также пути дальнейшего развития.
Здесь-то и появились результаты глубоких исследований, применение которых, первоначально обращенное на ВС, имеет более широкую применимость во всех сферах управления, экономики и хозяйства.
Необходимо отметить тех выдающихся ученых, чьими усилиями осуществлялась не только разработка, но и обоснование эффективности и целесообразности пути создания многопроцессорных ВС, ибо своевременно принятая техническая политика определяет эффективное развитие государства. (К сожалению, известна и негативная политика в области вычислительной техники, отвлекшая значительные технологические ресурсы.) Такими учеными являются: В.М.Бахарев, настойчиво пропагандировавший, продвигавший и руководивший исследованиями в области ВС на общей памяти; В.С.Бурцев и Б.А.Бабаян — конструкторы и ведущие разработчики семейства "Эльбрус", продолжающие борьбу за честь Отечества и поныне; М.А.Карцев — теоретик ВС и разработчик семейства, по его словам, "универсальных спецпроцессоров", объединивших в одном вычислительном устройстве скалярные и векторные операции; Б.А.Головкин, исследовавший эффективность внедрения ВС в сложные управляющие системы.
Какова же цель распараллеливания?
Универсальным критерием, используемым при решении задач распараллеливания, является минимум времени выполнения совокупности работ, распределяемых между процессорами.
Если несколько процессоров составляют ВС, то важной характеристикой ее
эффективности (основные составляющие эффективности — производительность,
надежность, стоимость) при специализированном использовании (например, в
составе автоматизированной системы управления, АСУ) является коэффициент
полезной загрузки k3. Для его определения находят коэффициенты
загрузки
процессоров:$$k_{3i}=\frac{T_i}{T_{\text{реш}}},$$
где Ti, i = 1, ..., n, — суммарное время
занятости каждого процессора решением задачи на всем отрезке полного решения задачи, длиной Tреш (рис.В.1). Тогда$$k_{\text{З}}=\frac{1}{n}\sum_{i=1}^n k_i.$$
Если P0 — производительность одного процессора, то реальная
производительность PBC ВС, состоящей из n
процессоров, при решении данной задачи (!) находится:$$P_{BC}=nk_{\text{З}}P_0,$$
где P0 определяется
(рис B.1) Диаграмма параллельного выполнения информационно взаимосвязанных работ в ВС
Какая догадка явилась предпосылкой организации параллельной обработки информации?
Основное предположение об эффективности совместной работы нескольких процессоров при решении множества задач (функциональных модулей) управляющей системы основывалось на возможности усреднения нагрузки при динамическом распределении работ между процессорами. Такое усреднение позволяет сгладить пиковую нагрузку на отдельные процессоры, а, следовательно, снизить требования к их производительности. Конечно, это справедливо в том случае, если увеличивающиеся накладные расходы, связанные с организацией динамического управления вычислительным процессом (диспетчированием), оправдывают эти затраты.
Пусть управляющая система обслуживает несколько объектов, каждый из
которых требует затраты производительности P, в соответствии со
стадией обслуживания, как показано временными диаграммами на рис. В.2. Начала
обслуживания, а также длительность стадий обслуживания, случайно
распределены во времени. На каждой стадии обслуживания используется общее
для всех объектов подмножество программ — функциональных модулей. Тогда
видно, что если за объектами жестко закреплять процессоры ВС, то их
производительность должна удовлетворять самой напряженной последней стадии
обслуживания. Если же в соответствии со случайным взаимным смещением этой
стадии все множество функциональных модулей, требуемых для всех объектов,
динамически распределять между процессорами, то такой пиковой нагрузки на
один процессор в среднем можно избежать. То есть можно руководствоваться
результирующей диаграммой на основе суммирования тех, что изображены на
рисунке.
Конечно, такое допущение должно подтверждаться на основе моделирования реальных ситуаций, требований к эффективности управляющей системы и на основе разработок оперативных диспетчеров распараллеливания.
(рис B.2) Затраты производительности при обслуживании нескольких объектов
Разработки в области ВС не могли не повлиять на практику параллельного планирования в широком диапазоне применения. Ведь задачи оптимального распараллеливания входят в класс задач исследования операций, и это определяет контекст их исследования. Суть этих задач - в минимизации времени выполнения статически заданного или динамически формируемого частично упорядоченного множества заданий на выполнение работ, а также в минимальном по стоимости наборе исполнителей, достаточном для выполнения множества таких заданий за ограниченное время.
Вспомним время робких экономических реформ первой половины 1960-х годов, когда каждый проект сопровождался активным и обязательным применением средств оперативного планирования (известная система ПЕРТ). В динамике выполнения проекта исследовалось графическое временное представление взаимосвязанных работ, определялась длина критического пути, ранние и поздние сроки начала (окончания) работ, находились оптимальные расписания, перераспределялись работы между исполнителями.
Отметим "неловкое" традиционное представление информации при решении указанных задач. Это — важный пример того, как непродуманное задание исходной информации влияет на сложность решаемых задач.
В приложении к ВС (другой разработчик — другой подход) распараллеливаемое множество работ описывается иначе, и то, что было сложно, становится простым. Так, например, определение длины критического пути — незначительная по трудоемкости процедура, выполняемая в составе более сложной операции оптимального планирования. В ВС используются простые диспетчеры динамического распределения работ, нетрудоемкость которых (при достигаемой близости к оптимальному результату) и разрешает их включение в операционную систему (ОС) ВС.
Однако ВС способна не только делиться своими методами с управлением и планированием. Закономерно и обратное влияние: задачи предъявляют требования к архитектуре ВС, обеспечивающие их эффективное решение.
С учетом этого взаимного влияния подход к решению таких задач существенно расширяется. Дело в том, что многие методы вычислений (а речь идет о задачах высокой сложности — оптимизационных, информационно-логических, моделирования сложных систем и др.), создавались в эпоху, когда математик-вычислитель крутил ручку арифмометра. Минимизация числа операций была единственным критерием сложности метода, а многие "интеллектуальные" действия при этом не учитывались.
При программировании на ВС, как видно из рисунков, существенной является
длина критического пути в
В утверждение философского тезиса о том, что "развитие идет по спирали", идея объединения ЭВМ в единый ВК вновь проявилась в образе организации вычислительных сетей. Локальные, региональные, корпоративные, глобальные сети (вплоть до паутины Интернет) представляют универсальный и значительный ресурс для решения как информационных, так и вычислительных задач высокой сложности. Это молодое направление исследований также нуждается в конкретизации и приложении тех же идей распараллеливания, что применяются для оптимального программирования ВС.
Отметим существование ряда отечественных школ, послуживших развитию параллельных технологий как важного теоретического и практического научного направления.
Такие школы возглавляли И.В.Прангишвили, С.Я.Виленкин, В.В.Игнатущенко и др. — в области создания микропроцессорных векторных ВС и ВС с перестраиваемой структурой. Новосибирская школа (Ю.Г.Косарев, В.Е.Котов, А.С.Нариньяни и др.) пропагандировала универсальные, многофункциональные структуры ВС и значительно продвинулась в теоретическом обосновании параллельных вычислительных процессов. Плодотворной была Таганрогская школа, возглавляемая А.В. Каляевым, которая защищала идею многопроцессорных ВС с программируемой структурой. С началом "перестройки" закончились очередные попытки "догнать и перегнать" на основе расширенного воспроизведения идей С. Крея в рамках проекта "Электроника ССБИС", осуществляемого В.А. Мельниковым — конструктором замечательной ЭВМ "БЭСМ-6".
В 1967 году в издательстве "Советское радио" вышла монография Ю.С.Голубева-Новожилова "Многомашинные комплексы вычислительных средств", которую можно считать первой отечественной публикацией, отображающей применение параллельных технологий в вычислительных системах. Однако в более общем применении следует указать, например, на монографию С.И.Зуховицкого и И.А.Радчика "Математические методы сетевого планирования", вышедшую в издательстве "Наука" в 1965 году. И все же первым теоретическим осмыслением нового направления следует считать монографию Д.А.Поспелова "Введение в теорию вычислительных систем", вышедшую в издательстве "Советское радио" в 1972 году. Следует отметить и дальнейшую роль Д.А. Поспелова в развитии идей компьютерных технологий — от элементно-логической базы и основ оперативного управления до искусственного интеллекта.
Основная цель предлагаемой книги — обобщение, перенесение и развитие того, что известно применительно к вычислительным системам, в более широкую область экономической, социальной и другой деятельности человека.
Развитие вычислительных технологий и средств сопровождалось пониманием того, что работы надо делить между многими исполнительными устройствами. Распараллеливание — естественный жизненный принцип, основанный на утверждении, что коллектив сильнее одиночки. Основной критерий эффективности распараллеливания заключается в минимизации времени выполнения работы. Однако действенен и другой критерий — выбор системы исполнителей, обладающей минимальной стоимостью и способной закончить работу не позже указанного срока.
Вычислительные системы с особой остротой на реальном техническом уровне вобрали в себя принцип распараллеливания, развив его в самом широком многообразии применения. Наступила пора разрушить монополию, систематизировать и обобщить методы и технологии распараллеливания, обеспечить их эффективное применение во всех областях хозяйственной деятельности человека.
Можно представить следующие направления развития параллельных технологий.
Книга рассчитана на студентов старших курсов технических и экономических вузов, аспирантов, инженеров-исследователей в области современных информационных технологий решения задач планирования и управления.
Необходимый объем предварительных знаний базируется на стандартах курсов по информатике и основам ЭВМ.
В соответствии с названием книги мы будем говорить как о принципах работы параллельного компьютера, так и о методах организации и управления параллельным вычислительным процессом, а также о параллельных вычислительных методах решения задач. Но в более значительной степени нас будут интересовать обобщения и расширение использования методов параллельного планирования за границы узкого применения в области вычислительных средств.
Теперь не секрет, что "холодная война" стимулировала развитие вычислительных средств сверхвысокой (по тому времени) производительности, призванных удовлетворить требования управления сложными объектами и системами в реальном масштабе времени. Отсутствие какой-либо внешней помощи вынуждало мобилизовать все внутренние научные и производственные ресурсы, производя работы в режиме экономии средств и времени.
Развитие элементно-конструкторской базы, основанное на физических
принципах электроники, всегда (и это диалектически правильно) отстает от
требований конкретно решаемых задач. Быстродействия одного компьютера
недостаточно для, например, массового обслуживания группы перехватчиков,
стартующих против налета баллистических целей. Своевременно пришло
понимание того, что только
Сначала стало ясно, что вместо одной ЭВМ в систему управления необходимо
встраивать несколько, решающих единый набор функционально связанных задач.
Такой коллектив ЭВМ получил название вычислительного комплекса (ВК).
Информационная взаимосвязанность задач потребовала применения средств
оперативного обмена данными внутри ВК и
Впоследствии принципы распараллеливания стали применяться на всех уровнях разработки ВС: и отдельных устройств, и процессоров. Отметим, что такой способ распараллеливания, как конвейерный, использовался на раннем этапе создания ЭВМ и используется сейчас.
Приоритет в создании ВС на общей памяти принадлежит С. Крею, признанному
"отцу
В нашей стране, в режиме строгой экономии средств, экспериментальная разработка альтернативных проектов была затруднительной. Крупные проекты осуществлялись для непосредственного внедрения. В этих условиях оказалось, что на малое число ученых-разработчиков приходилась армия ученых-исследователей, на теоретическом уровне обосновывающих как принимаемые решения, так и оптимальную эксплуатацию, а также пути дальнейшего развития.
Здесь-то и появились результаты глубоких исследований, применение которых, первоначально обращенное на ВС, имеет более широкую применимость во всех сферах управления, экономики и хозяйства.
Необходимо отметить тех выдающихся ученых, чьими усилиями осуществлялась не только разработка, но и обоснование эффективности и целесообразности пути создания многопроцессорных ВС, ибо своевременно принятая техническая политика определяет эффективное развитие государства. (К сожалению, известна и негативная политика в области вычислительной техники, отвлекшая значительные технологические ресурсы.) Такими учеными являются: В.М.Бахарев, настойчиво пропагандировавший, продвигавший и руководивший исследованиями в области ВС на общей памяти; В.С.Бурцев и Б.А.Бабаян — конструкторы и ведущие разработчики семейства "Эльбрус", продолжающие борьбу за честь Отечества и поныне; М.А.Карцев — теоретик ВС и разработчик семейства, по его словам, "универсальных спецпроцессоров", объединивших в одном вычислительном устройстве скалярные и векторные операции; Б.А.Головкин, исследовавший эффективность внедрения ВС в сложные управляющие системы.
Какова же цель распараллеливания?
Универсальным критерием, используемым при решении задач распараллеливания, является минимум времени выполнения совокупности работ, распределяемых между процессорами.
Если несколько процессоров составляют ВС, то важной характеристикой ее
эффективности (основные составляющие эффективности — производительность,
надежность, стоимость) при специализированном использовании (например, в
составе автоматизированной системы управления, АСУ) является коэффициент
полезной загрузки k3. Для его определения находят коэффициенты
загрузки
процессоров:$$k_{3i}=\frac{T_i}{T_{\text{реш}}},$$
где Ti, i = 1, ..., n, — суммарное время
занятости каждого процессора решением задачи на всем отрезке полного решения задачи, длиной Tреш (рис.В.1). Тогда$$k_{\text{З}}=\frac{1}{n}\sum_{i=1}^n k_i.$$
Если P0 — производительность одного процессора, то реальная
производительность PBC ВС, состоящей из n
процессоров, при решении данной задачи (!) находится:$$P_{BC}=nk_{\text{З}}P_0,$$
где P0 определяется
(рис B.1) Диаграмма параллельного выполнения информационно взаимосвязанных работ в ВС
Какая догадка явилась предпосылкой организации параллельной обработки информации?
Основное предположение об эффективности совместной работы нескольких процессоров при решении множества задач (функциональных модулей) управляющей системы основывалось на возможности усреднения нагрузки при динамическом распределении работ между процессорами. Такое усреднение позволяет сгладить пиковую нагрузку на отдельные процессоры, а, следовательно, снизить требования к их производительности. Конечно, это справедливо в том случае, если увеличивающиеся накладные расходы, связанные с организацией динамического управления вычислительным процессом (диспетчированием), оправдывают эти затраты.
Пусть управляющая система обслуживает несколько объектов, каждый из
которых требует затраты производительности P, в соответствии со
стадией обслуживания, как показано временными диаграммами на рис. В.2. Начала
обслуживания, а также длительность стадий обслуживания, случайно
распределены во времени. На каждой стадии обслуживания используется общее
для всех объектов подмножество программ — функциональных модулей. Тогда
видно, что если за объектами жестко закреплять процессоры ВС, то их
производительность должна удовлетворять самой напряженной последней стадии
обслуживания. Если же в соответствии со случайным взаимным смещением этой
стадии все множество функциональных модулей, требуемых для всех объектов,
динамически распределять между процессорами, то такой пиковой нагрузки на
один процессор в среднем можно избежать. То есть можно руководствоваться
результирующей диаграммой на основе суммирования тех, что изображены на
рисунке.
Конечно, такое допущение должно подтверждаться на основе моделирования реальных ситуаций, требований к эффективности управляющей системы и на основе разработок оперативных диспетчеров распараллеливания.
(рис B.2) Затраты производительности при обслуживании нескольких объектов
Разработки в области ВС не могли не повлиять на практику параллельного планирования в широком диапазоне применения. Ведь задачи оптимального распараллеливания входят в класс задач исследования операций, и это определяет контекст их исследования. Суть этих задач - в минимизации времени выполнения статически заданного или динамически формируемого частично упорядоченного множества заданий на выполнение работ, а также в минимальном по стоимости наборе исполнителей, достаточном для выполнения множества таких заданий за ограниченное время.
Вспомним время робких экономических реформ первой половины 1960-х годов, когда каждый проект сопровождался активным и обязательным применением средств оперативного планирования (известная система ПЕРТ). В динамике выполнения проекта исследовалось графическое временное представление взаимосвязанных работ, определялась длина критического пути, ранние и поздние сроки начала (окончания) работ, находились оптимальные расписания, перераспределялись работы между исполнителями.
Отметим "неловкое" традиционное представление информации при решении указанных задач. Это — важный пример того, как непродуманное задание исходной информации влияет на сложность решаемых задач.
В приложении к ВС (другой разработчик — другой подход) распараллеливаемое множество работ описывается иначе, и то, что было сложно, становится простым. Так, например, определение длины критического пути — незначительная по трудоемкости процедура, выполняемая в составе более сложной операции оптимального планирования. В ВС используются простые диспетчеры динамического распределения работ, нетрудоемкость которых (при достигаемой близости к оптимальному результату) и разрешает их включение в операционную систему (ОС) ВС.
Однако ВС способна не только делиться своими методами с управлением и планированием. Закономерно и обратное влияние: задачи предъявляют требования к архитектуре ВС, обеспечивающие их эффективное решение.
С учетом этого взаимного влияния подход к решению таких задач существенно расширяется. Дело в том, что многие методы вычислений (а речь идет о задачах высокой сложности — оптимизационных, информационно-логических, моделирования сложных систем и др.), создавались в эпоху, когда математик-вычислитель крутил ручку арифмометра. Минимизация числа операций была единственным критерием сложности метода, а многие "интеллектуальные" действия при этом не учитывались.
При программировании на ВС, как видно из рисунков, существенной является
длина критического пути в
В утверждение философского тезиса о том, что "развитие идет по спирали", идея объединения ЭВМ в единый ВК вновь проявилась в образе организации вычислительных сетей. Локальные, региональные, корпоративные, глобальные сети (вплоть до паутины Интернет) представляют универсальный и значительный ресурс для решения как информационных, так и вычислительных задач высокой сложности. Это молодое направление исследований также нуждается в конкретизации и приложении тех же идей распараллеливания, что применяются для оптимального программирования ВС.
Отметим существование ряда отечественных школ, послуживших развитию параллельных технологий как важного теоретического и практического научного направления.
Такие школы возглавляли И.В.Прангишвили, С.Я.Виленкин, В.В.Игнатущенко и др. — в области создания микропроцессорных векторных ВС и ВС с перестраиваемой структурой. Новосибирская школа (Ю.Г.Косарев, В.Е.Котов, А.С.Нариньяни и др.) пропагандировала универсальные, многофункциональные структуры ВС и значительно продвинулась в теоретическом обосновании параллельных вычислительных процессов. Плодотворной была Таганрогская школа, возглавляемая А.В. Каляевым, которая защищала идею многопроцессорных ВС с программируемой структурой. С началом "перестройки" закончились очередные попытки "догнать и перегнать" на основе расширенного воспроизведения идей С. Крея в рамках проекта "Электроника ССБИС", осуществляемого В.А. Мельниковым — конструктором замечательной ЭВМ "БЭСМ-6".
В 1967 году в издательстве "Советское радио" вышла монография Ю.С.Голубева-Новожилова "Многомашинные комплексы вычислительных средств", которую можно считать первой отечественной публикацией, отображающей применение параллельных технологий в вычислительных системах. Однако в более общем применении следует указать, например, на монографию С.И.Зуховицкого и И.А.Радчика "Математические методы сетевого планирования", вышедшую в издательстве "Наука" в 1965 году. И все же первым теоретическим осмыслением нового направления следует считать монографию Д.А.Поспелова "Введение в теорию вычислительных систем", вышедшую в издательстве "Советское радио" в 1972 году. Следует отметить и дальнейшую роль Д.А. Поспелова в развитии идей компьютерных технологий — от элементно-логической базы и основ оперативного управления до искусственного интеллекта.
Основная цель предлагаемой книги — обобщение, перенесение и развитие того, что известно применительно к вычислительным системам, в более широкую область экономической, социальной и другой деятельности человека.
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.