Xgrid
Разработчик(и) | Apple Инк. |
---|---|
Первоначальный выпуск | 6 января 2004 г. [ 1 ] |
Финальный выпуск | 10.7.5
/ 4 октября 2012 г |
Операционная система | Мак ОС Х |
Платформа | Независимый |
Тип | Распределенные вычисления |
Лицензия | Собственное лицензионное соглашение [ 2 ] |
Веб-сайт | Домашняя страница ( Wayback Machine архивировано 2 января 2006 г.) |
Xgrid — это собственная программа и протокол грид-вычислений, разработанная подразделением Advanced Computation Group компании Inc. Apple [ 3 ]
Он предоставляет сетевым администраторам метод создания вычислительного кластера , который позволяет им использовать ранее неиспользованные вычислительные мощности для вычислений, которые можно легко разделить на более мелкие операции, такие как карты Мандельброта . Настроить кластер 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 от ) операционной системы OpenStep интерфейсом прикладного программирования ( API , права на который принадлежали Apple. Компания также решила предоставить клиентскую версию Mac OS X только с функциями командной строки и небольшой гибкостью, а Mac OS X серверную версию Xgrid для — с графической панелью управления и полным набором функций.
История
[ редактировать ]Истоки Xgrid можно проследить до приложения Zilla компании NeXT, созданного ученым Ричардом Крэндаллом в конце 1980-х годов. Zilla была первой программой распределенных вычислений, выпущенной в операционной системе конечного пользователя и в которой использовался мотив заставки бездействия, конструктивная особенность, которая с тех пор встречается в широко используемых проектах, таких как Seti@Home . [ 1 ] [ 4 ] Zilla выиграла национальную Смитсоновскую премию Computerworld (категория «Наука») в 1991 году за простоту использования и хороший дизайн. [ 5 ] Apple приобрела Zilla вместе с остальной частью NeXT в 1997 году. [ 6 ] и использовал Zilla в качестве вдохновения для Xgrid. [ 1 ] Xgrid Technology Preview 1 была выпущена в январе 2004 года. [ 7 ] [ 3 ] [ 8 ] за ним последовал Technology Preview 2 в ноябре 2004 года. Xgrid 1.0 был выпущен как часть Mac OS X 10.4 Tiger в апреле 2005 года. [ 8 ]
Несколько организаций внедрили Xgrid в крупных международных вычислительных сетях. Одним из примеров кластера Xgrid является OpenMacGrid компании MacResearch, где ученые могут запрашивать доступ к большим объемам вычислительной мощности для выполнения задач, связанных с их исследованиями. [ 9 ] [ 10 ] Другим был ныне несуществующий проект Xgrid@Stanford, в котором использовалось множество компьютеров в кампусе Стэнфордского университета и по всему миру. [ 11 ] провести биохимическое исследование. [ 12 ] [ 13 ] [ 14 ]
В отчете, посвященном этому объявлению, Macworld упомянул Xgrid среди функций Unix в «10 фактах, которые нужно знать о Tiger», назвав его «удобным, если вы работаете с огромными объемами экспериментальных данных или визуализируете сложную анимацию». [ 15 ] После появления Xgrid в 2004 году InfoWorld отметила, что это технология «предварительного уровня», которая получит прямую выгоду от Xserve G5 позднее в том же году. запуска [ 16 ] Комментатор InfoWorld Эфраим Шварц также предсказал, что Xgrid станет первым шагом на пути выхода Apple на рынок корпоративных вычислений. [ 17 ] [ 8 ]
Apple прекратила выпуск Xgrid с OS X 10.8 Mountain Lion . [ 18 ] наряду с зависимыми службами, такими как Podcast Producer. [ 19 ] [ 20 ]
Протокол
[ редактировать ]Протокол Xgrid использует сетевую структуру BEEP для связи с узлами в сети. Инфраструктура системы включает три типа компьютеров, которые обмениваются данными по протоколу:
- Клиент, который отправляет задания на расчет контроллеру.
- Контроллер, который разделяет задания на задачи и назначает эти задачи агентам.
- Агенты, которые обрабатывают выделенную им часть расчета и возвращают результаты контроллеру, который возвращает их клиенту. [ 21 ] [ 8 ]
Компьютер может выступать в роли одного или всех трех этих компонентов одновременно. Протокол Xgrid обеспечивает базовую инфраструктуру для взаимодействия компьютеров , но не участвует в обработке указанного расчета. [ 22 ] Xgrid ориентирован на трудоемкие вычисления, которые можно легко разделить на более мелкие задачи, иногда называемые досадно параллельными задачами. [ 23 ] Сюда входят расчеты Монте-Карло , 3D-рендеринг и карты Мандельброта . [ 22 ]
В рамках протокола Xgrid три типа сообщений можно передавать другим компьютерам в том же кластере : запросы, уведомления и ответы. На запросы получатель должен ответить ответом, уведомления не требуют ответа, а ответы являются ответами на отправленные сообщения. Они идентифицируются по имени , типу (запрос/уведомление/ответ) и содержимому. Каждое сообщение инкапсулируется в сообщение BEEP (BEEP MSG) и подтверждается при получении пустым ответом (RPY). [ 7 ] Xgrid не использует инфраструктуру сообщений/ответов BEEP. Любое полученное сообщение, требующее ответа, просто генерирует независимое сообщение BEEP, содержащее ответ. Сообщения Xgrid кодируются как словари пар ключ/значение, которые преобразуются в XML перед отправкой по сети BEEP.
Архитектура
[ редактировать ]Архитектура системы Xgrid построена на основе системы заданий; контроллер отправляет задания агентам, а агенты возвращают ответы. Фактические вычисления, которые контроллер выполняет в системе Xgrid, известны как задание. Задание содержит все файлы, необходимые для успешного выполнения задачи, такие как входные параметры , файлы данных , каталоги , исполняемые файлы и/или сценарии оболочки . Файлы, включенные в задание Xgrid, должны иметь возможность выполняться одновременно или асинхронно, или любые преимущества выполнения такого задания в Xgrid теряются. После завершения задания контроллер можно настроить на уведомление клиента о завершении или сбое задания, например, по электронной почте . Клиент может покинуть сеть во время выполнения задач. Он также может отслеживать состояние задания по требованию, опрашивая контроллер, но не может отслеживать текущий ход выполнения отдельных задач. [ 24 ] [ 8 ]
Контроллер играет центральную роль в правильном функционировании Xgrid, поскольку этот узел отвечает за распределение, контроль и координацию задач агентов. Программа, работающая на контроллере, может по требованию назначать и переназначать задачи для обработки сбоев отдельных агентов. Количество задач, назначенных агенту, зависит от двух факторов: количества агентов в Xgrid и количества процессоров в каждом узле. Количество агентов в Xgrid определяет, как контроллер будет распределять задачи. Задачи могут быть назначены одновременно для большого количества агентов или поставлены в очередь для небольшого числа агентов. Когда в Xgrid обнаруживается узел с более чем одним процессором, контроллер может назначить одну задачу на каждый процессор; это происходит только в том случае, если количество агентов в сети меньше количества задач, которые должен выполнить контроллер. [ 24 ]
Xgrid накладывается на расширяемую биржу блоков. Протокол (BEEP), стандарт IETF , аналогичный HTTP , но с упором на двустороннюю мультиплексную связь, например, используемую в одноранговых сетях . BEEP, в свою очередь, использует XML для определения профилей для связи между несколькими агентами через одну сеть или подключение к Интернету. [ 25 ]
Программное обеспечение агента Xgrid было доступно для Unix и Linux . систем [ 26 ]
Интерфейс
[ редактировать ]Хотя доступ к Xgrid возможен из командной строки, графический пользовательский интерфейс Xgrid — программа, поставляемая в комплекте с Mac OS X Server и по состоянию на март 2009 года доступная в Интернете, — гораздо более эффективный способ администрирования системы Xgrid. Первоначально агент Xgrid был включен во все установки Mac OS X 10.4 Tiger, но графический интерфейс был зарезервирован для пользователей Mac OS X Server . Это решение ограничило усилия компьютерного сообщества по освоению этой платформы. В конце концов, Apple выпустила для общественности инструменты администрирования сервера Mac OS X, которые включали приложение администрирования Xgrid, входящее в состав Mac OS X Server. [ 27 ]
Несмотря на отсутствие графического интерфейса контроллера в стандартном (несерверном) дистрибутиве Mac OS X , настроить контроллер Xgrid можно с помощью командной строки . инструментов xgridctl
и xgrid
. контроллера Xgrid После запуска демона становится возможным администрирование сети с помощью Apple Xgrid Admin . инструмента [ 27 ] Некоторые приложения, такие как VisualHub , предоставляли возможности контроллера Xgrid через свои пользовательские интерфейсы. [ 28 ] [ 29 ]
См. также
[ редактировать ]Примечания
[ редактировать ]- ^ Jump up to: а б с «Страница руководства Mac OS X для xgrid(1)» . Apple Inc. , 27 июня 2007 г. Архивировано из оригинала 25 июля 2008 г. . Проверено 25 июля 2008 г.
- ^ «Соглашение об уровне обслуживания Mac OS X 10.5» (PDF) . Apple Inc. , 9 марта 2005 г. Архивировано из оригинала (PDF) 12 мая 2008 г. . Проверено 12 июня 2008 г.
- ^ Jump up to: а б Коэн, Питер (29 марта 2004 г.). «Apple публикует введение Xgrid» . Макмир . Архивировано из оригинала 6 октября 2022 года . Проверено 14 мая 2023 г.
- ^ Норбери-Глейзер, Мэри (2006). «Создайте свой собственный суперкомпьютер из имеющихся у вас компьютеров Mac: как использовать Xgrid от Tiger для создания кластеров и участия в проектах Grid/кластеров» . МакТех . Том. 22, нет. 1. Архивировано из оригинала 14 мая 2023 года . Проверено 14 мая 2023 г.
- ^ «Zilla — Архив программы Computerworld Honors» . Архивировано из оригинала 16 июля 2011 года . Проверено 27 февраля 2009 г.
- ^ Шлендер, Брент; Тецели, Рик (2015). Стать Стивом Джобсом: эволюция безрассудного выскочки в дальновидного лидера . Коронный бизнес . стр. 190–197. ISBN 978-0-7710-7914-6 .
- ^ Jump up to: а б Коте, Даниэль (21 июня 2004 г.). «Агент XGrid для архитектур Unix» . Простой. Архивировано из оригинала 10 марта 2008 года . Проверено 18 июля 2008 г.
- ^ Jump up to: а б с д и Хьюз, Баден (2006). Построение вычислительных сеток с помощью Apple Xgrid Middleware . Четвертый Австралазийский симпозиум по грид-вычислениям и электронным исследованиям (AusGrid 2006) и Четвертый Австралазийский семинар по информационной безопасности (AISW 2006). doi : 10.1145/1151828.1151835 (неактивен 31 января 2024 г.).
{{cite conference}}
: CS1 maint: DOI неактивен по состоянию на январь 2024 г. ( ссылка ) - ^ Мартелларо, Джон (13 февраля 2007 г.). «Анонсирован выпуск вычислительной сетки OpenMacGrid для пользователей Mac» . Mac Observer . Архивировано из оригинала 30 августа 2008 года . Проверено 1 марта 2009 г.
- ^ Сондерс, Гровер (12 февраля 2007 г.). «OpenMacGrid создает праздник любви к распределенным вычислениям» . Арс Техника . Архивировано из оригинала 24 августа 2009 года . Проверено 1 марта 2009 г.
- ^ Парно, Чарльз (3 декабря 2007 г.). «Xgrid@Стэнфорд — Дом» . Стэнфордский университет . Архивировано из оригинала 10 октября 2014 года . Проверено 25 июля 2008 г.
- ^ Парно, Чарльз (3 декабря 2007 г.). «Xgrid@Stanford — Проекты» . Стэнфордский университет . Архивировано из оригинала 26 сентября 2011 года . Проверено 25 июля 2008 г.
- ^ Чжугэ, Хай; Фокс, Джеффри К. (24 ноября 2005 г.). Grid и кооперативные вычисления — GCC 2005: 4-я Международная конференция, Пекин, Китай, 30 ноября — 3 декабря 2005 г., Материалы . Springer Science & Business Media. п. 408. ИСБН 978-3-540-30510-1 .
- ^ Риццо, Джон (23 сентября 2011 г.). Сервер Mac OS X Lion для чайников . Джон Уайли и сыновья. ISBN 978-1-118-17748-8 .
- ^ Майклс, Филип; Гриффитс, Роб; Снелл, Джейсон; Сефф, Джонатан (сентябрь 2004 г.). «10 вещей, которые нужно знать о тигре» . Макмир . Том. 21, нет. 9. С. 50–55. ISSN 0741-8647 . Проверено 16 октября 2008 г. (Требуется подписка)
- ^ Коннолли, Пи Джей (21 июня 2004 г.). «Оборудование Apple Xserve производит фурор». Инфомир . Том. 26, нет. 25. С. 29–30. ПроКвест 194358336 . (Требуется подписка)
- ^ Шварц, Ефрем (26 января 2004 г.). «Является ли Apple слишком сильным протестом?». Инфомир . Том. 26, нет. 4. с. 12. ПроКвест 194347451 . (Требуется подписка)
- ^ Пог, Дэвид (25 июля 2012 г.). OS X Mountain Lion: недостающее руководство . О'Рейли Медиа. п. 2. ISBN 978-1-4493-4367-5 .
- ^ Риццо, Джон (31 августа 2012 г.). Сервер OS X Mountain Lion для чайников . Джон Уайли и сыновья. стр. 76–77. ISBN 978-1-118-41781-2 . Архивировано из оригинала 8 ноября 2021 года . Проверено 16 мая 2023 г.
- ^ Риццо, Джон (23 сентября 2011 г.). «Что в Podcast Producer?». Сервер Mac OS X Lion для чайников . Джон Уайли и сыновья. ISBN 978-1-118-17748-8 .
- ^ Чжугэ, Хай; Фокс, Джеффри К. (24 ноября 2005 г.). Grid и кооперативные вычисления — GCC 2005: 4-я Международная конференция, Пекин, Китай, 30 ноября — 3 декабря 2005 г., Материалы . Springer Science & Business Media. ISBN 978-3-540-30510-1 .
- ^ Jump up to: а б Коте, Даниэль (7 января 2004 г.). «XGrid» . Простой. Архивировано из оригинала 12 апреля 2008 года . Проверено 18 июля 2008 г.
- ^ Галкер, Крис (15 января 2004 г.). «Xgrid: Grid-вычисления для всех нас?» . Linux.com . Архивировано из оригинала 20 ноября 2008 года . Проверено 26 июля 2008 г.
- ^ Jump up to: а б «Руководство по программированию Xgrid: как это работает» . Apple Inc. , 31 октября 2007 г. Проверено 12 июня 2008 г.
- ^ «Сервер Mac OS X: Xgrid» (PDF) . Краткая информация о технологии . Apple Inc., 1 ноября 2007 г., с. 2. Архивировано (PDF) из оригинала 19 марта 2009 г. Проверено 1 марта 2009 г.
- ^ Джепсон, Брайан; Ротман, Эрнест Э. (1 июня 2005 г.). Mac OS X Tiger для любителей Unix . О'Рейли Медиа. п. 211. ИСБН 978-0-596-55274-9 .
- ^ Jump up to: а б Мьюир, Дилан (23 июня 2005 г.). «10.4: Запустите Xgrid с клиентом Tiger» . Советы по Mac OS X. Архивировано из оригинала 24 августа 2007 года . Проверено 26 июля 2008 г.
- ^ «VisualHub предлагает поддержку Xgrid» . МакНН. 7 июня 2006 г. Архивировано из оригинала 9 декабря 2017 г. Проверено 26 июля 2008 г.
- ^ Шартье, Дэвид (7 июня 2006 г.). «VisualHub — Универсальный видеоконвертер» . Engadget . Проверено 14 мая 2023 г.
Дальнейшее чтение
[ редактировать ]- Учебник по Xgrid на Wayback Machine (архивировано 12 ноября 2011 г.)
- Вид с высоты птичьего полета на протокол BEEP, используемый Xgrid в Wayback Machine (архивировано 12 февраля 2003 г.)
- Часто задаваемые вопросы по Xgrid на Xgrid Wiki на Wayback Machine (архивировано 16 июня 2010 г.)