ENIAC: robot-matematyk i jego mechaniczny mózg

Istnieją dwie epoki w historii komputerów: przed ENIAC i po ENIAC. Pierwszy praktyczny, w pełni elektroniczny komputer został zaprezentowany 14 lutego 1946 roku na Uniwersytecie w Pensylwanii (USA). Za jego sukces odpowiadają przede wszystkim J. Presper Eckert i John W. Mauchly [Randall 2006].

capacitor

Okrzyknięty przez The New York Times „niesamowitą maszyną, która po raz pierwszy stosuje prędkości elektroniczne do zadań matematycznych zbyt trudnych i kłopotliwych do rozwiązania”, ENIAC (Electonic Numerical Integrator and Computor) był rewolucyjnym urządzeniem w swoich czasach [ENIAC at Penn Engineering 2019].

ENIAC był pierwszym elektronicznym komputerem cyfrowym. W 1946 roku Tadeusz Unkiewicz, popularyzator nauki, założyciel, redaktor naczelny i wydawca miesięcznika „Problemy” był zdumiony, że w elektronowej maszynie liczącej ENIAC „nie ma ani jednej części ruchomej”. Wtedy też zastosował on sformułowanie – „robot-matematyk, który pracuje z szybkością światła i fali radiowej”. Kilkadziesiąt lat temu, pomimo wagi 30 ton, ENIAC był „szczytem precyzji i subtelności” [Unkiewicz 1946, s. 50].

Anegdota: „Wiedzieliśmy, że myszy zjedzą izolację z przewodów, więc dostaliśmy próbki wszystkich dostępnych przewodów i umieściliśmy je w klatce z grupą myszy, aby zobaczyć, której izolacji nie uszkodzą. Użyliśmy tylko przewodów, które przeszły ‘test myszy’.” [Randall 2006].

ENIAC to maszyna komputerowa ogólnego przeznaczenia, która została opracowana przez Moore School of Electrical Engineering (University of Pennsylwania, Philadelphia) na potrzeby armii USA (Army Ordnance Department, United States Army). Zadaniem maszyny było przede wszystkim wykonywanie obliczeń związanych z balistyką, tzn. wyliczanie tabel strzelniczych (firing tables) dla sił zbrojnych. Tabele strzelnicze (liczbowe) są podstawą dla przeliczeń dokonywanych w trakcie sterowania działem strzelniczym – stanowią zestaw współrzędnych toru lotu pocisku. Według Bogdana Miś [1996] sporządzenie typowej tabeli balistycznej wymagało 1000-2000 godzin obliczeniowych, czyli od 6 do 12 tygodni pracy, przy czym potrzeby sił zbrojnych sięgały wtedy dziesiątek tysięcy takich tablic – był to okres II Wojny Światowej. Obliczenia wymagane do przygotowania tablic były tak skomplikowane i czasochłonne, że przewyższały możliwości ówczesnych maszyn obliczeniowych, zwłaszcza w przypadku broni będącej w fazie rozwoju. To z tego powodu armia amerykańska (U.S. War Department) zdecydowała się sfinansować projekt ENIAC [Hartree 1946, Polachek 1997]. Przy czym konstrukcja ENIAC umożliwiała rozwiązywanie różnych problemów numerycznych, trudnych do rozwiązania przy pomocy bardziej konwencjonalnych (ówcześnie) narzędzi obliczeniowych.

Szybki jak ENIAC

W maszynie ENIAC podstawowym elementem liczącym była lampa elektronowa. Dzięki temu ENIAC pracował znacznie szybciej od maszyn liczących zbudowanych w oparciu o przekaźniki elektromechaniczne, które wykonywały zaledwie kilka operacji na sekundę [Marczyński 1954].

device

Aby łatwo uzyskać wystarczającą dokładność obliczeń, ENIAC zaprojektowano jako urządzenie cyfrowe. Sprzęt zwykle obsługiwał podpisane 10-cyfrowe liczby wyrażone w systemie dziesiętnym. Został jednak tak skonstruowany, że możliwe były operacje z 20 cyframi. Oprócz balistyki, obszar zastosowania ENIAC obejmował prognozowanie pogody, obliczanie energii atomowej, badanie promieniowania kosmicznego, badania liczb losowych, projektowanie tunelów aerodynamicznych i inne zastosowania naukowe [ENIAC at Penn Engineering 2019]. ENIAC mógł dodać dwie 10-cyfrowe liczby w ciągu 0,0002 sekundy – to 50 000 razy szybciej niż człowiek, 20 000 razy szybciej niż kalkulator i 1500 razy szybciej niż Mark I (IBM Automatic Sequence Controlled Calculator) [Randall 2006]. ENIAC sprawił, że obliczenia balistyczne, które wcześniej wykonywano około 12 godzin na kalkulatorze ręcznym zajmowały zaledwie 30 sekund [ENIAC at Penn Engineering 2019]. Same obliczenia były zatem wykonywane bardzo szybko, jednak główną trudnością było to, że ENIAC nie umożliwiał przechowywania programów. Rozwiązanie każdego nowego problemu wymagało ponownej, żmudnej konfiguracji maszyny, co zajmowało do dwóch dni. Program był ustawiany przez ręczne podłączenie kabli i odpowiednią konfigurację przełączników związanych z różnymi komponentami komputera [Randall 2006].

Wszystkie instrukcje potrzebne do przeprowadzenia obliczeń były wprowadzane do ENIAC przed rozpoczęciem obliczeń – „Całość danych i instrukcji potrzebnych maszynie w dowolnym momencie obliczeń musiała być wprowadzona na plansze funkcyjne przed rozpoczęciem pracy. Zmiana programu zajmowała dużo czasu z uwagi na konieczność przełączenia mnóstwa styków, komutatorów i połączeń. Błędy popełnione przy nastawianiu maszyny powodowały sporo opóźnień i zacięć. Dodajmy, że dodatkowych kłopotów przysparzała ówczesna elektronika: średni czas bezawaryjnej pracy maszyny wynosił około pół godziny” [Miś 1996].

Monstrum ENIAC

ENIAC miał budową modułową i imponował rozmiarami. Maszyna składała się z czterdziestu dwóch czarnych szaf z blachy stalowej o łącznej wadze około 30 ton, które zajmowały powierzchnię 72m2 [Sienkiewicz 2006]. Każda „szafa” miała 3 m wysokości, 60 cm szerokości i 30 cm głębokości. Moduł liczący ENIAC składał się z 40 paneli, które łącznie zawierały około 18 000 lamp próżniowych, 1500 przekaźników i 50 000 oporników. Obwody ENIAC obejmowały 500 000 lutowanych połączeń, 70 000 rezystorów i 10 000 kondensatorów. Panele ENIAC były pogrupowane w 30 jednostek, przy czym 20 z nich wykonywało głównie operacje arytmetyczne. ENIAC miał również własne dedykowane linie energetyczne i wykorzystywał 150 kilowatów energii elektrycznej [ENIAC at Penn Engineering 2019]. ENIAC wykonywał operacje dodawania, odejmowania, mnożenia, dzielenia, podnoszenia do kwadratu i automatycznego wyszukiwania wartości funkcji [Burks 1947]. Ponadto ENIAC mógłby wykonać trójwymiarowe równania różniczkowe drugiego rzędu [Randall 2006].

microprocessor

Jak działał ENIAC?

Liczby były wprowadzane do ENIAC za pomocą jednostki nazywanej stałym nadajnikiem (constant transmitter). Stały nadajnik działał w połączeniu z czytnikiem kart IBM. Czytnik skanował standardowe karty dziurkowane (które zawierały do 80 cyfr i 16 znaków), co powodowało, że dane były przechowywane w przekaźnikach znajdujących się w stałym nadajniku. Stały nadajnik udostępniał te liczby w postaci sygnałów elektrycznych. Wyniki obliczeń mogły być dziurkowane na kartach przez jednostkę drukującą (ENIAC’s printer unit) działającą w połączeniu z przebijakiem kart IBM. Tabele mogły być automatycznie drukowane z kart za pomocą tabulatora IBM. Pamięć programowania ENIAC (pamięć dla instrukcji związanych z konkretnym obliczeniem) miała głównie charakter lokalny, tj. instrukcje były podawane do każdej jednostki. Zestawy przełączników zwane przełącznikami programów znajdywały się na przednich panelach różnych jednostek. Przed rozpoczęciem obliczeń przełączniki te były ustawiane tak, aby określały, które konkretne operacje w repertuarze jednostki miały być wykonywane [Goldstine i Goldstine 1982].

Dziedzictwo ENIAC

Oryginalna żarówka Edisona nie przypomina nowoczesnej żarówki. Pełni tę samą funkcję, lecz jest zbudowana z zupełnie innych komponentów. Podobnie jest z komputerami. To, co przetrwało, to koncepcje, a nie sprzęt [Randall 2006]. W miarę rozwoju technologii komputerowej ENIAC stał się przestarzały. Gdy użyteczność ENIAC spadła, w październiku 1955 roku o godz. 23:45 został on wycofany z eksploatacji, a rząd USA postanowił przeznaczyć go na złom [Richey 2019]. Po protestach użytkowników fragmenty maszyny udało się ocalić. Cztery z oryginalnych 40 paneli ENIAC, stanowią około jednej dziesiątej pierwotnego rozmiaru ENIAC i znajdują się obecnie w School of Engineering and Applied Science [ENIAC at Penn Engineering 2019].

Relikwie to wszystko, co pozostało dziś z tej potężnej maszyny. Stanowią one stałą ekspozycję w tym samym pomieszczeniu w Moore School of Electrical Engineering. Duży, czarny, przypominający szafę panel z cyfrowym wyświetlaczem, który wygląda jak kilka kas fiskalnych ułożonych jedna na drugiej dokumentuje historię ENIAC. Metalowa skrzynka – zwana akumulatorem – z kilkoma kolumnami gałek i przełączników leży po jednej stronie szafki. Na pobliskim stole znajduje się kilka „korytek” z rzędami szklanych rur próżniowych. U naukowców, którzy zbudowali ENIAC skromna prezentacja wywołuje żywe wspomnienia…

Źródła

  • Burks, A.W. (1947). Electronic computing circuits of the ENIAC. Proceedings of the IRE, 35(8), 756-767. https://doi.org/10.1109/JRPROC.1947.234265
  • ENIAC at Penn Engineering (2019). Celebrating Penn Engineering History: ENIAC. University of Pennsylwania. https://www.seas.upenn.edu/about/history-heritage/eniac/
  • Goldstine, H.H., Goldstine, A. (1982). The Electronic Numerical Integrator and Computer (ENIAC). In: Randell B. (eds) The Origins of Digital Computers. Texts and Monographs in Computer Science. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-61812-3_29
  • Hartree, D. R. (1946). The ENIAC, an electronic computing machine. Nature, 158, 500-506. https://doi.org/10.1038/158500a0
  • Marczyński, R. (1954). Elektronowe automatyczne maszyny cyfrowe. Zastosowania Matematyki, 3, 263-296. http://hint.org.pl/hid=AA061
  • Miś, B. (1996). I stał się ENIAC. Wiedza i Życie, 4, 60-63.
  • Polachek, H. (1997). Before the ENIAC [weapons firing table calculations]. IEEE Annals of the History of Computing, 19(2), 25-30. https://doi.org/10.1109/85.586069
  • Randall, A. (2006). Q&A: A lost interview with ENIAC co-inventor J. Presper Eckert. Computerworld. IDG Communications, Inc. http://bit.ly/2OkIOHN
  • Richey, K.W. (2019). The ENIAC. Virginia Tech. http://ei.cs.vt.edu/%7Ehistory/ENIAC.Richey.HTML
  • Sankaran, N. (1995). Looking Back At ENIAC: Commemorating A Half-Century Of Computers In The Reviewing System. The Scientist, 9(16), 3. http://bit.ly/2GCAPzQ
  • Sienkiewicz, P. (2006). Od Eniaca do Internetu i społeczeństwa wiedzy. Zeszyty Naukowe Warszawskiej Wyższej Szkoły Informatyki, 1, 9-23.
  • Unkiewicz, T. (1946). Żyjemy w świecie fantastyczniejszym niż świat starych bajek. Problemy: Miesięcznik Poświęcony Zagadnieniom Wiedzy i Życia, 6, 49-51. http://hint.org.pl/hid=AA057

5 Comments

  1. Pingback: ENIAC: pierwszy programowalny komputer elektroniczny – Karol Król

  2. Pingback: Memorandum Memex – Digital Heritage

  3. Pingback: Od teletypu do Modelu M: rzecz o klawiaturze komputerowej – Digital Heritage

  4. Pingback: Technological Museum – Digital Heritage

  5. Pingback: Lata 50. XX wieku: ZAM-2, dalekopis i pole świetlne monitora – Digital Heritage

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *