Технология решения систем линейных алгебраических уравнений в распределенной вычислительной среде icon

Технология решения систем линейных алгебраических уравнений в распределенной вычислительной среде




Скачати 48.43 Kb.
НазваТехнология решения систем линейных алгебраических уравнений в распределенной вычислительной среде
Дата01.07.2012
Розмір48.43 Kb.
ТипЗадача

ТЕХНОЛОГИЯ РЕШЕНИЯ СИСТЕМ ЛИНЕЙНЫХ АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ В

РАСПРЕДЕЛЕННОЙ ВЫЧИСЛИТЕЛЬНОЙ СРЕДЕ


П. Е. Горб, Ю. В. Ладыженский

Донецкий национальный технический университет


Рассматривается технология решения больших систем линейных алгебраических уравнений вида:

Ax = b (1)

где A – невырожденная матрица порядка n*n, b – вектор свободных членов, x – вектор неизвестных. Решение системы осуществляется итерационными методами.

Задача решения систем уравнений вида (1) достаточно распространена. Она возникает при описании нескольких процессов, каждый из которых описывается линейным уравнением. Сюда относится изучение процессов, протекающих в линейных электрических схемах, аппроксимация систем дифференциальных уравнений, в частности, описывающих процессы теплопроводности.

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

Поскольку компоненты среды физически разнесены в пространстве, то каждый процесс имеет локальную память и использование глобальных структур данных невозможно. Такая схема взаимодействия предполагает обмен сообщениями между процессами.

Предлагается строить взаимодействие между процессами по следующему принципу. Есть некоторый процесс, который получает данные от пользователя. Он проводит предварительную обработку этих данных. Затем процесс формирует сообщения и рассылает их требуемому числу вспомогательных процессов, которые выполняют непосредственные вычисления. Ответ возвращается первому процессу в виде сообщений от вспомогательных процессов. Здесь происходит анализ результатов вычислений и, при необходимости, процедура повторяется. Такой принцип взаимодействия процессов носит название «управляющий-рабочие». Первый процесс является управляющим, вспомогательные процессы – это рабочие.

Существует несколько технологий построения распределенных вычислительных систем. Одна из первых, технология RPC (Remote Procedure Call), основана на удаленных вызовах процедур. Процессу разрешается вызывать процедуры, реализованные на другой, удаленной машине. При этом параметры процедуры передаются на удаленную машину, там осуществляется выполнение процедуры и результаты возвращаются в точку вызова.

Технология COM (Component Object Model) – это объектная модель компонентов. Она применяется для связи между компонентами и приложениями, а также при описании API и взаимодействии различных языков и сред программирования. Одним из главных аспектов технологии COM является реализация клиент-серверных приложений при помощи интерфейсов. В COM-приложение входят COM-сервер, COM-клиент и COM-интерфейс.

COM-сервер – приложение или библиотека, которая предоставляет некоторые службы приложению-клиенту. COM-сервер содержит один или несколько COM-объектов. Каждый COM-объект реализует одну или несколько служб. Каждая служба описывается интерфейсом.

COM-клиент – приложение, которое использует службы COM-сервера, запрашивая при этом описанные интерфейсы.

COM-интерфейс – абстрактный класс, описывающий свойства и методы COM-объекта. Клиент через интерфейс объекта может использовать его методы и свойства как свои собственные.

Существует также технология CORBA (Common Object Request Broker Architecture) – обобщенная архитектура брокера объектных запросов. Данная технология также основана на ключевом понятии интерфейса. Объект предоставляет службу. Клиент обращается к ней, используя интерфейс.

В технологиях COM и CORBA реализована идея распределенных объектов (distributed objects). При этом интерфейс служит универсальным средством взаимодействия. Распределенные объекты размещаются на разных машинах. Когда процесс вызывает метод, реализация интерфейса на машине с процессом преобразует вызов метода в сообщение передаваемое объекту. Объект выполняет запрос и возвращает результаты. Реализация интерфейса преобразует ответное сообщение в возвращаемое значение, которое передается вызвавшему процессу.

Реализация распределенной системы, решающей систему уравнений вида (1), возможна средствами технологии COM, в качестве инструмента взята среда разработки Delphi. Перенос модели «управляющий-рабочие» на COM подразумевает следующее. Управляющий процесс должен быть реализован как COM-клиент, рабочие процессы, выполняющие вычисления, реализуются как COM-сервера, предоставляющие свои услуги через интерфейсы. COM-клиент принимает исходную систему от пользователя, выполняет преобразование к виду, удобному для итерации, делит систему на блоки, рассылает части исходных данных COM-серверам, используя их интерфейсы. Когда ответ получен, клиент выполняет сборку результатов и анализ точности полученного решения. При достижении заданной точности процесс вычислений прекращается. Важно, что в данном случае COM-клиент реализуется как одиночное приложение, использующее услуги нескольких удаленных COM-серверов.

В свою очередь, COM-сервера содержат COM-объекты, которые и реализуют функциональность, обеспечивающую решение систем вида (1) итерационными методами.

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

Литература

  1. Ортега Дж. Введение в параллельные и векторные методы решения линейных систем: Пер. с англ. – М.: Мир, 1991.

  2. Валях Е. Последовательно-параллельные вычисления. – М.: Мир, 1985.

  3. Таненбаум Э., Ван Стеен М. Распределенные системы. Принципы и парадигмы. – СПб.: Питер, 2003.

Схожі:

Технология решения систем линейных алгебраических уравнений в распределенной вычислительной среде iconПрактическая работа № Тема: Нахождение решений уравнений и систем уравнений
Цель: Освоить графический метод для решения уравнений и систем уравнений, научиться решать уравнения с одним неизвестным с помощью...
Технология решения систем линейных алгебраических уравнений в распределенной вычислительной среде icon5. системы линейных уравнений
Исследование и нахождение решений систем линейных уравнений является одной из центральных задач линейной алгебры. Можно сказать,...
Технология решения систем линейных алгебраических уравнений в распределенной вычислительной среде iconРешение алгебраических уравнений и систем

Технология решения систем линейных алгебраических уравнений в распределенной вычислительной среде iconРешение уравнений и систем уравнений
Такие программы наряду с множеством уже реализованных в них методов позволяют пользователям самостоятельно разрабатывать схемы решения...
Технология решения систем линейных алгебраических уравнений в распределенной вычислительной среде iconПриклад оформлення тексту тез доповідей
Аннотация. Рассматривается сведение классической системы уравнений Максвелла для линейных однородных изотропных покоящихся сред к...
Технология решения систем линейных алгебраических уравнений в распределенной вычислительной среде iconА. С. Попова сведение класической системы уравнений максвелла к скалярным уравнениям относительно компонент векторов е и н
Аннотация. Рассматривается сведение классической системы уравнений Максвелла для линейных однородных изотропных покоящихся сред к...
Технология решения систем линейных алгебраических уравнений в распределенной вычислительной среде icon§5 Решение систем n уравнений из n неизвестными
Установив основные свойства и способы вычисления определителей матриц любого порядка, возвратимся к основной задаче решению и исследованию...
Технология решения систем линейных алгебраических уравнений в распределенной вычислительной среде icon§5 Решение систем n уравнений из n неизвестными
Установив основные свойства и способы вычисления определителей матриц любого порядка, возвратимся к основной задаче решению и исследованию...
Технология решения систем линейных алгебраических уравнений в распределенной вычислительной среде iconА. А. Кузнецов, ктн, снс, Харьковский университет Воздушных Сил им. Ивана Кожедуба
Алгебраический метод декодирования линейных блоковых кодов на алгебраических кривых в р3
Технология решения систем линейных алгебраических уравнений в распределенной вычислительной среде iconА. А. Литвиненко, доц
Предлагается алгоритм численного метода решения систем обыкновенных дифференциальных уравнений (задачи Коши), представляющий собой...
Додайте кнопку на своєму сайті:
Документи


База даних захищена авторським правом ©zavantag.com 2000-2013
При копіюванні матеріалу обов'язкове зазначення активного посилання відкритою для індексації.
звернутися до адміністрації
Документи