Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!
Electronic Numerical Integrator and Computer (ENIAC) был одним из первых в мире компьютеров общего назначения. В этом году ENIAC исполняется 75 лет. Его создания считается одной из важнейшей вех развития компьютерной техники, в частности, потому, что этот компьютер был Тьюринг-полным. То есть теоретически эта система могла решить любую вычислительную задачу.
В ходе создания ENIAC ученые и инженеры предложили множество новых идей, которые в дальнейшем стали базой для построения электронно-вычислительных машин, уже гораздо более совершенных, чем ENIAC.
Кому и зачем понадобился такой компьютер
Вопрос довольно простой, с ответом, который лежит на поверхности — конечно же, военным. Он потребовался, в частности, для рассчета траекторий полета баллистических ракет и других снарядов. Просчитать вручную все это было можно, но процесс занимал крайне много времени. В некоторых случаях военным требовалась информация по нескольким тысячам траекторий полета снаряда, причем на расчет каждой из них требовалось по 1000 и более операций. Соответственно, у одного человека на выполнение всего этого комплекса вычислительных задач уходило около 2 неделю, а иногда — и месяцев.
После проведения расчетов военные составляли специальные таблицы, которые помогали метко стрелять по вражеским целям.
ENIAC создали для ускорения всей этой работы. Разработка системы началась в 1942 году, а в 1945 компьютер уже приступил к работе, избавляя сотрудников-людей от необходимости выполнять рутинную работу на протяжении нескольких недель.
Готовый аппаратный комплекс занимал помещение площадью в 140 м2. Масса устройства составляла 30 тонн, внутри корпусов (а их было 9) содержалось 18 000 электронных ламп и 1500 реле, плюс сотни тысяч других элементов, включая сотни тысяч резисторов, конденсаторов и катушек индуктивности.
Сначала у ENIAC не было памяти, все данные хранились на первокартах. Но в 1953 году инженеры смогли добавить к системе память на 100 слов.
А что насчет мощности?
Несмотря на то, что сейчас характеристики ENIAC выглядят не особо впечатляюще, для своего времени система была просто феноменально быстрой. Компьютер был в состоянии выполнять 357 операций умножения в секунду или 5000 операций сложения за то же время. Кроме того, компьютер позволял решать дифференциальные уравнения второго порядка.
Не обошлось и без проблем. Поскольку в ENIAC содержалось почти 20 000 радиоламп, то одна или две из них выходили из строя каждый день. Соответственно, лампы приходилось заменять, на что требовалось время. В самом начале на поиск неисправной лампы требовалось несколько часов, но через некоторое время команда компьютера смогла ускорить процесс — на него стало уходить не более 15 минут. Инженеры ввели «предиктивное обслуживание» и тщательно мониторили состояние разных модулей.
Компьютер потреблял около 160 кВт, а во время его работы температура в машзале поднималась вплоть до 50 градусов Цельсия. При всем при этом система была крайне сложной. Даже у опытного программиста на ввод новой задачи уходило много времени, поскольку в самом начале для программирования требовались соединительные кабели и переключатели. Программирование машины было физически сложным процессом, на что требовалось несколько дней — ведь сначала нужно было согласовать планирование, а потом уже внедрять.
В 1948 году команда ENIAC приняла решение ввести в память таблицы функций, что ускорило процесс «программирования». Кстати, система была сделана масштабируемой и изменяемой — как раз то, что было нужно.
ENIAC — весьма интересная тема, но у нас есть и другие статьи, оцените — мы рассказываем о:
→ Экспериментируем с шаблонами литералов в TypeScript: как покрыть типами DSL
→ Оценка RISC-ов: когда ожидать серверы на ARM в дата-центрах
→ Selectel File Storage (Beta): места много не бывает
Траектории просчитывать не пришлось
Да, машина, которая была создана практических исключительно для решения одной задачи, просчитывания траекторий, оказалась в прямом смысле не нужной. Просто потому, что подошла к концу Вторая Мировая. Поэтому команде проекта пришлось срочно адаптировать свое детище для решения новых задач, включая сельское хозяйство.
Кроме того, ENIAC выполнял вот такие задачи:
• Расчет конструкции водородной бомбы.
• Прогнозы погоды.
• Исследования космических лучей.
• Изучение случайных чисел.
• Проектирование аэродинамических труб.
Прогнозы погоды, выдаваемые системой, были довольно точными, но приоритет отдавался, конечно, созданию водородной бомбы. Работы по ее созданию проводил Фон Нейман.
К слову, использовался компьютер не так и долго вплоть до 1955 года, когда в мире появились более мощные системы. Тем не менее, за все время существования инженеры внедрили немало новейших и эффективных для того времени решений. ENIAC очень сильно изменился по сравнению с тем, что он собой представлял в начале существования.
Потеря ENIAC и восстановление системы
Когда компьютер перестал быть актуальным, его просто разобрали. Элементы системы разбирали и складывали не самым аккуратным образом. Часть элементов увезли, другие — оставили.
С течением времени элементы ENIAC расходились все дальше друг от друга — их могли просто перескладировать, увезя за десятки километров от предыдущей дислокации. Причина — размеры элементов компьютера.
При этом документация по перевозу системы велась не самым тщательным образом. Когда ученые решили восстановить ENIAC, оказалось, что мало знает где находятся критически важные элементы. Просто потому, что руководство организаций, где складировался ENIAC, было не в курсе, что происходит в подвале. Например, в Форта Силл оказалась четверть компьютера ENIAC.
Но в итоге проблему решили, компьютер смогли свезти в одно место и началась дополнительная работа — восстановление. На эту задачу потратили несколько месяцев, после чего систему решили переместить полностью в Форт Сиил (правда, случилось это уже в 2000-х.
К сожалению, реставрационные работы носили чисто косметический характер, восстановить функции компьютера реставраторы не смогли — слишком много времени и ресурсов потребовалось бы потратить.