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

Презентация:



Advertisements
Похожие презентации
Архитектура ЭВМ (лекция 7) проф. Петрова И.Ю. Курс Информатики.
Advertisements

Локальные компьютерные сети Выполнила студентка III курса ГБОУ СПО Баймакский сельскохозяйственный техникум Нигматуллина А.
Основные виды ресурсов и возможности их разделения.
Выполнила студентка II курса ГБОУ СПО Баймакский сельскохозяйственный техникум Вахитова Гульназ.
Устройство сетей. Доклад Кондратьевой А.А.. Устройство сетей. Вычислительная сеть – это совокупность компьютеров, соединенных линиями связи. Линии связи.
Работу выполнили ученики 21 гимназии 10 А класса.
Тема 3 Рассматриваемые вопросы 1. Классификация сетей 2. Назначение сетей 3. Компоненты вычислительных сетей 4. Топологии сетей 5. Архитектура сетей.
«СЕТИ КОМПЬЮТЕРОВ. ОСНОВНЫЕ ПОНЯТИЯ» Методическое пособие по дисциплине «Программное обеспечение компьютерных сетей и информационных систем»
Структура, организация и функции информационных систем Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования.
Базовые принципы устройства Энциклопедия учителя информатики Газета «Первое сентября»
Интернет Университет Суперкомпьютерных технологий Лекция 1 Основные понятия Учебный курс Введение в параллельные алгоритмы Якобовский М.В., д.ф.-м.н. Институт.
Структура компьютерных сетей. Компьютерные сети являются одной из самых перспективных и быстро развивающихся технологий XXI века. Желание передавать информацию.
Лекция 6. Способы адресации в микропроцессорных системах.
Каналы связи Рис Структура системы телеобработки данных Абонентская станция 1 Абонентская станция 2 Абонентская станция 3 Главный компьютер.
Под топологией ( компоновкой, конфигурацией, структурой ) компьютерной сети обычно понимается физическое расположение компьютеров сети один относительно.
Магистрально-модульный принцип построения компьютера Устройство компьютера.
Компьютер – универсальная техническая система обработки информации Информатика. 10 класс.
Выполнили: Мартышкин А. И. Кутузов В. В., Трояшкин П. В., Руководитель проекта – Мартышкин А. И., аспирант, ассистент кафедры ВМиС ПГТА.
Что такое компьютерная сеть КОМПЬЮТЕРНАЯ СЕТЬ – это система компьютеров, связанных каналами передачи информации Локальная сеть (в пределах помещения, предприятия)
Распределенная обработка информации Разработано: Е.Г. Лаврушиной.
Транксрипт:

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

Интервал между двумя последовательными достижениями солнцем наивысшей точки на небе называется солнечным днем. Солнечная секунда равняется 1/86400(24*3600) части солнечного дня. В 1940-х годах было установлено, что период вращения земли не постоянен - земля замедляет вращение из-за приливов и атмосферы. Геологи считают, что 300 миллионов лет назад в году было 400 дней. Происходят и изменения длительности дня по другим причинам. Поэтому стали вычислять за длительный период среднюю солнечную секунду. В настоящее время 50 лабораторий в разных точках земли имеют часы, базирующиеся на частоте излучения Цезия-133. Среднее значение является международным атомным временем (TAI), исчисляемым с 1 июля 1958 года. Отставание TAI от солнечного времени компенсируется становится добавлением секунды тогда, когда разница больше 800 мксек. Это скорректированное время, называемое UTC (Universal Coordinated Time), заменило прежний стандарт (Среднее время по Гринвичу - астрономическое время). Синхронизация времени

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

Введем для двух произвольных событий отношение "случилось до". Выражение a ® b читается "a случилось до b" и означает, что все процессы в системе считают, что сначала произошло событие a, а потом - событие b. Отношение "случилось до" обладает свойством транзитивности: если выражения a ® b и b ® c истинны, то справедливо и выражение a ® c. Для двух событий одного и того же процесса всегда можно установить отношение "случилось до", аналогично может быть установлено это отношение и для событий передачи сообщения одним процессом и приемом его другим, так как прием не может произойти раньше отправки. Однако, если два произвольных события случились в разных процессах на разных машинах, и эти процессы не имеют между собой никакой связи (даже косвенной через третьи процессы), то нельзя сказать с полной определенностью, какое из событий произошло раньше, а какое позже.

Ставится задача создания такого механизма ведения времени, который бы для каждого события а мог указать значение времени Т(а), с которым бы были согласны все процессы в системе. При этом должно выполняться условие: если а ® b, то Т(а) < Т(b). Кроме того, время может только увеличиваться и, следовательно, любые корректировки времени могут выполняться только путем добавления положительных значений, и никогда - путем вычитания. Рассмотрим алгоритм решения этой задачи, который предложил Lamport. Для отметок времени в нем используются события. На рисунке показаны три процесса, выполняющихся на разных машинах, каждая из которых имеет свои часы, идущие со своей скоростью. Как видно из рисунка, когда часы процесса 0 показали время 6, в процессе 1 часы показывали 8, а в процессе Предполагается, что все эти часы идут с постоянной для себя скоростью.

По каким направлениям идет развитие высокопроизводительной вычислительной техники в настоящее время? Таких направлений четыре. 1. Векторно-конвейерные компьютеры. Особенностью таких машин являются, во- первых, конвейерные функциональные устройства и, во-вторых, набор векторных инструкций в системе команд. В отличие от традиционного подхода, векторные команды оперируют целыми массивами независимых данных, что позволяет эффективно загружать доступные конвейеры. Типичным представителем данного направления является линия векторно-конвейерных компьютеров CRAY компании Cray Research.Векторно-конвейерные компьютеры

В 1972 году С.Крэй покидает CDC и основывает свою компанию Cray Research, которая в 1976г. выпускает первый векторно-конвейерный компьютер CRAY-1: время такта 12.5нс, 12 конвейерных функциональных устройств, пиковая производительность 160 миллионов операций в секунду, оперативная память до 1Мслова (слово - 64 разряда), цикл памяти 50нс. Главным новшеством является введение векторных команд, работающих с целыми массивами независимых данных и позволяющих эффективно использовать конвейерные функциональные устройства.Cray Research

Массивно-параллельные компьютерыМассивно-параллельные компьютеры с распределенной памятью. Идея построения компьютеров этого класса тривиальна: возьмем серийные микропроцессоры, снабдим каждый своей локальной памятью, соединим посредством некоторой коммуникационной среды, например, сетью - вот и все. Достоинств у такой архитектуры масса: если нужна высокая производительность, то можно добавить еще процессоров, а если ограничены финансы или заранее известна требуемая вычислительная мощность, то легко подобрать оптимальную конфигурацию. Однако есть и решающий "минус", сводящий многие "плюсы" на нет. Дело в том, что межпроцессорное взаимодействие в компьютерах этого класса идет намного медленнее, чем происходит локальная обработка данных самими процессорами. Именно поэтому написать эффективную программу для таких компьютеров очень сложно, а для некоторых алгоритмов иногда просто невозможно. К данному классу можно отнести компьютеры Intel Paragon, IBM SP1, Parsytec, в какой-то степени IBM SP2 и CRAY T3D/T3E, хотя в этих компьютерах влияние указанного минуса значительно ослаблено. К этому же классу можно отнести и сети компьютеров, которые все чаще рассматривают как дешевую альтернативу крайне дорогим суперкомпьютерам.T3Eсети компьютеров

IBM SP2IBM SP2, массивно-параллельный компьютер фирмы IBM (иногда такие компьютеры называют компьютерами с массовым параллелизмом). В настоящее время строится на основе стандартных микропроцессоров PowerPC 604e или POWER2 SC, соединенных между собой через высокоскоростной коммутатор, причем каждый имеет свою локальную оперативную память и дисковую подсистему. Характеристики этих микропроцессоров известны и особых удивлений не вызывают, однако в рамках одной SP системы их может быть объединено очень много. В частности, максимальная система, установленная в Pacific Northwest National Laboratoriy (Richland, USA), содержит 512 процессоров. Исходя из числа процессоров, можно представить суммарную мощность всей вычислительной системы...IBM

Параллельные компьютеры с общей памятью. Вся оперативная память таких компьютеров разделяется несколькими одинаковыми процессорами. Это снимает проблемы предыдущего класса, но добавляет новые - число процессоров, имеющих доступ к общей памяти по чисто техническим причинам нельзя сделать большим. В данное направление входят многие современные многопроцессорные SMP-компьютеры, например, сервер HP T600 или Sun Ultra Enterprise 5000.компьютеры с общей памятью Последнее направление, строго говоря, не является самостоятельным, а скорее представляет собой комбинации предыдущих трех. Из нескольких процессоров, традиционных или векторно-конвейерных, и общей для них памяти сформируем вычислительный узел. Если вычислительной мощности полученного узла не достаточно, то объединим несколько узлов высокоскоростными каналами. Подобную архитектуру называют кластерной, и по такому принципу построены CRAY SV1, HP Exemplar, Sun StarFire, NEC SX-5, последние модели IBM SP2 и другие. Именно это направление является наиболее перспективным в настоящее время.кластернойSV1ExemplarStarFireSX-5SP2

Н.Новгород, 2010 г. Многоядерный компьютерный мир: освоение новых горизонтов 18 из 51 Multicore Era Microprocessor Era MegaFLOPGigaFLOPTeraFLOPPetaFLOPExaFLOP 2007 Многоядерность… Революционный 2007 год

Н.Новгород, 2010 г. Многоядерный компьютерный мир: освоение новых горизонтов 19 из 51 Многоядерность…

Н.Новгород, 2010 г. Многоядерный компьютерный мир: освоение новых горизонтов 22 из 51 Грид и Облачные вычисления: общая характеристика… Грид – географически распределенная инфраструктура, объединяющая множество ресурсов разных типов (процессоры, долговременная и оперативная память, хранилища и базы данных, сети), доступ к которым пользователь может получить из любой точки, независимо от места их расположения.

Н.Новгород, 2010 г. Многоядерный компьютерный мир: освоение новых горизонтов 23 из 51 Грид и Облачные вычисления: общая характеристика… Грид предполагает коллективный разделяемый режим доступа к ресурсам и к связанным с ними услугам в рамках глобально распределенных виртуальных организаций, состоящих из предприятий и отдельных специалистов, совместно использующих общие ресурсы. В каждой виртуальной организации имеется своя собственная политика поведения ее участников, которые должны соблюдать установленные правила. Виртуальная организация может образовываться динамически и иметь ограниченное время существования.

Н.Новгород, 2010 г. Многоядерный компьютерный мир: освоение новых горизонтов 24 из 51 Грид и Облачные вычисления: общая характеристика… Облачные вычисления это стиль, при котором масштабируемые ИТ- ресурсы предоставляются внешним пользователям в качестве сервиса с помощью интернет- технологий.

Н.Новгород, 2010 г. Многоядерный компьютерный мир: освоение новых горизонтов 25 из 51 Грид и Облачные вычисления: общая характеристика… Облако создает новый подход к организации работ. Ни оборудование, ни программное обеспечение в таком случае не принадлежат пользователю: гораздо удобнее покупать сервис, а не вычислительные мощности для его построения. Вычисления в облаках «электричество» будущего. Включаешь свет и становится светло, включаешь компьютер и выходишь в облака. С точки зрения корпоративного пользователя можно было бы дать очень простое определение облаку: «Это не моя информационная структура, но я использую ее в работе».

Н.Новгород, 2010 г. Многоядерный компьютерный мир: освоение новых горизонтов 26 из 51 Заключение Качественное изменение характера использования математического моделирования и компьютерных технологий для решения актуальных задач науки, техники, промышленности – массовость, сложность, вычислительная трудоемкость, социальная значимость результатов Становление вычислительных наук как нового научного направления Суперкомпьютерные технологии составляют технологическую основу вычислительных наук Использование многоядерности в качестве стратегии развития компьютерной техники Разработка программного обеспечения для многоядерных систем для решения сложнейших задач вычислительных наук - фундаментальная проблема, грозящая перерасти в проблему национальной безопасности