Это хорошая статья. Для получения дополнительной информации нажмите здесь.
Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Xgrid - это проприетарная программа и протокол распределенных вычислений , разработанная подразделением Advanced Computation Group компании Apple Inc, которая позволяет подключенным к сети компьютерам выполнять одну задачу.

Он предоставляет сетевым администраторам метод создания вычислительного кластера , который позволяет им использовать ранее неиспользованные вычислительные мощности для вычислений, которые можно легко разделить на более мелкие операции, такие как карты Мандельброта . Настроить кластер Xgrid можно практически бесплатно, так как клиент Xgrid предварительно установлен на всех компьютерах с Mac OS X 10.4 - Mac OS X 10.7 . Клиент Xgrid не был включен в Mac OS X 10.8 . Контроллер Xgrid, планировщик заданий операции Xgrid, также включен в Mac OS X Server.и можно бесплатно загрузить с Apple. Apple сохранила минималистичный механизм управления заданиями из командной строки, предоставив API для разработки более сложных инструментов, построенных на его основе.

Программа использует свой собственный протокол связи , расположенный поверх схемы, для связи с другими узлами. Этот протокол связи взаимодействует с BEEP инфраструктуры , прикладного протокола сетевой структуры . Компьютеры, обнаруженные системой Xgrid, то есть компьютеры с включенной службой Xgrid Mac OS X, автоматически добавляются в список доступных компьютеров для использования для обработки задач.

Когда компьютер-инициатор отправляет полные инструкции или задание для обработки в контроллер , контроллер разбивает задачу на эти небольшие пакеты инструкций , известные как задачи . Конструкция системы Xgrid состоит из этих небольших пакетов, передаваемых на все компьютеры с поддержкой Xgrid в сети. Эти компьютеры, или узлы , выполнить инструкции , предоставляемые контроллером , а затем возвращать результаты. Контроллер объединяет результаты отдельных задач в результаты всего задания и возвращает их на компьютер-инициатор.

Apple , смоделировали дизайн Xgrid по программе Zilla, распределенной с NeXT «s OPENSTEP интерфейс прикладного программирования системы операционной ( API ), который компания Apple владеет правами на. Компания также решила предоставить клиентскую версию Mac OS X только с функциями командной строки и небольшой гибкостью, в то же время предоставив версии Xgrid для Mac OS X Server панель управления с графическим интерфейсом и полный набор функций.

История [ править ]

Зилла

Первоначальная концепция Xgrid восходит к Zilla.app, который находится в операционной системе OPENSTEP, созданной NeXT в конце 1980-х годов. Zilla была первой программой распределенных вычислений, выпущенной для операционной системы конечного пользователя и в которой использовался мотив заставки при простое [1], конструктивная особенность, которая с тех пор встречается в широко используемых проектах, таких как Seti @ Home и Distributed.net . Zilla выиграла национальную Смитсоновскую премию Computerworld (научная категория) в 1991 году за простоту использования и хороший дизайн. [3] Apple приобрела Zilla вместе с остальной частью NeXT [4] в 1997 году и позже использовала Zilla в качестве вдохновения для Xgrid. [1] Первыйбета- версия Xgrid была выпущена в январе 2004 года. [5]

Несколько организаций приняли Xgrid в крупных международных вычислительных сетях. Одним из примеров кластера Xgrid является OpenMacGrid MacResearch, где ученые могут запрашивать доступ к большим объемам вычислительной мощности для выполнения задач, связанных с их исследованиями. [6] [7] Другим был уже не существующий проект Xgrid @ Stanford, в котором для проведения биохимических исследований использовались различные компьютеры в кампусе Стэнфордского университета и по всему миру [8] . [9]

В предрелизной рекламной статье MacWorld упомянул Xgrid среди функций Unix в «10 вещах, которые нужно знать о TIGER», назвав его «удобным, если вы работаете с огромными объемами экспериментальных данных или рендерите сложные анимации». [10] После представления Xgrid в 2004 году, InfoWorld отметила, что это была «предварительная» технология, которая напрямую выиграет от запуска Xserve G5 позже в том же году. [11] Комментатор InfoWorld Эфраим Шварц также предсказал, что Xgrid станет первым шагом на пути выхода Apple на рынок корпоративных вычислений. [12]

Apple прекратила выпуск Xgrid с OS X v10.8 (Mountain Lion) вместе с зависимыми службами, такими как Podcast Producer.

Протокол [ править ]

Xgrid протокол

Протокол Xgrid использует сетевую структуру BEEP для связи с узлами в сети. Инфраструктура системы включает три типа компьютеров, которые обмениваются данными по протоколу. Один из них - это клиент, который сообщает расчет . Далее идет контроллер, который запускает и разделяет расчет. Наконец, агенты обрабатывают свою выделенную часть расчета.

Компьютер может действовать как один или все три этих компонента одновременно. Протокол Xgrid обеспечивает базовую инфраструктуру для связи компьютеров , но не участвует в обработке указанных вычислений. [13] Xgrid нацелен на трудоемкие вычисления, которые можно легко разделить на более мелкие задачи, иногда называемые слишком параллельными задачами. [14] Сюда входят расчеты Монте-Карло , 3D-рендеринг и карты Мандельброта . [13]

В рамках протокола Xgrid на другие компьютеры в одном кластере могут передаваться три типа сообщений : запросы, уведомления и ответы . На запросы должен отвечать получатель, уведомления не требуют ответа, а ответы являются ответами на отправленные сообщения. Они идентифицируются по имени , типу (запрос / уведомление / ответ) и содержанию. Каждое сообщение инкапсулируется в сообщение BEEP (BEEP MSG) и подтверждается при получении пустым ответом (RPY). [5] Xgrid не использует инфраструктуру сообщений / ответов BEEP. Любое полученное сообщение, требующее ответа, просто генерирует независимое сообщение BEEP, содержащее ответ. Сообщения Xgrid кодируются как словари пар ключ / значение, которые преобразуются в XML перед отправкой по сети BEEP.

Архитектура [ править ]

Архитектура системы Xgrid построена вокруг системы на основе заданий; контроллер отправляет агентам задания, а агенты возвращают ответы. Фактическое вычисление, которое контроллер выполняет в системе Xgrid, известно как задание. Задание содержит все файлы, необходимые для успешного выполнения задачи, такие как входные параметры , файлы данных , каталоги , исполняемые файлы и / или сценарии оболочки , файлы, включенные в задание Xgrid, должны иметь возможность выполняться одновременно или асинхронно, или любые преимущества выполнения такой работы в Xgrid теряются. После завершения задания контроллер может быть настроен на уведомление клиента о завершении или сбое задачи, например, по электронной почте.. Клиент может покинуть сеть во время выполнения задач. Он также может отслеживать статус задания по запросу, запрашивая контроллер, хотя он не может отслеживать текущий прогресс отдельных задач. [15]

Контроллер играет центральную роль в правильной работе Xgrid, поскольку этот узел отвечает за распределение, контроль и координацию задач на агентах. Программа, запущенная на контроллере, может назначать и переназначать задачи для обработки сбоев отдельных агентов по запросу. Количество задач, назначенных агенту, зависит от двух факторов: количества агентов в Xgrid и количества процессоров.в каждом узле. Количество агентов в Xgrid определяет, как контроллер будет назначать задачи. Задачи можно назначать одновременно большому количеству агентов или ставить в очередь для небольшого количества агентов. Когда в Xgrid обнаруживается узел с более чем одним процессором, контроллер может назначить одну задачу на каждый процессор; это происходит только в том случае, если количество агентов в сети меньше, чем количество задач, которые должен выполнить контроллер. [15]

Xgrid основан на протоколе Blocks Extensible Exchange Protocol (BEEP), стандарте IETF, сравнимом с HTTP , но с акцентом на двустороннюю мультиплексную связь, например, в одноранговых сетях . BEEP, в свою очередь, использует XML для определения профилей для связи между несколькими агентами через одну сеть или подключение к Интернету. [16]

Интерфейс [ править ]

Инструмент администрирования Xgrid

Хотя можно получить доступ к Xgrid из командной строки, графический пользовательский интерфейс Xgrid, программа, связанная с Mac OS X Server и с марта 2009 г. доступная в Интернете, является гораздо более эффективным способом администрирования системы Xgrid. Первоначально агент Xgrid был включен во все установки Mac OS X версии 10.4, но графический интерфейс был зарезервирован для пользователей Mac OS X Server . Это решение ограничило усилия компьютерного сообщества по внедрению платформы. В конце концов, Apple выпустила общедоступные инструменты администрирования Mac OS X Server, которые включали приложение администрирования Xgrid в комплекте с Mac OS X Server. [17]

Несмотря на отсутствие графического интерфейса контроллера в стандартном (не серверном) дистрибутиве Mac OS X , можно настроить контроллер Xgrid с помощью инструментов командной строкиxgridctl и xgrid. [18] После запуска демона контроллера Xgrid становится возможным администрирование сетки с помощью инструмента Apple Xgrid Admin . [17] Некоторые приложения, такие как VisualHub , предоставляют возможности контроллера Xgrid через свои пользовательские интерфейсы. [19] [20]

Дальнейшее чтение [ править ]

  • Xgrid Primer описывает использование Xgrid в развлекательных целях. (Ссылка теперь требует входа в систему)

См. Также [ править ]

  • Вычислительная система Condor с высокой пропускной способностью

Заметки [ править ]

  1. ^ a b c «Страница руководства Mac OS X для xgrid (1)» . Apple , Inc. 3 декабря 2007 . Проверено 25 июля 2008 года .
  2. ^ "Mac OS X 10.5 SLA" (PDF) . Apple , Inc. 9 марта, 2005. Архивировано из оригинального (PDF) 12 мая 2008 года . Проверено 12 июня 2008 года .
  3. ^ "Zilla - Архивы программы отличия Computerworld" . Архивировано из оригинала 16 июля 2011 года . Проверено 27 февраля 2009 года .
  4. ^ «Apple Computer, Inc. соглашается приобрести NeXT Software Inc» (пресс-релиз). Компьютер Apple. 20 декабря, 1996. Архивировано из оригинала 8 февраля 2002 года . Проверено 13 июня 2008 года .
  5. ^ a b Côté, Daniel (21 июня 2004 г.). «Агент XGrid для архитектур Unix» . Простой. Архивировано из оригинала на 10 марта 2008 года . Проверено 18 июля 2008 года .
  6. ^ Martellaro, Джон (13 февраля 2007). «Объявлен выпуск OpenMacGrid Computing Grid для пользователей Mac» . Обозреватель Mac . Проверено 1 марта 2009 года .
  7. Сондерс, Гровер (12 февраля 2007 г.). «OpenMacGrid создает праздник любви к распределенным вычислениям» . Ars Technica . Проверено 1 марта 2009 года .
  8. ^ Parnot, Чарльз (3 декабря 2007). «Xgrid @ Stanford - Home» . Стэнфордский университет . Проверено 25 июля 2008 года .
  9. ^ Parnot, Чарльз (3 декабря 2007). «Xgrid @ Stanford - Проекты» . Стэнфордский университет . Проверено 25 июля 2008 года .
  10. ^ Майклс, Филипп; Роб Гриффитс; Джейсон Снелл; Джонатан Сефф (1 сентября 2004 г.). «10 вещей, которые нужно знать о ТИГРЕ» . Macworld: журнал Macintosh . MacWorld . 21 (9): 50–55. ISSN 0741-8647 . Проверено 16 октября 2008 года .  (Требуется подписка)
  11. Перейти ↑ Connolly, PJ (21 июня 2004 г.). «Аппаратное обеспечение Xserve от Apple вызывает волну». InfoWorld . Vol. 26 нет. 25. С. 29–30. ProQuest 194358336 .  (Требуется подписка)
  12. Шварц, Ефрем (26 января 2004 г.). «Неужели Apple слишком много протестует?». InfoWorld . Vol. 26 нет. 4. п. 12. ProQuest 194347451 .  (Требуется подписка)
  13. ^ a b Côté, Daniel (7 января 2004 г.). «XGrid» . Простой. Архивировано из оригинального 12 апреля 2008 года . Проверено 18 июля 2008 года .
  14. ^ Gulker, Крис (15 января 2004). «Xgrid: Grid-вычисления для всех нас?» . Linux.com . Проверено 26 июля 2008 года .
  15. ^ a b «Руководство по программированию Xgrid: как это работает» . Корпорация Apple 31 октября 2007 . Проверено 12 июня 2008 года .
  16. ^ «Сервер Mac OS X: Xgrid» (PDF) . Краткий обзор технологий . Apple Inc., 1 ноября 2007 г. с. 2 . Проверено 1 марта 2009 года .
  17. ^ a b Мьюир, Дилан (23 июня 2005 г.). «10.4: Запустите Xgrid с клиентом Tiger» . Macosxhints.com . Проверено 26 июля 2008 года .
  18. ^ Подробные инструкции по настройке контроллера xgrid без необходимости использования сервера OSX см. Http://tengrid.com/wiki1/index.php?title=XGRID_FAQ
  19. ^ «VisualHub предлагает поддержку Xgrid» . MacNN. 7 июня 2006 . Проверено 26 июля 2008 года .
  20. Продавцы, Деннис (1 августа 2006 г.). «Обновление VisualHub добавляет более 20 новых функций» . Macsimum News . Проверено 1 марта 2009 года .