Непридуманная история создания Эльбрус 1-К-2 и его математического обеспечения
Балакирев Николай Евгеньевич
В конце 1978 года представители разработчиков ОС ДИСПАК (В.Ф. Тюрин, Н.Е. Балакирев) были приглашены Всеволодом Сергеевичем Бурцевым, директором ИТМиВТ, для знакомства с новой разработкой Эльбрус-1 [1] и с его специализированным процессором вычислительной системы (СВС). Главным конструктором этого СВС оказался Марк Валерьянович Тяпкин, обаятельный и обстоятельный инженер и разработчик. Он показал небольшую стойку, в которой в интегральном исполнении была реализована очень популярная, прежде всего среди научных организаций, электронно-вычислительная машина второго поколения БЭСМ-6. Фактически СВС, со встречаемым названием как интегральная БЭСМ-6, а после сдачи государственной приемки именуемой уже как Эльбрус-1-К-2 (Эльбрус-1 комплектация 2) имел необычную историю своего появления. Эта машина была «вживлением» в многопроцессорный комплекс Эльбрус-1, а в последующем в Эльбрус-2 специального вычислителя, полностью совместимого по командам пользователя с ЭВМ БЭСМ-6. Фактически на этой машине отрабатывалась технология создания будущего Эльбруса-2. Насколько она превосходила БЭСМ-6, можно сравнить по техническим характеристикам, представленным в табл. 1.
Характеристика |
БЭСМ-6 (поздний вариант) |
Эльбрус-1К2 | Эльбрус-КБ |
Производительность (млн. оп/с) |
1 | 2,5 — 3 | 4 — 5 |
Возможность параллельной обработки | Многомашинный вариант через общие диски | Многопроцессорная обработка эффективная конфигурация до 3-х процессоров | Многомашинный вариант через перекрестное обращение к оперативной памяти |
Частота, МГц | 10 | 20 | 20 |
Разрядность обрабатываемых данных через сумматор, в том числе с плавающей запятой, бит | 48 | 48 | 48 или 64 |
Разрядность математического адреса ОЗУ, бит | 15 | 15 | 15 или 27 в новом расширенном режиме |
Объём физической памяти ОЗУ | 0,768 мгб | В пределах подключаемой конфигурации Эльбрус 1 | 64мгб |
Объём дискового ЗУ и МБ (в стандартной комплектации) |
11мгб | 58 мгб | 800 мгб |
Занимаемая площадь, м² (со всей периферией) |
250 | 250 | 70 |
Потребляемая мощность, кВт | 60 | 105 | 25 |
Прежде всего, следует сказать о причине зарождения, о новых качественных технических и технологических характеристиках СВС. Эта машина была фактически заказана представителями ВНИИЭФ во главе с Иваном Денисовичем Софроновым. Основной комплекс программ у них был реализован на БЭСМ-6 и более того имелись программы, которые решали их задачи, но написаны были чуть ли не в кодах машины с максимальной «выжимкой» производительности за счет хорошего знания внутренней архитектуры БЭСМ-6. Значимость их программного комплекса в работе оборонных изделий не предполагала возможности приостановки работ и отведения времени на переписывание программ. Именно эти обстоятельства потребовали внедрить в стройную архитектуру многопроцессорного вычислительного комплекса (МВК) Эльбрус, который на этапе проектирования именовали Чегет, – спецпроцессор вычислительной системы. Нужно подчеркнуть, что на начальном этапе в комплексе Эльбруса не планировали других центральных процессоров (ЦП). Итак, следует заметить, что названия СВС, интегральная машина БЭСМ-6, Эльбрус-1-К-2 относятся к одной и той же вычислительной машине.
Несколько слов о техническом содержании СВС. Эльбрус-1 был реализован на старой элементной базе, а СВС фактически был началом применения интегральной техники и явился полигоном для обкатки технологии создания будущего Эльбрус-2. Именно применение ИС позволило уместить всю БЭСМ-6 в одной стойке эквивалентной одному не большому книжному шкафу. Маленькая реплика болтунам из Интернет, которые подхихикивают по поводу размерности и характеристик наших Советских компьютеров. Мы же не смеемся, когда читаем, что перемещение из Москвы в Европу в Петровские времена как для Россиян так для Европейцев занимало недели. Можно было после прочтения о таком факте задать глупый вопрос: «И почему они не летали?» И здесь сразу же хочется отметить, что и Американские компьютеры в то время также не отличались миниатюрностью.
Именно появление первых интегральных схем привело к тому, что вся логика машины в последующем стала размещаться в одной микросхеме. Но в ту пору такие технологии, как у нас, так и в США делали только первые шаги. Стартовое отставание было не критичным, а в последующем важен был результирующий финиш. Но наши политики и экономисты сделали всё, чтобы мы не были первыми.
Итак, использование ИС породило проблему отвода тепла от микросхем повышенной интеграции. И в СВС впервые, (по крайней мере, в СССР) была применена система водяного охлаждения ячеек процессора (а в модульном конвейерном процессоре (МКП) была уже реализована система отвода тепла от БИС). То, что размещалось в шкафу с точки зрения охлаждения, тянуло за собой целую «водопроводную» систему, включая охлаждение самой воды. Это было большой проблемой для этого комплекса.
Безусловно, для такого сложного комплекса требовались новые конструктивы: шкафы, ячейки, разъемы, кабели и т.д. Всё это в совокупности выливалось в громадную технологию, включая, математическое обеспечение, производство ИС, а затем и БИС (проектировались в ИТМиВТ, а производились в Зеленограде) и т.д., которая и была поименована как технология Эльбруса. И, слава Богу, несмотря на усилия наших горе-«реформаторов», а по факту разрушителей нашей вычислительной отрасли, технология Эльбруса жива [2]. Стоило бы поблагодарить наших разработчиков и конструкторов за их за мужество и стойкость в сумятице и неразберихе государственных преобразований. А нашим горе-экономистам и политикам дать совет: «Не пытайтесь измерять творческий потенциал и возможности людей в денежном эквиваленте». Духовная валюта – она в поступках и в их результатах во благо всех людей, а для того, чтобы она множилась нужно, создавать атмосферу и климат для творчества.
О людях и творческой атмосфере в ИТМиВТ. Видимо, в немалой степени благодаря С.А. Лебедеву в институте собрался коллектив, увлеченных своей работой людей и работа в нем не прекращалась ни днем, ни ночью. Припозднившиеся жители домов, находящихся рядом с ИТМиВТ, часто могли наблюдать такую картину: ежедневно около 0.40 московского времени из проходной института выскакивала толпа сотрудников, и бегом устремлялась на остановку троллейбуса, который доставлял их к метро «Ленинский проспект», закрывавшемуся в час ночи. А внутри института в курилках непрерывно обсуждались насущные проблемы вычислительной техники, зарождались новые идеи, а дым то ли творчества, то ли сигарет окутывал курящих. Не зависимо от статуса сотрудника можно было обратиться с любым вопросом в любую лабораторию и получить исчерпывающий ответ. Всех объединяло то, что делалось одно дело, и как на фронте требовалась взаимовыручка и понимание задач не только своих, но и тех, кто работал рядом. Людей интересовали не их карьера, а дело, которому они честно служили. И не удивительно, например, что такие известные конструкторы наших советских ЭВМ, как Андрей Андреевич Соколов, главный конструктор МКП, и Марк Валерьянович Тяпкин, главный конструктор Эльбрус 1-К-2, стали вполне заслуженно докторами наук без защиты. У них просто не было времени заниматься оформлением диссертаций! И это были не единичные случаи в ИТМиВТ.
Итак, уже с начала 1979 года группа из трех человек во главе с Н.Е. Балакиревым приступила к переносу ОС ДИСПАК на комплекс Эльбрус с процессором СВС. О прямом переносе речи не могло быть, так как периферийные устройства и её подключение в корне отличалось от БЭСМ-6. Кроме того набор прерываний, структура памяти также были отличны от БЭСМ-6, не говоря уже о пульте, с которого велась отладка ОС. Естественно, набор команд для режима операционной системы в корне отличался от БЭСМ-6. Но самое главное состояло в том, что аппаратура не была готова ни к отладке, ни к эксплуатации. То есть, требовалось отлаживать не только ОС, но и аппаратуру, которая была в очень «сыром» состоянии. Еще один, весьма существенный момент, который заключался в том, что вся периферия, процессор ввода вывода (ПВВ) (главный конструктор Леонид Евгеньевич Пшеничников), синхронизатор, память были в единственном экземпляре, и потому для отладки приходилось распределять время между разработчиками «родного» Эльбруса и разработчиками линии БЭСМ-6. Распределением времени занимался Арнольд Леонидович Плоткин и для разработчиков «пасынков» Эльбрус-1 он отводил самое «лучшее» время: ночь, раннее утро, часы в выходные и праздничные дни и по принципу: то пусто, то густо. Кроме этого в аппаратуру вносились постоянные доработки, либо поступала новая техника, которой тоже приходилось выделять время для отладки. Вот в такой обстановке приходилось отлаживать будущий вычислительный комплекс Эльбрус 1-К-2.
Память была многосекционной, а номера секций, подключенные к работающей конфигурации, позиционно высвечивались в регистре физической конфигурации устройств центральной части вычислительной системы (секции памяти, центральные процессоры и процессоры ввода-вывода). Те центральные устройства, которые не использовались системой, блокировались через маски конфигурации устанавливаемой командами ОС программно. В основе организации памяти лежала страничная организация, а адресация бала рассчитана на адресацию 80 разрядных слов, в которых информационная часть составляла 64 разряда (для СВС 48 разрядов). Остальные 16 разрядов были служебными, включая тег, код Хэмминга для исправления одиночной ошибки и контрольные разряды. Введение тега было интересной идеей, но, к сожалению, никак не использовалось в СВС, за исключением двух специальных тегов, указывающих на принадлежность ячеек к СВС для команд и данных. Безусловно, новым был код Хэмминга, ОС могла получать информацию об адресах исправляемых ячеек памяти, и в этом случае необходимо было обеспечить сбор статистики в ОС с возможностью информирования о необходимости замены или ремонта секции памяти. Для замены и ремонта памяти без остановки работы ОС необходимо было освободить память с переносом нужной информации в другие секции памяти и установить маску непригодной к эксплуатации секции. После таких манипуляций можно было физически отключать память. Всё это способствовало живучести системы и даже позволяло включать несколько конфигураций, но для программной отладки требовался ПВВ, который был в единственном экземпляре. В последующем уже во ВНИИЭФ эти возможности использовались при отладке и ремонте оперативной памяти. Так что параллельно с основной родной командой Эльбруса команде с СВС можно было только тестировать программы проверки СВС и памяти или работу самого процессора.
Несколько слов о нумерации разрядов памяти. Их было три варианта: для родного центрального процессора Эльбруса, для ПВВ и для процессора СВС. При этом нумерация разрядов была с точностью до наоборот для родного Эльбруса и ПВВ, а для СВС надо было учитывать еще 16 разрядный недобор (использовались только 48 информационных разрядов), поэтому при отладке программ часто возникали недоразумения. Разработчики программного обеспечения СВС называли номер разряда в их нумерации, а аппаратчики, обслуживающие память, искали ошибку совсем в другом месте. То же самое наблюдалось и для ПВВ. Не обходила эта ситуация стороной и родных разработчиков Эльбрус-1.
Для СВС недостатком являлась «скромная» буферизация памяти: существовали те же 8 регистров считывания, 8 регистров записи и 8 регистров команд, в то же время как у основного ЦП уже появился КЭШ. В процессе отладки трижды менялась конструкция и основа памяти, которая технологически была абсолютно разной. Особенно интересным был ферритовый вариант памяти, который поражал изяществом исполнения и той потенциальной трудоемкостью изготовления, которое могли доверить только женским рукам. Окончательным вариантом памяти стала интегральная память, но, так или иначе, все эти поколения памяти приходилось отлаживать и писать на них тесты. Это всё показывало, что разработки велись в разных направлениях, и шел поиск оптимального решения в оснащении ВС Эльбрус.
Процессор ввода-вывода и концепция работы с периферией оказались самым слабым звеном во всем комплексе Эльбруса. Это мы понимали и тогда, исходя из опыта эксплуатации ОС ДИСПАК на БЭСМ-6. Центральная часть – наиболее консервативная часть системы, а вот периферия видоизменяется, а в связи с появлением новых устройств расширяет свою номенклатуру множество раз при неизменном процессоре, да и памяти. Разработчику компьютера надо всегда помнить, что самое мягкое железо в твердом железе (soft ware in hard ware) это периферия. При появлении нового устройства или интерфейса с новым устройством изменяется или пишется новый драйвер, что никак не отражается на общей программной компоненте системы. Известно, что в процессе эксплуатации Эльбрус-2 на специальных объектах, периферийная часть и ПВВ были полностью заменены современным оборудованием, что подтверждает те давние наши выводы. И еще одна существенная ошибка, это попытка всю надежность обеспечить аппаратным путем. Всем понятно, что отлаженный программный код, если аппаратура гарантированно исправна, сломаться не может, а вот контролирующая часть, так же как и её основная часть, могут выйти из строя – и то и другое как то надо проверять. Похожий вывод следует отнести и к ОС, она не должна быть слишком «умной» и громоздкой. Здесь должен существовать разумный компромисс на основе показателей отъема производительности от задач или приложений на нужды выполнения функций ОС. Если время работы ОС и её «безграмотное» функционирование съедает близкое к 50% процессорного времени, особенно для систем коллективного пользования (серверов), то следует переписывать такие системы.
При отладке запоминающих устройств МБ, МД, МЛ мы широко использовали так называемые контрольные суммы зон длиной в 1024 шести байтных слова, которые по информационному содержанию и объему соответствовали странице памяти в ОП (1024 слова), но имели, кроме того, и служебную информацию, которая и содержала эти суммы. При отладке мы полностью ориентировались на программный контроль и часто просто игнорировали аппаратный контроль, доверяясь собственному программному контролю. Еще один огорчительный момент, который нас просто шокировал. Для того чтобы произвести какой либо обмен, необходимо было оформить 8-ми словную заявку (80 байт) и прописать все необходимые признаки и поля. И когда вопрос касался обмена с терминалом, то на 1 байт обмена необходимо было оформить 8-ми словную заявку. Безусловно, такой обмен был сильно накладной процедурой. В связи с этим тупиковая идея подключить видеотоны венгерского производства вместо терминальной станции ЕС7920 для реализации терминальной сети потерпела фиаско, именно, по причине невозможности обслуживать каждый бит 8-ми словной заявкой. Дополнительные перепайки ПВВ с целью нивелировать этот недостаток ни к чему не привели. И то, что главным тормозом при отладке был ПВВ, который периодически ломался, перепаивался, проходил профилактику, ни для кого из людей, отлаживающих программы, не был секретом.
Еще одно новшество, которое нами практически не было использовано, но афишировалось Борисом Арташесовичем Бабаяном (главный идеолог Эльбруса) – это был рестарт. При любом серьезном сбое фактически автоматически заново запускалась ОС и, естественно, от имени и по инициативе процессора ввода-вывода. Приходилось наблюдать моменты на Эльбрус-1, когда благодаря рестарту, работая на ненадежной аппаратуре, мой однокашник Салават Гилязов (разработчик тестов Эльбрус-1) не мог редактировать строки своей программы, пока не устранялась аппаратная «ляпа».
К той же серии просчетов следует отнести и процессор передачи данных (ППД) (руководитель проекта Валерий Иванович Перекатов). Данный процессор в отличие от ПВВ имел команды для программирования драйверов. На ППД нашей командой, работающей на СВС параллельно с командой Перекатова, было создано математическое обеспечение для обслуживания видеотонов на макроязыке БЕМШ [3]. И система у нас заработала, но, к сожалению, в дальнейшем нам прекратили выделять время и мы не смогли продемонстрировать наш успех широкой публике. Но здесь хотелось бы сказать не об этом. Дело в том, что ППД, обладая большим «интеллектом» по отношению к ПВВ, в общую конфигурацию мог входить только через ПВВ. То есть для ПВВ это было некоторое периферийное устройство, что явно было недоразумением.
Периферия отлаживалась так же тяжело, как и ПВВ, а больше всего тормозил аппаратный контроль устройств. Здесь нам удавалось, пользуясь программным контролем, работать на неисправной аппаратуре. Были случаи, когда «залипал» один разряд в байте. Имея дополнительный контрольный разряд и контрольную сумму, мы фактически восстанавливали информации при неработающей аппаратуре. Другой сценарий, когда приходилось осваивать работу осциллографа и физический уровень интерфейса для того, чтобы доказать, что ошибка аппаратная и она не в ПВВ и не в нашем процессоре СВС. Барабаны просуществовали не долго, хотя они нами были отлажены в первую очередь. Больным вопросом была терминальная сеть, которая была представлена весьма громоздкими устройствами ЕС7920. На БЭСМ-6 хорошо зарекомендовала себя терминальная сеть из видеотонов, и подавляющее число программистов оформляло и отлаживало свои программы через терминал. Разницы с современным способом подготовки и отладки программ практически не было. Единственным неудобством было ожидание завершения запущенной программы и невозможность перезапуска системы, если происходил технический сбой. Это было похоже на «облачные» вычисления, потому что данные тоже хранились в общем архиве, но «облако» находилось в том же здании, где работал программист.
Лентопротяжки и ленты, как и терминалы, вернее терминальные стации, тоже поставлялись по линии ЕС ЭВМ, и хотя они были более изящными, но качество было не на высоком уровне. И если лента зацикливалась, то это приводило к порче информации и, самое страшное, к невозможности считывания информации с данного участка. На БЭСМ-6 эту проблему можно было решать ручным способом: двигая ленту вдоль головки, мы «нащупывали» состояние, когда лента считывалась.
Наступил момент сдачи вычислительной системы Эльбрус 1-К-2 вместе с ОС ДИСПАК [3] Государственной комиссии. Комплекс сдавался в течение суток на пакете задач, наиболее характерных для научных вычислительных комплексов. Но наиболее трудным делом оказалось подготовка документации согласно ГОСТа и утверждение документов военпредами. Вспоминается лето 1980 года и конфликт, возникший между приемкой и разработчиками, который обсуждался в конференц-зале института. Генерал-майор Михаил Иванович Ненашев, руководитель 5 управления Главного управления вооружения войск ПВО страны, которое осуществляло функции заказчика разработки средств противоракетной обороны (ПРО), системы предупреждения о ракетном нападении (СПРН), систем контроля космического пространства (СККП) и противокосмической обороны (ПКО), разразился разгромной речью по поводу срыва сроков, и в нелицеприятных выражениях обрушил свой гнев, прежде всего, на директора института Всеволода Сергеевича Бурцева. На что тот спокойно ответил примерно так: «Если вы считаете, что разбираетесь лучше моих разработчиков и инженеров, то сажайте своих военпредов и берите руководство на себя. Если вы готовы и гарантируете решить задачу в указанные вами сроки, то и я готов уступить вам своё место!» После долгих перепалок договорились никого не отправлять в отпуска, в том числе и военпредов, пока вычислительный комплекс не будет сдан. В дополнение к этому эпизоду, говорящему о сложности получения результата, особенно в наукоемких и технологичных отраслях, хотелось вспомнить еще один случай. Помню одно из совещаний, которое как обычно проходило вечером, после 18.00.
Всеволод Сергеевич Бурцев, заслушав и оценив состояние дел, поставил перед каждым задачу и определил срок проверки им результатов выполнения поставленных задач уже утром следующего дня. И ни одного возмущения и ворчания даже за пределами кабинета не прозвучало, хотя часы показывали 21.00. Трудовое законодательство явно нарушалось, но дело шло.
Испытания Эльбрус 1-К-2, который это имя получил перед самыми испытаниями при оформлении технической документации, с задачами в ОС ДИСПАК успешно были завершены в первый же суточный прогон. Хочется заметить, что кроме этого были названия и комплектации, такие как Эльбрус 1-К-4, Эльбрус 1-К-6, как мы видим четные, которые предполагали подключение дополнительных процессоров СВС. По завершению испытаний не было никаких банкетов или празднований, так как необходим был отдых, и, в то же время, наша команда уже думала о новом проекте, который вылился в комплекс Эльбрус 1-КБ.
Отдельные строки, уже касающиеся внедрения процессоров, и, прежде всего, при реализации параллельных вычисленный, впервые апробированных в рамках многопроцессорного комплекса Эльбрус с процессорами СВС. Эти работы велись в Арзамасе-16, и там команде разработчиков ДИСПАК пришлось доказывать право введения своей системы в промышленную эксплуатацию на вычислительном центре в конкуренции с операционной системой Феликса Рудольфовича Цанга из Новосибирского филиала ИТМиВТ. Прежде всего, отдавая должное амбициям этой молодой и дружной команды, следует сказать, что к работам они приступили раньше, чем наша. Кроме этого, они делали специальный язык для написания ОС, похожий на автокод Эльбрус [5] и обладающий некоторыми чертами языка Си. Свою ОС они писали, опираясь на опыт UNIX и, конечно, хорошо были знакомы с нашей системой. Здесь соревнование происходило по следующей схеме: они выходят в одну ночь, мы в другую. Безусловно, опыт отладки конкретного оборудования в ИТМиВТ и наличие работающей системы на БЭСМ-6 были нашими преимуществами. Что касается языка. Хотя мы работали на Ассемблере, у нас был Макроязык [4], используя который нам удавалось иметь единый текст ОС для БЭСМ-6 и Эльбрус-1-К-2. Кроме того, мы уже создавали макроопределения, которые повышали уровень нашего языка. Команда Цанга, обладая меньшим опытом, очень сильно тормозила из-за необходимости вставок на уровне системы команд. Но в то же время у команды Ф.Р. Цанга был очень сильный административный рычаг, это Г.И. Марчук, который стал президентом Академии наук СССР. Но, несмотря на все эти нюансы, безусловно, команда разработчиков ДИСПАК была сильней, и требование практики привело к решению эксплуатировать нашу систему. Безусловно, в реализации варианта ОС ДИСПАК для Арзамас-16 ведущую роль сыграл Ю.Г. Бартеньев и его группа.
Особо следует отметить реализацию параллельных вычислений, которые были проведены в ОС ДИСПАК на комплексе из двух и трех процессоров СВС. Отчеты об этой деятельности, к сожалению, имелись только в закрытом виде, и думается, не приоткрыты и к настоящему времени. Но можно привести по памяти следующие цифры. На системе из двух процессоров ускорение было до 1.8, а для трехпроцессорного варианта этот показатель снизился до 2.3, максимум 2.4. Безусловно, можно было бы подобрать задачи, которые могли улучшить эти характеристики, потому как мы понимали, что главная проблема параллельных вычислений это конфликт по памяти на семафорах. Но на комплексе решались те задачи, которые нужны были стране. И здесь положение не спасали ни кэш-память, ни другие ухищрения. Опыт, полученный на этом комплексе, как сообщали авторитетные люди, коснулся и фирмы Cray, которая обращалась к программистам, использовавшим параллельные вычисления на комплексе Эльбрус 1-К-2. К сожалению, нет документальных подтверждений этого факта, но то, что это могло быть, сомнений не вызывает. Не принижая достижений разработчиков США, которым создаются несравнимые с нашими комфортные условия, и уж особенно по зарплатам, хочется отметить, что и в этом случае не деньги или административный ресурс привели к успеху, а сама работа и коллектив, который формируется по случайным законам. И, иногда всё же выпадает туз.
Несколько слов о главных показателях работы ОС. Надежность и производительность системы.
При работе ОС ДИСПАК при отсутствии загрузки процессора задачами на пульте машины появлялась «вывеска»: ЖДУ. Это означало, что процессор простаивает и ждет задач. В операционной системе собиралась статистика, которая показывала, какое время процессора потрачено на задачи пользователя, а какое на нужды ОС. Так вот, этот показатель при наличии не иссякающего пакета задач был на уровне 95-98% и более. Такой показатель был обычным явлением для большинства вычислительных центров, где считались задачи на БЭСМ-6, включая ВЦ АН СССР, СО АН СССР, ИПМ, и многие другие вычислительные центры. При огромном потоке задач, до 1000 в сутки и выше, включая терминальную обработку, система была устойчива к сбоям аппаратуры, и лишь неисправимая ошибка аппаратуры могла привести к остановке ОС. Система работала сутками и нередко её перезагрузка (перевызов) была связана с профилактическими работами. Хотелось продемонстрировать два примера, характеризующие надежность. После принятия решения перехода на ОС ДИСПАК в Арзамасе-16 ОС была запущена на прогон и работала без перезагрузки в течение целого месяца.
При встрече в аэропорту главный инженер ВЦ Арзамас-16 А.И. Лукин обратился с весьма курьезным вопросом к разработчику: «А когда вы остановите машину?»
На что был получен ответ: «Машина ваша, вы и решайте!»
«А все-таки, как её сбросить?» – не решаясь остановить хорошо устоявшийся процесс счета задач и взвалить ответственность на себя, прошептал главный за весь парк вычислительных машин ВЦ.
«А кнопка сброса знаете, где находится?»
«Знаю!»
«Так и нажмите!»
«А можно?»
«Конечно!»
Понятно, что велико было желание продолжить эксперимент по проверке надежности всей системы, но, с другой стороны по регламенту требовалась профилактика, а выход из строя того или иного модуля лежал в зоне ответственности главного инженера.
Другой поучительный случай, который произошел при отладке ОС в ночное время. Выйдя на отладку системы, разработчик ОС зафиксировал странную картину самопроизвольного отключения ленты. Включив её повторно, он с удивлением опять наблюдал ситуацию, в которой ОС сообщала о повторном отключении ленты. Постоянный ночной образ жизни системного программиста приучил его ничему не удивляться. Он, повторно включив ленту, на этот раз спрятался за шкафами лентопротяжек. «Привидение» не заставило себя ждать. Из-за дальней стойки машины вдруг появилась миловидная девушка, которая, на цыпочках подойдя к лентопротяжке, быстро нажала кнопку «ВЫКЛ» и уже готова была покинуть место своего вмешательства в чужие комплексы, как тут же её руку сжала как наручником рука не поверившего в привидение программиста. Привидение вскрикнуло в ужасе: «Ой!» и опустило глаза! Системный программист, крепко держа её за руку, повел «жертву» в сторону пульта машины, по дороге нажимая на кнопки «ВЫКЛ» сначала на всех работающих лентах, затем на дисках, а в конце подошел к одной из стоек оперативной памяти и её тоже «посмел» отключить. Девушка была в ужасе от происходящего. Работающий операторский CONSUL непрерывно стучал клавишами, и на бумаге, закрученной в рулон, он видимо что-то сообщал от имени не сломленной такими манипуляциями работающей системы. Когда длительный процесс печатанья закончился, системный программист попросил прочитать «жертву» напечатанное. Чтиво, вероятно, было скучнейшим романом в её непродолжительном знакомстве с литературой, вся суть напечатанного сводилось к тому, что выключено такое-то устройство, выключено другое устройство и так далее до белого не тронутого поля бумаги. В глазах девушки были смятение и недоумение. Системный программист вновь повел её уже знакомой дорогой вдоль шкафов и начал включать устройства, выключенные до этого. Застучал CONSUL, который и после возвращения к пульту машины продолжал что-то выпечатывать. Повторившаяся процедура чтения вновь не смогла увлечь её, так как в противовес предыдущей распечатке в ней теперь сообщалось, что такое-то устройство включено, такое-то устройство включено… и так далее, и так далее до нетронутой белизны бумаги. «Вы что-то хотели мне сказать и таким образом шлете мне сообщения?» – грозно вопрошал системный программист. «Нет, нет … Что вы! Я… я надеялась сломать и остановить вашу систему, но у меня это не получилось!» – чуть не плача произнесла девушка. «Но я же вам показал, что систему сломать невозможно!!!» – опять грозно выпалил программист. «Я… я не знала, что здесь работаете вы! Мы работаем на другой машине ЕС-1060 и соревнуемся с девчонками с этой машины. Но почему-то за хорошие показатели премию дают им, а нам уже давно не давали...» – с грустью изрекла «жертва». А затем добавила: «А у нас это приводит к останову машины!» Последние слова смягчили программиста, и он изрек: «Потратьте время на что-нибудь полезное!»
Эти истории вполне подлинные. И не вызывает никакого сомнения, особенно в настоящее время, что если бы потребовалось сравнивать IBM 360, да и даже IBM 370 с нашей машиной Эльбрус-1-2-К, то выигрыш по всем показателям был бы на нашей стороне. Прототипы этих машин под названием ЕС ЭВМ, совпадали и по элементной базе и по программному обеспечению с машинами IBM. И их характеристики хорошо были известны.
Подводя итог, можно сказать, что разработка и внедрение СВС в вычислительную систему Эльбрус обеспечила наукоемкие вычислительные центры следующим поколением Советских вычислительных машин Эльбрус 1-К-2 и сыграла положительную роль в отработке технологии Эльбрус в части:
- использования интегральных схем ИС-100;
- использование интегральной памяти;
- отработка новых однопроходных комбинационных схем сумматора с дополнительным сумматором умножения и деления для наиболее критичных по времени исполнения арифметических операций;
- отработка технологии водяного охлаждения электронного оборудования, пожалуй, впервые в СССР;
- отработки модульности включения и замены «не родных» подсистем и комплексное использование различных по уровню поколений процессоров;
- возможность физического сосуществования различных вычислительных подсистем в рамках единого комплекса;
- отработка многопроцессорного варианта ОС для многопроцессорной системы;
- отработка технологии параллельных вычислений в многопроцессорной конфигурации вычислительной системы;
- комплексирование в одной системе множества разнообразных по интерфейсу, технологий, и идеологий подсистем для выполнения единой задачи;
- отработка надежности и живучести системы всей системы (аппаратуры и ОС) на уровне лучших показателей в мире (около 1 месяца без сбойной работы);
- «выжимание» максимальной производительности ОС для предоставления процессорного времени для задач пользователя;
- формирование нового поколения и школы разработчиков аппаратного и программного обеспечения.
Может быть, именно, поэтому комплексы Эльбрус 1-К-2 появились в таких известных вычислительных центрах как Арзамас-16, в ОИЯИ им. И.В. Курчатова, в ВЦ для системы управления противоракетном комплексом и т.д. И как бы его ни оценивали сегодняшние «доброжелатели», но это был ещё один шаг не только для одного института, но и в развитии всей Советской вычислительной техники.
Литература
- Бурцев В.С. Принципы построения многопроцессорных вычислительных комплексов «Эльбрус». М.: ИТМ и ВТ им. С.А. Лебедева АН СССР, 1977. 53 с.
- Ким А.К., Перекатов В.И., Ермаков С.Г. Микропроцессоры и вычислительные комплексы «Эльбрус». СПб.: Питер, 2013. 272 с.
- Балакирев Н.Е., Зельдинова С.А., Тюрин В.Ф. Операционная система ДИСПАК для ЭВМ “Эльбрус-1-Б12”. М.: ИТМ и ВТ им. С.А. Лебедева АН СССР, 1982. 20 с.
- Михелев В.М., Штаркман В.С. Макрокод (описание языка). Препринт № 24 за 1972 г. М.: Ордена Ленина Институт прикладной математики Академии наук СССР 50 с.
- Пентковский В.М. Автокод Эльбрус. Эль-76. Принципы построения языка и руководство к использованию / под редакцией А.П. Ершова. М.: Наука, 1982. 352 с.
Об авторе: к.т.н., профессор
Московский авиационный институт (национальный исследовательский университет)
Материалы международной конференции Sorucom 2017
Помещена в музей с разрешения автора
3 декабря 2017