Обсуждение:Асимметричная многопроцессорная обработка


Здравствуйте, уважаемые википедисты!

Я только что изменил одну внешнюю ссылку на Asymmetric multiprocessing . Пожалуйста, уделите немного времени, чтобы просмотреть мои правки. Если у вас есть какие-либо вопросы или вам нужно, чтобы бот игнорировал ссылки или страницу в целом, посетите этот простой раздел FaQ для получения дополнительной информации. Я внес следующие изменения:

  • Добавлен архив https://web.archive.org/web/20050208000902/http://ed-thelen.org:80/comp-hist/CDC-6600-RM.html в http://ed-thelen.org/comp-hist/CDC-6600-RM.html#TOC/

Когда вы закончите просматривать мои изменения, пожалуйста, установите отмеченный параметр ниже на значение true или failed, чтобы сообщить об этом другим (документация по адресу ).{{Sourcecheck}}

проверятьY Редактор проверил эту правку и исправил все обнаруженные ошибки.

  • Если вы обнаружили URL-адреса, которые бот ошибочно посчитал неработающими, вы можете сообщить о них с помощью этого инструмента.
  • Если вы обнаружили ошибку в архивах или самих URL-адресах, вы можете исправить их с помощью этого инструмента.

Привет.— InternetArchiveBot ( Сообщить об ошибке ) 11:29, 20 октября 2016 (UTC) [ ответить ]

определение многопроцессорности

Недавно был удален следующий текст: « Многопроцессорность — это использование более одного ЦП в компьютерной системе. ЦП — это арифметическая и логическая машина, которая выполняет пользовательские приложения. При наличии нескольких ЦП одновременно может выполняться более одного набора программных инструкций. Все ЦП имеют одинаковый набор инструкций пользовательского режима, поэтому выполняемое задание можно перепланировать с одного ЦП на другой. [1] » Я думаю, важно определить, что означает многопроцессорность в контексте асимметричной многопроцессорности. Кто-нибудь будет возражать, если я восстановлю этот текст? Джон Саутер ( обсуждение ) 21:18, 13 марта 2019 (UTC) [ ответить ]

В каком смысле ссылка multiprocessing в первом предложении недостаточна для того, чтобы направить пользователя на страницу, которая, очевидно, должна определять multiprocessing? Если multiprocessing не определяет его в достаточной степени, его следует изменить, чтобы он это делал. Guy Harris ( talk ) 22:05, 13 марта 2019 (UTC) [ ответить ]

Не обязательно говоря об этой статье, но иногда мне кажется, что лучше поместить однострочное определение общего случая в статью о конкретном случае. Питер Фласс ( обсуждение ) 00:59, 14 марта 2019 (UTC) [ ответить ]

  1. Было бы полезно, если бы вы указали рассматриваемую редакцию.
  2. Одна из очевидных причин заключается в том, что определение неверно. Например, в CDC 6600 десять PP имеют другой набор инструкций, нежели CP . Обратите внимание, что операционные системы для 6600 обычно работают в PP, а не в CP. Shmuel (Seymour J.) Metz Имя пользователя: Chatul ( обсуждение ) 16:17, 14 марта 2019 (UTC) [ ответ ]

Я не уверен, что 6600 будет примером многопроцессорности, асимметричной или какой-либо другой. Приложение можно было бы приравнять к интеллектуальному каналу, если бы не эта штука с ОС. Питер Фласс ( обсуждение ) 16:58, 14 марта 2019 (UTC) [ ответить ]

"За исключением этой ОС" - это довольно большое дело. Насколько важен должен быть процессор внутри системы, чтобы система с более чем одним процессором была многопроцессорной?
Для большинства систем с операционной системой один или несколько «центральных» процессоров запускали операционную систему; если есть другие процессоры, они запускают выделенные задачи. Если у вас есть IBM 3090 с одним процессором, выполняющим набор инструкций S/370, и одним или несколькими контроллерами каналов, выполняющими программу, состоящую из инструкций IBM 801, которая, в свою очередь, выполняет программы каналов, я мог бы увидеть, что это не считается многопроцессором, так же как я бы не считал процессор основной полосы частот в моем iPhone в количестве процессоров на моем iPhone, хотя это, вероятно, ядро ​​ARM, так же как два процессора приложений являются ядрами ARM.
Однако в 6600 есть "CPU", чья работа заключается в обработке чисел, и, насколько я понимаю, он не решает, какой процесс запустить следующим, это делает PP. Обрабатывают ли PP также, например, язык управления заданиями или они запускают для этого программу на CP?
Я не знаю, как это работало в NOS и NOS/BE, но в SCOPE сканирование контрольных карт, диспетчеризация и почти все остальное работали в PP. Утилиты и языковые процессоры работали в CP. Shmuel (Seymour J.) Metz Имя пользователя: Chatul ( talk ) 14:36, 15 марта 2019 (UTC) [ ответить ]
Большая часть страницы о многопроцессорности посвящена системам, в которых все процессоры выполняют один и тот же набор инструкций. (В эту категорию я включаю такие системы, как системы ARM big.LITTLE , в которых оба типа ядер могут работать одновременно, и Apple A10 / Apple A11 / Apple A12 , в которых все процессоры выполняют один и тот же набор инструкций, но не все имеют одинаковую микроархитектуру, некоторые из них являются высокопроизводительными в обоих смыслах этого слова, а другие не такие мощные, но и не потребляют столько энергии, поскольку они работают аналогично системе SMP, но с планировщиками процессов/потоков, которые помещают потоки, требующие больших ресурсов ЦП, на более мощные процессоры, а другие — на менее мощные процессоры, и включают более мощные процессоры только в том случае, если у них есть поток для выполнения.)
Я рассматриваю CDC 6600 как пример гетерогенных вычислений . На этой странице big.LITTLE явно описывается как «больше похожий на симметричный мультипроцессор»:

Например, ARM big.LITTLE является исключением, где ISA ядер одинаковы, а неоднородность относится к скорости различных микроархитектур одного и того же ISA, [2] что делает его более похожим на симметричный мультипроцессор (SMP).

поэтому я бы не стал классифицировать это как пример гетерогенных вычислений.
Обратите внимание, что существует десять (расширяемых до 20) PP, а не один. Шмуэль (Сеймур Дж.) Метц Имя пользователя: Chatul ( обсуждение ) 14:36, 15 марта 2019 (UTC) [ ответить ]
ASMP и SMP, как правило, относятся к системам, в которых все процессоры поддерживают один и тот же набор инструкций; асимметрия представляет собой либо асимметрию на уровне оборудования в доступе к периферийным устройствам, либо асимметрию на уровне программного обеспечения, при которой, например, низкоуровневый код ОС выполняется только на одном процессоре (вместо того, чтобы иметь возможность выполняться на любом процессоре, но с гигантской блокировкой кода ядра, поэтому он может выполняться только на одном процессоре одновременно).
Итак, какой из сценариев «более одного процессорного блока некоторого типа» охватывает «мультипроцессинг»? Те, где все процессоры работают на одной и той же ISA, а другие сценарии — это «гетерогенные вычисления» (а сценарий «одинаковая ISA, но разные микроархитектуры» может быть и тем, и другим), и где все процессоры в равной степени способны выполнять код приложения/пользователя/«проблемного состояния»? Гай Харрис ( обсуждение ) 20:32, 14 марта 2019 (UTC) [ ответить ]

Ссылки

  1. ^ Введение в многопроцессорную обработку: различие между «симметричным» и «главным/подчиненным»
  2. ^ Обзор методов проектирования и управления асимметричными многоядерными процессорами, ACM Computing Surveys, 2015.

Почему 1108?

Почему Univac 1108 указан здесь, а не в Симметричной многопроцессорной обработке ? Процессоры [1] были идентичны, а ОС [2] [3] отправляла работу на любой доступный процессор; ни один процессор не имел особой роли. Шмуэль (Сеймур Дж.) Метц Имя пользователя: Chatul ( обсуждение ) 19:11, 27 сентября 2019 (UTC) [ ответ ]

Итак, звучит так, как будто "из сохранившейся документации" ясно, "где эта операционная система находилась на пути от асимметричной к симметричной многопроцессорной обработке", т. е. она перешла к симметричной многопроцессорной обработке; "ВЫШЕ ЭТОГО БАЗОВОГО УРОВНЯ ЛЮБОЙ ИЗ ДОСТУПНЫХ ПРОЦЕССОРОВ МОЖЕТ ВЫПОЛНЯТЬ ДАННУЮ ЗАДАЧУ" (стр. 7-3 справочника программиста Exec 8) довольно ясно - единственное различие, похоже, в том, что некоторые устройства подключены к определенным процессорам. 1108 II, по-видимому, была первой моделью MP, согласно UNIVAC 1100/2200 series#1108 ; симметричная многопроцессорная обработка упоминает ее.
Я просто наберусь смелости и удалю это с этой страницы. Гай Харрис ( обсуждение ) 20:57, 27 сентября 2019 (UTC) [ ответить ]
В статье говорится:

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

Я думаю, это означает, что это AMP, но у меня нет личной заинтересованности в любом случае. Питер Фласс ( обсуждение ) 21:56, 27 сентября 2019 (UTC) [ ответить ]
В описании системы UNIVAC 1108, похоже, говорится, что 1) периферийные устройства подключаются к контроллерам ввода-вывода (IOC) и 2) любой ЦП может получить доступ к любому контроллеру ввода-вывода, [4] , что, по-видимому, предполагает, что, по крайней мере на аппаратном уровне, он мог быть симметричным. В справочнике программиста многопроцессорной операционной системы UNIVAC 1108 EXEC 8 говорится: «НА САМОМ НИЖНЕМ УРОВНЕ EXEC ДОЛЖЕН СТАВИТЬ В ОЧЕРЕДЬ ПРЕРЫВАНИЯ, ИСПОЛЬЗУЯ НАЗНАЧЕННЫЙ ПРОЦЕССОР. ОН ТАКЖЕ ДОЛЖЕН ВЫДАВАТЬ ЗАПРОСЫ ВВОДА-ВЫВОДА НА КОНКРЕТНЫЕ ПРОЦЕССОРЫ В СООТВЕТСТВИИ С ДОСТУПНЫМИ АППАРАТНЫМИ СВЯЗЯМИ», поэтому может быть так, что система может быть настроена таким образом, чтобы не позволять всем ЦП получать доступ ко всем периферийным устройствам. Гай Харрис ( обсуждение ) 22:46, 27 сентября 2019 (UTC) [ ответить ]
В брошюре 1106/1108 «Факты и цифры» на страницах с 4 по 7 [5] есть диаграммы , которые, по-видимому, указывают на то, что у 1106 есть каналы в ЦП, так что ЦП может иметь доступ только к устройствам на своих каналах, но у 1108 может быть либо конфигурация ASMP с «Процессором ввода-вывода», который действует как ЦП с подключенными каналами, и «Вычислительным процессором», который имеет ЦП без подключенных каналов, и смешанная конфигурация с ЦП с подключенными каналами, причем периферийные устройства на этих каналах предположительно доступны только этому ЦП, и «Контроллерами ввода-вывода» (IOC) с подключенными каналами и с любым ЦП, имеющим доступ к любому IOC, причем периферийные устройства на IOC могут быть доступны любому ЦП. Гай Харрис ( обсуждение ) 23:53, 27 сентября 2019 (UTC) [ ответ ]
Согласно справочному руководству 1108 MP [1] , смешанной конфигурации не существует; в многопроцессорном 1108 ЦП не имеют каналов ввода-вывода и полагаются на IOC для ввода-вывода. Поэтому он полностью симметричен. Шмуэль (Сеймур Дж.) Метц Имя пользователя: Chatul ( обсуждение ) 18:26, 29 сентября 2019 (UTC) [ ответ ]

Ссылки

  1. ^ ab UNIVAC 1108 МНОГОПРОЦЕССОРНАЯ СИСТЕМА ПРОЦЕССОР И ХРАНЕНИЕ Справочное руководство (PDF) , 1966, UP·4053
  2. ^ UNIVAC 1108 МНОГОПРОЦЕССОРНАЯ СИСТЕМА ОПЕРАЦИОННАЯ СИСТЕМА EXEC 8 СПРАВОЧНИК ПРОГРАММИСТА (PDF) , 1968, UP.4144 Rev. 1
  3. ^ СПРАВОЧНИК ПРОГРАММИСТОВ ОПЕРАЦИОННЫХ СИСТЕМ СЕРИИ UNIVAC 1100 (PDF) , 1971, UP.4144 Rev. 2
  4. ^ ОПИСАНИЕ СИСТЕМЫ UNIVAC 1108 (PDF) , 1970, UP-4046 Rev. 3
  5. ^ Факты и цифры о системах Univac 1106/1108 (PDF) , U 4814

Из приведенных выше ссылок ясно, что Univac 1100 был полностью SMP-компьютерной системой. Что неясно, так это многопроцессорные возможности Exec 8 во времена 1108. Даже при полностью SMP-аппаратном обеспечении неполная поддержка в операционной системе может ограничить способность приложений использовать несколько ЦП. «Асимметричная многопроцессорность» была термином в искусстве в 1960-х и 1970-х годах, означавшим «несимметричная многопроцессорность». SMP была целью программного обеспечения операционной системы, и мы еще не были там. Я подозреваю, что Exec 8 во времена Univac 1108 также еще не был там. Джон Саутер ( обсуждение ) 07:26, 1 октября 2019 (UTC) [ ответ ]

Так что насчет ссылок на ОС - "UNIVAC 1108 MULTI-PROCESSOR SYSTEM OPERATING SYSTEM EXEC 8 PROGRAMMERS REFERENCE" и "UNIVAC 1100 SERIES OPERATING SYSTEM PROGRAMMERS REFERENCE" - не указывают ли они, что ОС полностью поддерживает SMP? В первой из них, в разделе 7.2 "MULTI-PROCESSING" говорится
ПОДПРОЦЕДУРЫ EXEC, ВЗАИМОДЕЙСТВУЮЩИЕ С РЕЗИДЕНТНЫМИ ПРОГРАММАМИ WORKER, ЯВЛЯЮТСЯ ПОВТОРНО ВХОДЯЩИМИ ПО КОНСТРУКЦИИ. ДЛЯ НЕБОЛЬШИХ ЗАДАЧ, ЗАПРОШЕННЫХ ОТ EXEC, МНОГИЕ ИЗ ПОДПРОГРАММ ПОЛНОСТЬЮ ПОВТОРНО ВХОДЯТ. ДРУГИЕ, НАХОДЯСЬ В МНОГОПРОЦЕССОРНОЙ СРЕДЕ, БУДУТ СТАВИТЬ В ОЧЕРЕДЬ ЗАПРОС ФОГРАМА WORKER, ГДЕ ТРЕБУЕТСЯ ПОСЛЕДОВАТЕЛЬНАЯ ОБРАБОТКА В КОНКРЕТНОЙ ОБЛАСТИ EXEC. НА САМОМ НИЗКОМ УРОВНЕ EXEC ДОЛЖЕН СТАВИТЬ В ОЧЕРЕДЬ ПРЕРЫВАНИЯ, ИСПОЛЬЗУЯ НАЗНАЧЕННЫЙ ПРОЦЕССОР. ОН ТАКЖЕ ДОЛЖЕН ВЫДАВАТЬ ЗАПРОСЫ IO НА КОНКРЕТНЫЕ ПРОЦЕССОРЫ В СООТВЕТСТВИИ С ДОСТУПНЫМИ АППАРАТНЫМИ СВЯЗЯМИ. ВЫШЕ ЭТОГО БАЗОВОГО УРОВНЯ ЛЮБОЙ ИЗ ДОСТУПНЫХ ПРОЦЕССОРОВ МОЖЕТ ВЫПОЛНЯТЬ ДАННУЮ ЗАДАЧУ, ПРИ ЭТОМ ВЫБОР ОСНОВАН НА ПРИОРИТЕТЕ ЗАДАЧ, ВЫПОЛНЯЕМЫХ ПРОЦЕССОРАМИ В ТЕКУЩИЙ МОМЕНТ. ОБЛАСТИ КОДИРОВАНИЯ EXEC, КОТОРЫЕ ССЫЛАЮТСЯ НА ОБЩИЕ ДАННЫЕ И ДРУГИЕ С СПЕЦИАЛИЗИРОВАННЫМИ МЕТОДАМИ КОДИРОВАНИЯ, ДОЛЖНЫ БЫТЬ ЗАЩИЩЕНЫ ОТ ОДНОВРЕМЕННОГО ВЫПОЛНЕНИЯ, НО МНОГИЕ ОБЛАСТИ БУДУТ ОТКРЫТЫ И ОБРАБОТАНЫ МНОГОКРАТНО ПО НЕОБХОДИМОСТИ.
Похоже, это подразумевает, что нет единого ЦП, обозначенного как «ЦП, который запускает Exec», учитывая упоминание о необходимости «[защитить]» «области кодирования Exec, которые ссылаются на общие данные и другие со специализированными методами кодирования» «от одновременного выполнения» и учитывая, что «многие области» Exec «будут открыты и многообрабатываемы по мере необходимости». Похоже, что не только любой ЦП может запустить код Exec, но даже нет гигантской блокировки — блокировка более мелкозернистая.
Также, похоже, это указывает на то, что нет единого ЦП, обозначенного как «ЦП, который выполняет ввод-вывод» — запросы ввода-вывода могут быть выданы «на определенных процессорах», во множественном числе. Согласно комментарию Чатула, в системе MP 1108 все устройства подключены к IOC, а не к ЦП, и все IOC, по-видимому, доступны всем ЦП, поэтому, похоже, существуют «аппаратные связи» между каждым ЦП и всеми устройствами ввода-вывода. Также была конфигурация ASMP 1108, в которой был один ЦП, к которому были подключены все устройства ввода-вывода, поэтому в этой конфигурации не было аппаратных связей между «вычислительным процессором» и любыми устройствами ввода-вывода, поэтому только «процессор ввода-вывода» мог выдавать запросы ввода-вывода.
Во втором из этих руководств меньше говорится о возможностях MP системы, но оно ссылается на 1108, так что это не значит, что в нем не говорится о возможностях Exec 8 при работе на 1108. Гай Харрис ( обсуждение ) 16:49, 1 октября 2019 (UTC) [ ответ ]
Текст, который вы процитировали из раздела 7.2, больше похож на цели проектирования многопроцессорной версии Exec 8. Обратите внимание на следующий отрывок из абзаца «Введение», сразу после оглавления:
ЭТОТ ДОКУМЕНТ СОДЕРЖИТ ОПИСАНИЕ ИСПОЛНИТЕЛЬНОГО КОМПОНЕНТА ОПЕРАЦИОННОЙ СИСТЕМЫ ДЛЯ КОМПЬЮТЕРА UNIVAC 1108 И ПРЕДСТАВЛЯЕТ СОБОЙ ФОРМУ СПРАВОЧНОГО РУКОВОДСТВА ПРОГРАММИСТА (PRM). ИСПОЛНИТЕЛЬНЫЙ КОМПОНЕНТ ПРЕДНАЗНАЧЕН ДЛЯ РАБОТЫ В КАЧЕСТВЕ ГЛАВНОЙ ПРОГРАММЫ УПРАВЛЕНИЯ, КОТОРАЯ СОЗДАЕТ ЭФФЕКТИВНУЮ МУЛЬТИПРОГРАММНУЮ СРЕДУ, НЕОБХОДИМУЮ ДЛЯ ИСПОЛЬЗОВАНИЯ ПОЛНЫХ ВОЗМОЖНОСТЕЙ МУЛЬТИПРОЦЕССОРНОЙ СИСТЕМЫ UNIVAC 1108. ДАННОЕ РУКОВОДСТВО СОДЕРЖИТ ПОДРОБНОЕ ОПИСАНИЕ ПРОЦЕДУР ИСПОЛЬЗОВАНИЯ И ФУНКЦИОНАЛЬНЫХ ВОЗМОЖНОСТЕЙ, НО НЕ ВО ВСЕХ СЛУЧАЯХ ПРЕДСТАВЛЯЕТ ПОДРОБНУЮ ЛОГИКУ ПРОГРАММИРОВАНИЯ, КОТОРАЯ ОБЕСПЕЧИВАЕТ ВОЗМОЖНОСТЬ ЭТИХ ПРОЦЕДУР И ВОЗМОЖНОСТЕЙ.
ОПИСАННАЯ ВЕРСИЯ ИСПОЛНИТЕЛЬНОЙ СИСТЕМЫ ПРЕДНАЗНАЧЕНА ДЛЯ КОНФИГУРАЦИИ ПРОЦЕССОРА БЛОКА. ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ ДЛЯ ИСПОЛНИТЕЛЯ ТОТ ЖЕ, ЧТО ПОКАЗАНО, ТОТ ЖЕ ИНТЕРФЕЙС БУДЕТ ИСПОЛЬЗОВАН В ВЕРСИИ МНОГОПРОЦЕССОРНОЙ ОБРАБОТКИ С ДОПОЛНЕНИЯМИ, СДЕЛАННЫМИ ДЛЯ КОНТРОЛЯ И ИСПОЛЬЗОВАНИЯ НОВЫХ ФУНКЦИЙ, ДОСТУПНЫХ ТОЛЬКО В КОНФИГУРАЦИИ МНОГОПРОЦЕССОРНОЙ ОБРАБОТКИ, ВСЕ ПОСТАВКИ СИСТЕМЫ БУДУТ ВКЛЮЧАТЬ «СИСТЕМНЫЙ МЕМОРАНДУМ», В КОТОРОМ ПОДРОБНЕЕ ОПИСЫВАЮТСЯ ХАРАКТЕРИСТИКИ ТЕКУЩЕЙ СИСТЕМЫ. В МЕМОРАНДУМАХ БУДУТ УКАЗАНЫ РАЗЛИЧНЫЕ ДОПОЛНЕНИЯ ИЛИ УЛУЧШЕНИЯ, СДЕЛАННЫЕ ПО МЕЖДУ ОБНОВЛЕНИЕМ СИСТЕМЫ,
Из вышесказанного становится ясно, что возможности многопроцессорной обработки Exec 8 еще не были готовы в 1968 году, когда было написано руководство. Джон Саутер ( обсуждение ) 19:35, 1 октября 2019 (UTC) [ ответить ]
Кажется неясным, будет ли "ОПИСАННАЯ ВЕРСИЯ ИСПОЛНИТЕЛЬНОЙ СИСТЕМЫ" вообще работать на SMP-оборудовании, за исключением, возможно, полного игнорирования другого процессора или двух процессоров, поскольку она "ДЛЯ КОНФИГУРАЦИИ ПРОЦЕССОРА УСТРОЙСТВА". Интересный вопрос заключается в том, какие версии Exec 8 работали на 1108 - была ли когда-либо версия SMP для 1108? Если была, то 1108 была системой SMP, даже если изначально она не поставлялась с версией SMP ОС.
В выпуске информационного бюллетеня Unisys History Newsletter о модели 1108 говорится:
Хотя и EXEC I, и EXEC II были предусмотрены для процессора 1108, было ясно, что их следует объединить, чтобы получить настоящую многопрограммную систему с простотой использования и внешним видом EXEC II. Кроме того, должна была быть операционная система для многопроцессорных 1108. Эта новая операционная система называлась EXEC 8, иногда ее писали как EXEC VIII. Спецификации для нее были составлены в декабре 1964 года, а работа началась в мае 1965 года. Анонс EXEC 8 в 1966 году был встречен скептически компанией Datamation, которая видела много крупных программных фиаско других компьютерных компаний: «Шаг к зыбучим пескам: Univac, которая преуспевала с единственным работающим крупномасштабным программным обеспечением, присоединяется к толпе manana с новой операционной системой для 1108». Сначала Datamation правильно его рассчитала: первоначальные версии EXEC 8 работали не очень хорошо, и в 1967 году Sperry Rand пришлось бесплатно предоставить один из 1108 NASA в качестве штрафа за несоблюдение сроков выполнения контракта. Ситуация улучшилась, так что Мэрилендский университет уже использовал EXEC 8 весной 1968 года, а год спустя президент Computer Response Corporation, сервисного бюро с 1108 в Вашингтоне, мог сказать об уровне EXEC 23.25: «Мы удовлетворены тем, как он справляется с нашей рабочей нагрузкой». Однако EXEC 8 не был полностью устоявшимся до 1970 года.
Согласно UNIVAC_1100/2200 series#1110 , модель 1110 была представлена ​​только в 1972 году, поэтому в период с 1970 по 1972 год единственными моделями были 1108 и 1106. Если только поддержка SMP не появилась в Exec 8 до 1972 года, это означало, что она поддерживала 1108, и даже если она появилась в 1972 году или позже, если только эта версия Exec 8 не поддерживала SMP на 1108, это также означало, что 1108 могла работать с версией SMP этой ОС.
А если мы посмотрим на второе из двух руководств по ОС, датированное 1971 годом, то в разделе 25.2 «БАЗОВАЯ ФИЛОСОФИЯ ПРОЕКТИРОВАНИЯ» говорится:
Центральные процессоры (ЦП) в целом рассматриваются одинаково. Компоненты должны быть готовы к выполнению на любом ЦП; исключения ограничиваются определенными функциями обслуживания и ситуациями ввода-вывода (I/O), в которых конкретный ЦП не имеет прямого электрического пути к конкретному периферийному устройству. Такой подход позволяет максимально использовать ЦП в многопроцессорных системах.
и раздел 25.4 «МНОГОПРОЦЕССОРНАЯ ОБРАБОТКА» делает аналогичные утверждения, что и руководство 1968 года, о том, что блокировка 1) необходима (т. е. нет процессора, который был бы единственным, выполняющим исполнительный код) и 2) мелкозернистая (то есть она не просто симметрична, но и гигантски заблокирована). Гай Харрис ( обсуждение ) 21:09, 1 октября 2019 (UTC) [ ответить ]
Согласен, что вопрос поддержки Exec 8 многопроцессорности интересен. Вы предположили, что ранние версии Exec 8 могли игнорировать дополнительные процессоры. Другая возможность заключается в том, что Univac могла не поставлять клиентам многопроцессорные системы 1108, пока Exec 8 не был готов их поддерживать. DEC сделала это с PDP-10: клиенты могли создавать многопроцессорные системы из компонентов, но они несли ответственность за программное обеспечение. Еще одна возможность заключается в том, что ранние версии Exec 8 запускали только задачи пользовательского режима (режим защиты) на дополнительных процессорах, таких как Burroughs B5500. Такого рода минимальная поддержка может быть быстро закодирована, но она помещает 1108, работающую с такой версией Exec 8 (если она когда-либо существовала), прочно в лагерь AMP. Джон Саутер ( обсуждение ) 17:17, 2 октября 2019 (UTC) [ ответить ]
Если диаграмма «Генеалогическое древо Sperry Rand Computers 1962-1980» на этой странице дает правильные даты поставок, то 1108 II впервые был отправлен в 1968 году. Согласно «Unisys Computers, An Introductory History» Джорджа Т. Грея и Рональда К. Смита (по крайней мере, в издании Apple Books), «первая поставка однопроцессорной версии EXEC 8 состоялась в феврале 1967 года». и «первый многопроцессорный EXEC 8 (уровень 20) был выпущен в январе 1968 года». Так что, возможно, первая система MP и первая версия MP Exec 8 были отправлены в 1968 году. Гай Харрис ( обсуждение ) 17:56, 2 октября 2019 (UTC) [ ответ ]
Я подозреваю, что версия UP EXEC 8 вообще не могла работать на MP 1108; кто-нибудь знает, могла ли версия UP EXEC 8 использовать IOC? Шмуэль (Сеймур Дж.) Метц Имя пользователя: Chatul ( обсуждение ) 22:49, 2 октября 2019 (UTC) [ ответ ]
"мог бы работать на MP 1108 вообще" или " не мог бы работать на MP 1108 вообще"? Гай Харрис ( обсуждение ) 04:43, 3 октября 2019 (UTC) [ ответить ]
Спасибо; исправлено. Шмуэль (Сеймур Дж.) Метц Имя пользователя: Chatul ( обсуждение ) 16:53, 3 октября 2019 (UTC) [ ответить ]

Непоследовательность в#CDC 6500 и 6700

Выбор моделей в #CDC 6500 и 6700 сбивает с толку и непоследователен. Если определение AMP, используемое в статье, учитывает периферийные процессоры (PP), то 6400 и 6600 следует включить в качестве AMP. В качестве альтернативы, если определение не учитывает PP, то следует указать только 6700, поскольку два CP 6500 идентичны и играют идентичные роли в программном обеспечении. Шмуэль (Сеймур Дж.) Метц Имя пользователя: Chatul ( обсуждение ) 11:48, 28 марта 2023 (UTC) [ ответ ]

В статье говорится, что серия CDC 6000 не вписывается в обычную классификацию ASMP и SMP. Возможно, их следует полностью исключить из статьи, но я подумал, что эта информация будет полезна читателю, интересующемуся этими компьютерами. Я не очень хорошо с ними знаком; возможно, вы могли бы расширить описание, чтобы предоставить больше подробностей и таким образом прояснить путаницу. Джон Саутер ( обсуждение ) 20:16, 28 марта 2023 (UTC) [ ответить ]
Лид говорит, что асимметричная многопроцессорная система (AMP или ASMP) — это многопроцессорная компьютерная система, в которой не все из нескольких взаимосвязанных центральных процессоров (ЦП) обрабатываются одинаково. ; это не означает, что процессоры должны выполнять один и тот же код. Исторически термин «мультипроцессор» включал системы с разными процессорами, например, систему IBM Direct Coupled System [1] (DCS), предшественника ASP . -- Шмуэль (Сеймур Дж.) Метц Имя пользователя: Chatul ( обсуждение ) 11:14, 29 марта 2023 (UTC) [ ответ ]
Ого, я понятия не имел, что существует система прямой связи 7040-7090; спасибо за ссылку. У нас в Стэнфорде было что-то похожее, только мы использовали DEC PDP-1 вместо IBM 7040, 7090 сохранил свои ленточные накопители и 1401, и, конечно, нам пришлось писать все наше собственное программное обеспечение.
Читая руководство, на которое вы ссылаетесь, я вижу слово «мультипроцессор» только как часть названия программного обеспечения, работавшего в 7040, и название инструкции, используемой для связи между компьютерами. Позже IBM использовала термин «мультисистема» для описания как такого рода систем, так и компьютеров, которые совместно использовали основную память, причем «мультипроцессор» — это как раз последнее.
Возможно, в начале статьи также следует сказать, что пользовательское программное обеспечение может работать на любом из процессоров. Джон Саутер ( обсуждение ) 13:57, 29 марта 2023 (UTC) [ ответить ]
У Cray было что-то похожее на DCS на Cray 1 , использующее Data General Eclipse в качестве интерфейса.
Я бы сказал, что нужно обратиться к некоторым текстам CS и позволить руководству отразить это. Моя главная забота заключается в том, чтобы любое используемое определение применялось последовательно, что в настоящее время не так, но я не хочу редактировать этот раздел, пока не будет достигнут консенсус относительно того, какое определение использовать, поскольку это определит, должно ли оно включать только 6700 или все четыре..
Honeywell 8200 [2] — пример, который соответствует вашему определению, но в нем процессоры имеют радикально разные архитектуры: один ориентирован на символы, а другой, виртуальный мультипроцессор, ориентирован на слова .
Мне интересно, должны ли в статье быть разделы о DCS и H-8200. -- Шмуэль (Сеймур Дж.) Метц Имя пользователя: Chatul ( обсуждение ) 22:04, 29 марта 2023 (UTC) [ ответить ]
Ого, я обнаружил, что читать справочное руководство по оборудованию 8200 — это как пить из пожарного шланга. Я нашел описание программного обеспечения, которое было более доступно, на [3] . Похоже, что H8200 — это многопроцессор, в котором один ЦП имеет восемь потоков, а другой, процессор поддержки, использует другой набор инструкций. Оба ЦП имеют доступ к памяти и периферийным устройствам. Однако операционная система не может перемещать приложение между двумя ЦП, потому что у них разные наборы инструкций. Если мы собираемся включить такую ​​машину в эту статью, нам нужно расширить область применения статьи. Я также думаю, что расширение области применения оправдано для включения таких компьютеров, как DCS. Есть мысли по поводу расширенного руководства? Джон Саутер ( обсуждение ) 13:16, 30 марта 2023 (UTC) [ ответить ]

Поздно вступаю в эту дискуссию. Я думаю, что SMP и ASMP подразумевают, что совместимые ЦП совместно используют память. Фронтенды не считаются, поэтому, например, CDC 6600 PP или PDP-11, являющиеся фронтендом PDP-10, не являются примерами. Я думаю, что системы должны совместно использовать память, в противном случае это кластер. Мой пример ASMP — Burroughs 5500, где процессор A запускал ОС, подключенную ко всем вводам-выводам, а процессор B мог выполнять только пользовательские задания и должен был прерывать процессор A для выполнения ввода-вывода. Я думаю, что у IBM были похожие системы. В SMP все процессоры равны, и любой может запускать ОС и/или пользовательские задания. Я думаю, что DCS — пример фронтенд-системы, а ASP — кластер, но определения скользкие. Питер Фласс ( обсуждение ) 23:39, 29 марта 2023 (UTC) [ ответить ]

Да, определения очень скользкие. Возможно, мы можем расширить область действия этой статьи, включив Honeywell 8200 и DCS. Что касается использования PDP-11 в качестве интерфейса на PDP-10, было два способа сопряжения компьютеров: на KL-10 интерфейс был DTE-20, который просто передавал сообщения между компьютерами, но на KI-10 интерфейс был DL-10, который отображал часть адресного пространства PDP-11 в память PDP-10, если я правильно помню. Джон Саутер ( обсуждение ) 13:16, 30 марта 2023 (UTC) [ ответить ]
Существует множество различных типов систем с несколькими процессорами, которые не остаются инвариантными при перестановке процессоров:
  • «все процессоры имеют одинаковый набор инструкций и одинаковую производительность, один процессор назначается процессором, который обрабатывает низкоуровневый код ОС, все остальное просто выполняет код приложения», например, ранние системы Burroughs B5xxx;
  • «все процессоры имеют одинаковый набор инструкций, все процессоры могут выполнять низкоуровневый код ОС, но некоторые ресурсы являются «локальными» для конкретного процессора или подгруппы процессоров, при этом ресурсы, «локальные» для данной группы, медленнее доступны из другой группы», например, системы NUMA ;
  • «все процессоры имеют (в основном) одинаковый набор инструкций, но не обладают одинаковой производительностью, все процессоры могут выполнять низкоуровневый код ОС и взаимодействовать со всеми устройствами ввода-вывода», например, ARM big.LITTLE , Intel Lakefield , кремниевые SoC Apple с ядрами «производительности» и «эффективности» и т. д. - см. Гетерогенные вычисления § Гетерогенная топология ЦП ;
  • «некоторые процессоры являются процессорами приложений, другие выполняют системные функции», например, системы CDC 6xxx с CP и PP, системы с интерфейсными процессорами, DCS, ASP, мобильные телефоны с процессорами основной полосы частот, мэйнфреймы IBM с устройством сопряжения , IBM System/34 и IBM System/36 и т. д.;
  • «некоторые процессоры являются процессорами приложений общего назначения, другие — специализированными сопроцессорами», например, суперкомпьютеры, использующие графические процессоры для некоторых вычислений, системы с сопроцессорами нейронных сетей и т. д. (это не касается сопроцессоров, реализующих инструкции центрального процессора, таких как дополнительные процессоры с плавающей точкой ).
и, возможно, некоторые другие, которые я пропустил.
Первый из них, вероятно, большинство людей называют «ASMP».
Вторые из них обычно рассматриваются как аналогичные SMP, но с учетом топологии, которую должен учитывать планировщик.
Третий из них также чем-то похож на SMP, в котором планировщик учитывает возможности ЦП, например, перемещая задания между ядрами «производительности» и «эффективности».
Четвертый из них, вероятно, обычно не рассматривается как "MP" в смысле SMP/ASMP. По крайней мере, как я прочитал статью AFIPS по H8200, он в некоторой степени относится ко второй категории, но процессор поддержки может запускать код приложения для передачи данных и преобразования медиа, так что это не то, что "другой" просто запускает системный код.
Пятый из них явно не является традиционным SMP или ASMP. В разделе «Гетерогенная системная архитектура» обсуждаются современные версии некоторых из них.
На странице гетерогенных вычислений говорится о различных системах в последних трех категориях, но это достаточно гетерогенная группа систем, и гетерогенные вычисления § Пример оборудования имеет примечание «требует очистки». Гай Харрис ( обсуждение ) 20:16, 30 марта 2023 (UTC) [ ответ ]
Это превосходный анализ множества способов совместного использования нескольких компьютеров. Статья о многопроцессорной обработке начинается с определения многопроцессорных систем как тесно связанных, но затем описываются слабосвязанные системы. Я думаю, что вся статья могла бы быть заменена этим описанием. Пересмотренная статья о многопроцессорной обработке могла бы затем иметь дочерние статьи Симметричная многопроцессорная обработка и Асимметричная многопроцессорная обработка. Джон Саутер ( обсуждение ) 06:39, 31 марта 2023 (UTC) [ ответить ]
Как насчет трех дочерних статей:
  • Тесно связанная асимметричная многопроцессорная обработка
  • Тесно связанная симметричная многопроцессорная обработка
  • Слабосвязанная многопроцессорная обработка.
IMHO было бы нецелесообразно разделять слабосвязанные на симметричные и асимметричные. Кроме того, определение должно быть четким в отношении статуса процессоров, которые имеют косвенный доступ к памяти других процессоров.
Чтобы добавить сложности, одной из вещей, добавленных в ASP версии 3, был локальный ASP (LASP), в котором процессор служил как основным, так и вспомогательным процессором, а с появлением JES3 это стало нормой; образ MVS, служащий вспомогательным процессором, также выполняет рабочую нагрузку основного процессора. -- Шмуэль (Сеймур Дж.) Метц Имя пользователя: Chatul ( обсуждение ) 12:20, 31 марта 2023 (UTC) [ ответ ]
Я думаю, это была бы прекрасная организация. Я не уверен, как должно называться статья верхнего уровня. В начале существования System/360 IBM использовала термин «Мультисистема» для нее, но в конечном итоге стала использовать этот термин только для слабосвязанных компьютеров. Возможно, мы могли бы назвать это «многопроцессорностью и мультисистемностью», а три дочерние статьи ссылались бы на это как-то вроде «для других способов совместного использования нескольких компьютеров см. «многопроцессорность и мультисистемность». Джон Саутер ( обсуждение ) 13:15, 31 марта 2023 (UTC) [ ответить ]

Ссылки

  1. ^ IBM 7090-7040 Direct Couple Operating System - Programmer's Guide (PDF) . IBM . Март 1965. C28-6382-3 . Получено 29 марта 2023 г. . {{cite book}}: |work=проигнорировано ( помощь )
  2. ^ Модель 8200 - Справочное руководство по оборудованию (PDF) . Honeywell . 1 августа 1967 г. 685. Получено 29 марта 2023 г.
  3. ^ ТЕОДОР Ф. ХЭТЧ-МЛАДШИЙ; ДЖЕЙМС Б. ГЕЙЕР (9 декабря 1968 г.). «Взаимодействие аппаратного и программного обеспечения на модели Honeywell 8200».

IBM System/z

IBM System/z может содержать ряд специализированных CP. Например, Integrated Facility for Linux (IFL) — я не знаю, является ли это строго программной вещью или она запускает другой микрокод, но в любом случае это, похоже, текущий пример AMP. Как насчет чего-то вроде XT/370, в котором есть как процессор Intel «support», так и процессор, работающий с микрокодом 370? Питер Фласс ( обсуждение ) 18:48, 14 сентября 2023 (UTC) [ ответить ]

Системы IBM Z с IFL не кажутся мне похожими на классические AMP. Существует множество типов систем, включающих несколько процессоров, где не все процессоры «выглядят одинаково»; гетерогенные вычисления охватывают многие из них, и эти системы кажутся мне гетерогенными вычислениями.
Что касается "поддерживающего" ЦП в PC-XT/370 (который является просто частью "ПК"), то, согласно статье, он, по-видимому, запустил некое подобие приложения гипервизора VM поверх DOS, и, как я подозреваю, код, работающий на взломанной микрокодом реализации 68000+8087 S/370, "попадал в гипервизор" из-за остановки ЦП, а приложение VM DOS получало уведомление о ловушке, делало то, что ему положено делать, и перезапускало ЦП. Это также кажется мне гетерогенным вычислением, а не ASMP.
Суперкомпьютеры CDC, в которых периферийные процессоры не только управляют устройствами, но и запускают ОС, также кажутся мне гетерогенными вычислениями, как, например, IBM System/34 и IBM System/36 с «процессором управления хранилищем», запускающим ОС, и «процессором основного хранилища», запускающим приложения.
Использовался ли термин «асимметричная многопроцессорная обработка» когда-либо для чего-либо иного, чем «все ЦП могут выполнять один и тот же код приложения, но только один из них {запускает системный код, может управлять устройствами ввода-вывода}» где-либо, кроме Википедии? (Топология никогда не выпущенной асимметричной многопроцессорной обработки § PDP-11/74 была описана DEC как «симметричная» на странице 2 RSX-11M - PDP-11/70 Multiprocessing System Functional Specification, ее появление в асимметричной многопроцессорной обработке не имело значения; мне кажется, что это больше похоже на «NUPA» - «неоднородный периферийный доступ», по аналогии с NUMA - а не на асимметричную.) Гай Харрис ( обсуждение ) 20:38, 14 сентября 2023 (UTC) [ ответ ]
Серия CDC 6000, несомненно, относится к типу AMP, но, как обсуждалось в разделе #Несоответствие в #CDC 6500 и 6700, первый абзац раздела Асимметричная многопроцессорная обработка#CDC 6500 и 6700 не имеет значения, а название раздела неуместно; все серии CDC 6000 и Cyber ​​70 и 170 имели обозначение CP-PP, а не только 6500 и 6700.
Кстати, 6600 может быть оснащена дополнительным вторым CP. -- Шмуэль (Сеймур Дж.) Метц Имя пользователя: Chatul ( обсуждение )
Серия CDC 6000 — это, несомненно, AMP Серия CDC 6000 — это, несомненно, линейка систем, в которых не все процессоры имеют одинаковый набор инструкций и выполняют одинаковую роль. Это сильно отличается, скажем, от B5000, где процессоры имеют одинаковый набор инструкций и оба могут выполнять код приложения B5000, но только один из них может напрямую взаимодействовать с устройствами ввода-вывода или выполнять код ОС привилегированного режима. Это больше похоже, например, на System/34 и System/36, где у вас есть «процессор ОС» и «процессор приложений», причем два типа процессоров имеют разные наборы инструкций, а код ОС выполняется на «процессоре ОС».
Серия CDC 6000 § 6500 говорит, что у него есть два центральных процессора и один набор периферийных процессоров. Если любой из двух CP может взаимодействовать с PP, то это звучит так, как будто он симметричен с точки зрения запуска кода приложения и неоднороден как система в целом. Серия CDC 6000 § 6700 описывает неоднородную систему одного вида с точки зрения запуска кода приложения (что-то вроде, например, системы ARM big.LITTLE, где процессоры имеют одинаковый набор инструкций и оба могут выполнять один и тот же код, но между ними есть существенная разница в производительности), которая также неоднородна с точки зрения наличия отдельных процессоров приложений и ОС с двумя разными наборами инструкций.
Термины «асимметричная многопроцессорная обработка», «асимметричный многопроцессор» и «AMP» следует использовать в Википедии в соответствии с тем, как они использовались исторически. Если они применялись только к системам, где все процессоры выполняли один и тот же набор инструкций и все могли выполнять код приложений, но только некоторые могли взаимодействовать с периферийными устройствами и только некоторые запускали привилегированный код ОС, то это то, что следует обсудить на этой странице. Если они также применялись к другим разновидностям гетерогенных вычислений , то это то, что следует обсудить на этой странице, вероятно, с таксономией гетерогенных вычислительных систем, используемой для различения различных типов систем. Гай Харрис ( обсуждение ) 21:29, 15 сентября 2023 (UTC) [ ответ ]
На IBM z CP, ICF, IFL, SAP, zAAP и zAAP физически одинаковы и выполняют одни и те же наборы инструкций, за исключением специальных инструкций, которые позволяют ОС проверять соответствие условиям лицензии. Linux и z/VM могут работать как на CP, так и на IFL, но последний менее затратен. Во время лицензирования процессорных блоков IBM настраивает доступные PU на заказанные вами типы. Аппаратное обеспечение симметрично, но различные программные компоненты будут работать только на определенных типах PU, например, CFCC не будет работать на CP или IFL.
XT/370 имел один процессор Intel 8088 и два процессора Motorola 68000 ]]; один 68000 имел стандартный микрокод, а один — специальный микрокод. Я не знаю, какие части программы управления VM/PC работали на 8088, а какие — на 68000, и я не знаю разделения кода CP между двумя 68000, но код S/370 работал только на 68000 с измененным микрокодом. -- Шмуэль (Сеймур Дж.) Метц Имя пользователя: Chatul ( обсуждение ) 13:18, 15 сентября 2023 (UTC) [ ответ ]

Программа управления ВМ/ПК

Спасибо. Я никогда не углублялся в детали Ziips и Zap и т. д., поэтому не знал, есть ли больше различий в микрокоде, чем вы описываете, для улучшения производительности или чего-то еще. Думаю, они не подходят для этой статьи, несмотря ни на что, исходя из определения, которое мы используем. Питер Фласс ( обсуждение ) 21:05, 15 сентября 2023 (UTC) [ ответить ]
Retrieved from "https://en.wikipedia.org/w/index.php?title=Talk:Asymmetric_multiprocessing&oldid=1228229758"