Pendahulu Analog & Digital
Hamming membuka sejarah perangkat kerasnya dengan pembedaan: komputasi analog (penggaris geser, penganalisis diferensial) versus komputasi digital (tulang Napier, kalkulator meja). Kedua jalur berkembang secara paralel; jalur digital akhirnya mendominasi.
Napier (1550–1617)
John Napier menemukan logaritma, yang memungkinkan penggaris geser — perangkat analog di mana panjang fisik mewakili nilai logaritmik. Penambahan panjang = perkalian bilangan. Napier juga merancang 'tulang Napier': batang gading untuk membantu perkalian. Digital, jangan disalahkan dengan penggaris geser.
Dari Schickert hingga Babbage
Wilhelm Schickert (1623) merancang mesin untuk empat operasi aritmatika; mesin itu terbakar sebelum selesai. Pascal (1623–1662) membangun mesin penjumlah untuk penilaian pajak. Leibniz menambahkan perkalian & pembagian tetapi mesin-mesin itu tidak andal.
Charles Babbage (1791–1871) merancang mesin perbedaan: mesin untuk mengevaluasi polinomial pada nilai yang berjarak sama melalui penambahan berturut-turut, menghasilkan tabel yang dicetak tanpa kesalahan. Dia tidak pernah menyelesaikannya; sebuah tim ayah-anak Norwegia (Scheutz) membangun versi yang berfungsi. Pada tahun 1992, sebuah tim di Inggris membangun mesin analitik Babbage dari gambarnya — mesin itu bekerja.
Mesin analitik Babbage hampir menyerupai arsitektur von Neumann: sebuah store (memori), sebuah mill (unit aritmatika), & percabangan kondisional. Lady Lovelace menerbitkan program-program pertama untuk itu.
Komputer Relay hingga ENIAC
Era modern komputasi dimulai dengan komputer relay pada awal 1940-an. Hamming melacak evolusi kecepatan:
| Era | Teknologi | Kecepatan | |---|---|---| | Pra-1940 | Kalkulator tangan | 1/20 ops/detik | | ~1940 | Relay (Bell Labs) | 1 op/detik | | 1946 | ENIAC (tabung vakum) | ~5.000 ops/detik | | 1952 | IBM 701 | ~17.000 ops/detik | | ~1993 | Stasiun kerja modern | 10⁹ ops/detik |
George Stibitz di Bell Telephone Laboratories membangun komputer relay dari suku cadang M9 gun director yang sudah dikutuk. Hamming menggunakan salah satunya selama bertahun-tahun. Mesin relay ini tidak cepat — sekitar satu operasi per detik — tetapi mereka andal & dapat diprogram.
ENIAC (1945–1946) awalnya berjalan dengan kabel papan steker, seperti komputer papan steker raksasa. Nick Metropolis & Dick Clippenger kemudian mengubahnya menjadi pemrograman sakelar desimal dari tabel balistik. ENIAC mengkonsumsi kasar 150 kW.
Pemrograman internal hanya menjadi praktis ketika penyimpanan yang memadai ada. Peran Von Neumann adalah sebagai konsultan untuk Mauchly & Eckert; pemrograman internal didiskusikan di antara tim sebelum keterlibatan von Neumann, meskipun laporan-laporannya yang tersebar luas (tetapi tidak pernah diterbitkan secara resmi) menyebarkan konsep-konsepnya.
Orde Besaran dalam Kecepatan
Perkembangan kecepatan dari kalkulator tangan hingga stasiun kerja tahun 1990-an mencakup lebih dari sepuluh orde besaran dalam waktu sekitar 50 tahun.
Di mana Perangkat Keras Tidak Dapat Pergi
Hamming menyajikan tiga batasan fisik yang membatasi seberapa cepat komputer dapat berjalan pada akhirnya. Ini bukan tantangan rekayasa yang dapat diatasi dengan kecerdikan — ini adalah hukum fisika.
Batasan 1: Ukuran Molekuler
Komponen tidak dapat menyusut di bawah dimensi atom. Gerbang transistor selebar 10 atom: terowongan kuantum mendominasi & transistor berhenti beralih dengan andal. Pada tahun 1993 Hamming memperkirakan bahwa turun di bawah jarak ~100.000 atom antara perangkat yang saling berhubungan (kasar 3 pikodetik dari waktu perjalanan cahaya) mewakili batasan fisik yang nyata.
Batasan 2: Kecepatan Cahaya
Sinyal merambat paling banyak pada c = 3×10⁸ m/detik dalam vakum (kurang dalam kawat, kasar 2×10⁸ m/detik). Siklus jam 1 GHz adalah 1 nanodetik; dalam 1 ns, cahaya berjalan 30 cm. Sebuah chip yang harus mengirim sinyal melintasi 15 cm & menerima balasan dalam satu siklus jam beroperasi dekat dengan batas kecepatan cahaya.
Seiring kecepatan jam meningkat, dimensi chip harus menyusut untuk menjaga waktu perjalanan sinyal putaran di bawah satu periode jam.
Batasan 3: Dispersi Panas
Lebih banyak komponen per unit area + peralihan lebih cepat = lebih banyak daya per unit area = lebih banyak panas. Panas harus tersebar atau komponen meleleh. Pada tahun 1993, voltase operasi turun menuju 2-3V untuk mengurangi daya peralihan. Lapisan berlian sebagai konduktor panas sedang diselidiki. Komputasi reversibel (tanpa kerugian secara termodinamis) hanya ada dalam teori.
Ketiga batasan ini secara kolektif menjelaskan mengapa keuntungan kecepatan prosesor tunggal mendekati jenuh pada tahun 1990-an & mengapa minat pada arsitektur paralel meningkat.
Menerapkan Batasan Kecepatan Cahaya
CPU berjalan pada 3 GHz. Satu siklus jam = 1/3 ns ≈ 0,333 ns. Kecepatan sinyal dalam tembaga: ~2/3 c ≈ 2×10⁸ m/detik.
Para Ahli yang Secara Spektakuler Salah
Hamming mencatat salah satu kegagalan prediksi paling terkenal dalam sejarah teknologi: para ahli pada akhir 1940-an memperkirakan dunia akan membutuhkan paling banyak tiga sampai lima komputer. Tom Watson dari IBM dilaporkan mengatakan dua.
Pada tahun 1993, ada jutaan komputer dalam operasi.
Mengapa Para Ahli Gagal
Para ahli mengekstrapolasi dari kasus penggunaan saat ini: perhitungan ilmiah di laboratorium nasional. Mereka tidak mengantisipasi wawasan produk yang setara: komputer tidak akan melakukan apa yang sudah dilakukan manusia, lebih cepat. Komputer akan memungkinkan kategori kerja yang sepenuhnya baru yang tidak pernah ada sebelumnya.
Pola kegagalan: para ahli dalam teknologi yang matang paling percaya diri tentang batasnya & paling mungkin salah tentang aplikasi masa depannya. Keahlian mereka memberi mereka model akurat dari sekarang; itu tidak memberi mereka model tentang apa yang akan menjadi mungkin.
Arsitektur Paralel
Kecepatan prosesor tunggal mendekati jenuh pada tahun 1990-an. Respons industri: unit aritmatika ganda, pipa, hierarki cache, & mesin paralel besar-besaran. Pada tahun 1993 tidak ada arsitektur paralel tunggal yang dominan — banyak desain bersaing dengan tradeoff berbeda & model pemrograman berbeda. Hamming mencatat fragmentasi ini sebagai masalah: tanpa standar, upaya pemrograman terbagi di seluruh sistem yang tidak kompatibel.
Mengapa Ahli Memprediksi Salah
Hamming memperlakukan prediksi komputer 3-5 bukan sebagai keingintahuan tetapi sebagai pelajaran tentang keterbatasan pengetahuan ahli. Para ahli memodelkan masa kini dengan baik; mereka gagal pada aplikasi yang belum ada.
Data Los Alamos & Persamaan Pertumbuhan
Hamming mengutip bagan yang dikompilasi oleh Los Alamos National Laboratory (LANL) melacak kecepatan komputer tercepat di pasar di setiap titik waktu. Data cocok dengan persamaan eksponensial: kecepatan kira-kira berlipat ganda setiap 18 bulan — kemudian dipopulerkan sebagai Hukum Moore untuk hitungan transistor.
Persamaan LANL: speed(t) = speed₀ × 10^(bt), di mana b ≈ 0,09 per tahun (berlipat ganda kasar setiap 3,3 tahun dalam operasi per detik, berbeda dari penggandaan hitungan transistor).
Hamming menggunakan ini untuk membuat poin tentang ekstrapolasi: eksponensial tidak dapat berlanjut tanpa batas. Tiga batasan fisik menetapkan plafon. Kapan eksponensial mencapai plafon? Transisi itu menandai akhir era prosesor tunggal.
Pada tahun 1993 industri sudah mendekati plafon itu, mendorong minat pada arsitektur paralel, trik pipa, & hierarki cache — semua langkah kecil menuju paralelisme daripada eksekusi single-thread lebih cepat.