Средства повышения производительности вычислений в автоматизированных системах научного исследования
Анализ и сравнительное описание различных моделей реализации многомашинной архитектуры: кластеры, вычислительные сети. OpenMosix как альтернативное решение для организации вычислительного комплекса с использованием разнородных персональных компьютеров.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 22.08.2020 |
Размер файла | 174,6 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Средства повышения производительности вычислений в автоматизированных системах научного исследования
Мозгов С.С.
Несмотря на бурный прогресс вычислительных машин и существенный прирост в их производительности за последние десятилетия все еще существует целый пласт ресурсоемких задач, на решение которых требуются часы, а иногда и сутки процессорного времени. Безусловно, применение самых передовых процессоров позволяет сократить это время, однако наиболее перспективным направлением является использование множества ЭВМ, пусть и с невысокой производительностью каждой. Это направление развивается на протяжение нескольких десятилетий. И в настоящий момент большинство вычислительных комплексов из TOP 500 построены по данному принципу.
Существуют различные реализации многомашинной архитектуры:
Кластеры - мультикомпьютер, состоящий из множества отдельных компьютеров (узлов), связанных между собой единой коммуникационной системой. Каждый узел имеет свою локальную оперативную память. При этом, общей физической оперативной памяти для узлов не существует. Если в качестве узлов используются мультипроцессоры (мультипроцессорные компьютеры с общей памятью, т.е. SMP (symmetric multiprocessing) машины), то такой кластер называется SMP-кластером. Коммуникационная система обычно позволяет узлам взаимодействовать между собой только посредством передач сообщений, но некоторые системы могут обеспечивать и односторонние коммуникации - позволять любому узлу выполнять массовый обмен информацией между своей памятью и локальной памятью любого другого узла. Если все входящие в состав вычислительного кластера узлы имеют одну и ту же архитектуру и производительность, то мы имеем дело с однородным вычислительным кластером. В противном случае - с неоднородным. С точки зрения разработки прикладных параллельных программ нет каких-либо принципиальных различий между однородными кластерами и системами MPP (massive parallel processing) архитектуры. Различия, в основном, заключаются в большей доступности и меньшей стоимости кластеров по сравнению с мультипроцессорными ЭВМ с распределенной памятью, в которых используются специальные коммуникационные системы и специализированные узлы. При работе с неоднородными кластерами существенно усложняется процесс разработки параллельной программы, так как необходимо учитывать разницу в производительности отдельных устройств, а также особенности их архитектуры, что может потребовать подготовки разных исполняемых файлов для различных узлов. Тем не менее, любой кластер можно рассматривать как единую аппаратно-программную систему, имеющую единую коммуникационную систему, единый центр управления и планирования загрузки.
Вычислительные сети (Grid) объединяют ресурсы множества кластеров, многопроцессорных и однопроцессорных ЭВМ, принадлежащих разным организациям и подчиняющихся разным дисциплинам использования. Grid - программно-аппаратная инфраструктура, которая обеспечивает устойчивый повсеместный и недорогой доступ к высокопроизводительным компьютерным ресурсам. В настоящее время можно сказать, что Grid является согласованной, открытой и стандартизованной средой, которая обеспечивает гибкое, безопасное, скоординированное разделение ресурсов в рамках виртуальной организации-то есть динамически формирующейся совокупности независимых пользователей, учреждений и ресурсов. Отметим, что речь больше не идет о «мощных вычислительных ресурсах» Метакомпьютинга. В качестве процессорных ресурсов рассматриваются теперь, например, рабочие станции и ПК. На самом деле, основные вычислительные мощности сосредоточены вовсе не в суперкомпьютерном парке. Если организация располагает, скажем, тремя тысячами рабочих мест на базе рабочих станций, то за время их регулярного простоя потерянные циклы составят существенную долю даже терафлопной производительности. Мощные ресурсы - суперкомпьютеры, кластеры, SMP-системы - остаются важным частным случаем. Кроме того, новая трактовка применима к разнообразным типам ресурсов: телекоммуникациям, системам массовой памяти, хранилищам данных, а также измерительным и научным инструментам, например, радиотелескопам.
Ориентирована технология Grid, прежде всего на распределенные в пространстве узлы, а также на задачи, которые хорошо делятся на подзадачи, не требующие интенсивного взаимодействия между собой. Как правило, запускаемые задачи настолько ресурсоемки, что даже в такой системе для их вычисления может потребоваться несколько суток.
В первую очередь, Grid ориентирована на географически удаленные узлы. Данные технологии грамоздки для организации распределенных вычислений в рамках отдельной организации или компьютерного класса. Однако использование офисных компьютеров в организациях или компьютерных классах позволяет существенно снизить время вычислений, при решении различных ресурсоемких научно-исследовательских задач. Альтернативным решением для организации вычислительного комплекса с использованием разнородных персональных компьютеров, не требующим написания сложных параллельных программ, является OpenMosix.
компьютер вычислительный кластер архитектура
OpenMosix
Кластер openMosix, состоящий из компьютеров под управлением OC Linux, есть то, что называется одноoбразной системой (SSI). В различных статьях неоднократно обсуждалось, что нельзя получить настоящий кластер до тех пор, пока вы не построите SSI. В SSI-кластере пользователь не заботится о том, на каком узле он выполняет команды, и любая программа, которую он запускает, будет запущена на том узле, который сможет удовлетворить потребности программы наилучшим образом. OpenMosix - это расширение ядра Linux. Поэтому для того, чтобы проинсталлировать openMosix, необходимо запустить специальный инсталляционный скрипт, который применит все необходимые изменения к исходным кодам ядра Linux. Такой скрипт также называют «патчем» (от англ. patch). Изменения касаются 3% всего исходного кода ядра, что не очень много.
Замечательной особенностью openMosix является то, что пользователь только запускает программу, а кластер решает, где её выполнить (если не оговорено обратное). Разработчики openMosix называют это свойство «разветвись-и-забудь» (fork-and-forget).
OpenMosix - это программное обеспечение, которое было разработано для того, чтобы расширить ядро Linux возможностями кластерных вычислений. openMosix расшифровывается как Open Multicomputer Operating System for UNIX. Ядром OpenMosix являются адаптивные интерактивные алгоритмы, балансирующие нагрузку, управляющие памятью и файловым вводом-выводом. Они реагируют на изменения в использовании ресурсов кластера, например, неравномерную распределённую нагрузку или чрезмерный обмен с диском из-за недостатка свободной памяти на одном из узлов. В таких случаях openMosix инициирует перемещение процесса от одного узла к другому, чтобы сбалансировать нагрузку, или перемещение процесса на узел, который имеет достаточно свободной памяти, или уменьшение числа удалённых файловых операций ввода-вывода. OpenMosix работает незаметно - его операции прозрачны для прикладных программ. Это означает, что пользователи могут выполнять последовательные и параллельные прикладные программы точно так же, как на SMP. Пользователи не должны заботиться о том, где процессы выполняются, беспокоиться о том, что делают другие пользователи. Вскоре после создания нового процесса openMosix пытается назначать его лучшему доступному узлу на этот момент. OpenMosix контролирует все процессы и, в случае необходимости, мигрирует процессы между узлами, чтобы максимизировать общую эффективность. Все это делается без изменения интерфейса Linux. Это означает, что вы продолжаете видеть (и контролировать) все ваши процессы, как будто они выполняются на узле, с которого вы вошли в систему.
Однако при всех достоинствах такая система не может повысить производительность единичного процесса, поэтому для получения прироста в производительности программу необходимо разветвить (fork) на более мелкие процессы, которые могут выполняться параллельно на различных узлах кластера. При этом? затраты на написание разветвленной программы, как правило, ниже, нежели при написании полноценной параллельной программы, особенно если требуется организация взаимодействия процессов с помощью передачи сообщений, например MPI. От программиста не требуется специальных знаний в области параллельного программирования.
Для задач автоматизированной системы научного исследования (АСНИ) openMosix позволяет достаточно быстро (не требуется развертывания сложной служебной инфраструктуры, как в GRID) организовать вычислительный ресурс, задействовав простаивающие персональные компьютеры. Очень часто в АСНИ требуется произвести много однообразных вычислений, в таких случаях алгоритмы обработки данных могут быть разделены на более мелкие фрагменты, а непосредственно обработка выполнятся несколькими процессами, обрабатывающими различные фрагменты данных. Планирование вычислений удобно организовать с помощью описания на метаязыке последовательности операций, которые необходимо выполнить для проведения того или иного эксперимента, так чтобы в дальнейшем система смогла сформировать несколько автономных процессов, которые средствами openMosix могли бы автоматически мигрировать на свободные вычислительные узлы.
Литература
1. Коваленко, В.Н. Структура и проблемы развития программного обеспечения среды распределенных вычислений Грид. [Текст] / В.Н. Коваленко, Е.И. Коваленко, Д.А. Корягин, Э.З. Любимский, А.В. Орлов, Е.В. Хухлаев. - ИПМ им. М.В. Келдыша РАН. - Москва, 2002.
2. Кацубо, Д.В. Использование кластерной системы «OpenMosix» для построения распределённых вычислений. [Текст] / Д.В. Кацубо - Минск, 2003. - 81 с.
3. Крюков, В.А. Разработка параллельных программ для вычислительных кластеров и сетей [Текст]/ В.А. Крюков. - Информационные технологии и вычислительные системы. - 2003. - №2. - С. 42-58.
Размещено на Allbest.ru
...Подобные документы
Исторические предшественники компьютеров. Появление первых персональных компьютеров. Концепция открытой архитектуры ПК. Развитие элементной базы компьютеров. Преимущества многопроцессорных и многомашинных вычислительных систем перед однопроцессорными.
курсовая работа [1,7 M], добавлен 27.04.2013Характеристики различных моделей портативных компьютеров. Возможности оперативных систем. ЭВМ и вычислительные системы. Порядок выбора портативных компьютеров и ОС. Выбор портативного компьютера для оснащения ими сотрудников консалтинговой фирмы.
дипломная работа [65,3 K], добавлен 23.06.2012Тип вычислительного комплекса и данные его централизованного управляющего. Структурная схема централизованного управляющего вычислительного комплекса и топология "Звезда с хабом". Расчёт количества устройств согласования с объектом, заказная спецификация.
контрольная работа [58,9 K], добавлен 04.05.2012Функциональное диагностирование вычислительного устройства (ВУ), требования к нему по производительности, диапазону представления чисел, точности вычислений, сложности реализации и достоверности функционирования. Контроль по модулю ВУ с плавающей точкой.
реферат [1,2 M], добавлен 14.12.2012Анализ нормативно-правовой базы, обоснование направлений создания обеспечения комплексной защиты информации в автоматизированных системах. Разработка методики оценки, выбор путей повышения эффективности защитных мероприятий в автоматизированных системах.
дипломная работа [368,5 K], добавлен 17.09.2009Разработка виртуального вычислительного устройства с кассетной структурой. Массивы и кластеры. Вычисления над элементами массива. Вычислительные функции пакета LabVIEW. Логическая последовательность выполнения отдельных частей программы (подпрограммы).
контрольная работа [252,4 K], добавлен 15.01.2009Принцип построения компьютерных сетей: локальные вычислительные сети и глобальные компьютерные сети Internet, FidoNet, FREEnet и другие в деле ускорения передачи информационных сообщений. LAN и WAN сети, права доступа к данным и коммутация компьютеров.
курсовая работа [316,0 K], добавлен 18.12.2009Этапы развития информатики и вычислительной техники. Аппаратная часть персональных компьютеров. Внешние запоминающие устройства персонального компьютера. Прикладное программное обеспечение персональных компьютеров. Текстовые и графические редакторы.
контрольная работа [32,8 K], добавлен 28.09.2012Теоретические положения, касающиеся организации, архитектуры и особенностей технической диагностики персональных ЭВМ типа IBM PC/AT. Методики профессионального обслуживания аппаратно-программных вычислительных систем на базе персональных компьютеров.
лекция [314,3 K], добавлен 21.03.2008Вычислительные системы, сети и телекоммуникации: цели и задачи обработки информации, аппаратные средства её реализации. Функции управления ЭВМ, их программные составляющие (память, интерфейс, средства обработки). Многопроцессорные вычислительные системы.
курсовая работа [2,1 M], добавлен 17.12.2009Вычислительные системы и программное обеспечение как важнейшие разделы информатики, условия перехода общества в информационную стадию развития. Развитие вычислительных систем и персональных компьютеров. Операционные системы и системы программирования.
реферат [906,9 K], добавлен 18.01.2011Виды компьютерных сетей. Преимущества, получаемые при сетевом объединении персональных компьютеров в виде внутрипроизводственной вычислительной сети. Базовая модель OSI. IP-адресация и передача данных. Сетевые устройства и средства коммуникаций.
курсовая работа [2,1 M], добавлен 04.05.2014История развития планшетных компьютеров, их преимущества и недостатки. Особенности тестирования различных моделей планшетов Ritmix RMD-1030. Принципы проведения диагностики, ремонт и техническое обслуживание различных моделей ПК, виды неисправностей.
реферат [1,3 M], добавлен 28.03.2014Техническое обоснование разработки вычислительной сети и анализ исходных данных. Выбор архитектуры или топологии сети. Проектирование реализации и комплекса технических средств ЛВС. Построение логической схемы сети и выбор активного оборудования.
курсовая работа [4,7 M], добавлен 30.07.2010Технология настройки распределённой беспроводной сети в домашних условиях с использованием двух точек беспроводного доступа: выбор оборудования, определение архитектуры сети. Средства безопасности беспроводной сети, процедура ее взлома с протоколом WEP.
статья [152,4 K], добавлен 06.04.2010Система связи компьютеров, серверов, маршрутизаторов и другого вычислительного оборудования. Классификация компьютерных сетей, их аппаратное и программное обеспечение, достоинства и проблемы. Топология, протоколы, интерфейсы, сетевые технические средства.
презентация [242,6 K], добавлен 14.05.2015Проектирование информационной системы (ИС) для организации, занимающейся ремонтом персональных компьютеров. Интерфейс пользователей, их объединение в группы. Основные протоколы и интерфейсы, используемые в ИС для работы в локальной и глобальной сети.
курсовая работа [1,4 M], добавлен 17.05.2015Описание персональных компьютеров преподавателя и учеников. Описание системного и прикладного программного обеспечения и особенности их установки. Характеристика сетевого оборудования компьютерной аудитории. Топологии сети, ее преимущества и недостатки.
отчет по практике [1,3 M], добавлен 07.07.2013Технологии решения задач с использованием нейронных сетей в пакетах расширения Neural Networks Toolbox и Simulink. Создание этого вида сети, анализ сценария формирования и степени достоверности результатов вычислений на тестовом массиве входных векторов.
лабораторная работа [352,2 K], добавлен 20.05.2013События, предшествовавшие появлению персональных компьютеров. Важнейшие этапы развития вычислительной техники до появления персональных компьютеров. Выпуск операционной системы Windows 3.1. Микропроцессор Intel 8088. Табличный процессор VisiCalc.
презентация [938,0 K], добавлен 21.06.2013