एनालॉग & डिजिटल पूर्वज
हैमिंग ने अपने हार्डवेयर इतिहास को एक भेद के साथ शुरू किया: एनालॉग कंप्यूटिंग (स्लाइड नियम, विभेदक विश्लेषक) बनाम डिजिटल कंप्यूटिंग (नेपियर की हड्डियां, डेस्क कैलकुलेटर)। दोनों पंक्तियां समानांतर में विकसित हुईं; डिजिटल पंक्ति अंततः प्रभावी हो गई।
नेपियर (1550–1617)
जॉन नेपियर ने लॉगरिदम का आविष्कार किया, जिसने स्लाइड नियम को सक्षम किया — एक एनालॉग डिवाइस जहां भौतिक लंबाई लॉगरिदमिक मान का प्रतिनिधित्व करती है। लंबाई का जोड़ = संख्याओं का गुणा। नेपियर ने 'नेपियर की हड्डियां' भी डिजाइन कीं: गुणा में सहायता के लिए हाथी दांत की छड़ें। डिजिटल, स्लाइड नियम के साथ भ्रमित न करें।
शिकर्ट से बाबेज तक
विल्हेल्म शिकर्ट (1623) ने चार अंकगणितीय संचालन के लिए एक मशीन डिजाइन की; यह पूरा होने से पहले जल गई। पास्कल (1623–1662) ने कर मूल्यांकन के लिए एक जोड़ने वाली मशीन बनाई। लीबनिज ने गुणा & विभाजन जोड़े लेकिन मशीनें अविश्वसनीय थीं।
चार्ल्स बाबेज (1791–1871) ने अंतर इंजन डिजाइन किया: समान-दूरी वाले मानों पर बहुपद का मूल्यांकन करने के लिए एक मशीन, क्रमिक जोड़ द्वारा, त्रुटि-मुक्त मुद्रित तालिकाएं उत्पन्न करती है। उन्होंने इसे कभी पूरा नहीं किया; एक नार्वेजियन पिता-पुत्र की जोड़ी (शेउत्ज़) ने कार्यशील संस्करण बनाए। 1992 में, इंग्लैंड में एक टीम ने बाबेज के चित्रों से विश्लेषणात्मक इंजन बनाया — यह काम किया।
बाबेज का विश्लेषणात्मक इंजन von Neumann आर्किटेक्चर के करीब था: एक स्टोर (मेमोरी), एक मिल (अंकगणित इकाई), & सशर्त शाखाकरण। लेडी लवलेस ने इसके लिए पहले कार्यक्रम प्रकाशित किए।
रिले कंप्यूटर से ENIAC तक
आधुनिक कंप्यूटिंग का युग 1940 के दशक की शुरुआत में रिले कंप्यूटर के साथ शुरू हुआ। हैमिंग ने गति के विकास को ट्रेस किया:
| युग | प्रौद्योगिकी | गति | |---|---|---| | 1940 से पहले | हाथ कैलकुलेटर | 1/20 ऑप्स/सेक | | ~1940 | रिले (बेल लैब्स) | 1 ऑप/सेक | | 1946 | ENIAC (वैक्यूम ट्यूब) | ~5,000 ऑप्स/सेक | | 1952 | IBM 701 | ~17,000 ऑप्स/सेक | | ~1993 | आधुनिक वर्कस्टेशन | 10⁹ ऑप्स/सेक |
बेल टेलीफोन प्रयोगशालाओं में जॉर्ज स्टिबिट्ज ने निंदित M9 बंदूक निदेशकों के भागों से रिले कंप्यूटर बनाए। हैमिंग वर्षों तक एक का उपयोग करते थे। ये रिले मशीनें तेज़ नहीं थीं — लगभग प्रति सेकंड एक ऑपरेशन — लेकिन वे विश्वसनीय & प्रोग्रामयोग्य थीं।
ENIAC (1945–1946) पहली बार एक प्लगबोर्ड वायरिंग द्वारा चलाया गया था, एक विशाल प्लगबोर्ड कंप्यूटर की तरह। निक मेट्रोपोलिस & डिक क्लिपेंजर ने बाद में इसे बैलिस्टिक टेबल से दशमलव स्विच प्रोग्रामिंग में परिवर्तित किया। ENIAC ने मोटे तौर पर 150 kW की खपत की।
आंतरिक प्रोग्रामिंग केवल तभी व्यावहारिक हो गई जब पर्याप्त भंडारण मौजूद था। von Neumann की भूमिका Mauchly & Eckert के लिए एक सलाहकार के रूप में थी; आंतरिक प्रोग्रामिंग पर von Neumann की भागीदारी से पहले टीम के बीच चर्चा की गई थी, हालांकि उनकी व्यापक रूप से प्रचारित (लेकिन कभी औपचारिक रूप से प्रकाशित नहीं) रिपोर्टों ने अवधारणाओं को फैलाया।
गति में परिमाण के क्रम
हाथ कैलकुलेटर से 1990 के दशक के वर्कस्टेशन तक गति प्रगति लगभग 50 वर्षों में 10 परिमाण के क्रमों से अधिक फैली हुई है।
जहां हार्डवेयर नहीं जा सकता
हैमिंग ने तीन भौतिक सीमाएं प्रस्तुत कीं जो कंप्यूटर अंततः कितनी तेज़ी से चल सकते हैं, इसे सीमित करती हैं। ये इंजीनियरिंग चुनौतियां नहीं थीं कि समझदारी से काबू पाया जा सकता था — वे भौतिकी के नियम थे।
सीमा 1: आणविक आकार
घटक परमाणु आयामों से नीचे सिकुड़ नहीं सकते। 10 परमाणु चौड़ी एक ट्रांजिस्टर गेट: क्वांटम टनलिंग हावी होती है & ट्रांजिस्टर विश्वसनीय रूप से स्विच करना बंद कर देता है। 1993 तक हैमिंग ने अनुमान लगाया कि ~100,000 परमाणु दूरी पर आपस में जुड़े डिवाइसों के बीच जाना (मोटे तौर पर प्रकाश यात्रा समय के 3 पिकोसेकंड) एक वास्तविक भौतिक सीमा का प्रतिनिधित्व करता है।
सीमा 2: प्रकाश की गति
संकेत सबसे अधिक c = 3×10⁸ m/s से वैक्यूम में (तार में कम, मोटे तौर पर 2×10⁸ m/s)। 1 GHz घड़ी चक्र 1 नैनोसेकंड है; 1 ns में, प्रकाश 30 cm यात्रा करता है। एक चिप जो एक संकेत 15 cm भर में भेजना चाहिए & एक घड़ी चक्र के भीतर एक प्रतिक्रिया प्राप्त करना चाहिए, प्रकाश-गति सीमा के करीब संचालित है।
जैसे-जैसे घड़ी की गति बढ़ती है, एक घड़ी अवधि के भीतर संकेत राउंड-ट्रिप समय रखने के लिए चिप आयामों को सिकुड़ना चाहिए।
सीमा 3: ताप विसर्जन
प्रति इकाई क्षेत्र अधिक घटक + तेजी से स्विचिंग = प्रति इकाई क्षेत्र अधिक शक्ति = अधिक ताप। घटक पिघलने से पहले ताप को विसर्जित करना चाहिए। 1993 तक, संचालन वोल्टेज स्विचिंग पावर को कम करने के लिए 2-3V की ओर गिर रहे थे। हीट कंडक्टर के रूप में हीरे की परतें जांच के अधीन थीं। प्रतिवर्ती कंप्यूटिंग (ऊष्मागतिकी रूप से दोषरहित) केवल सिद्धांत में मौजूद थी।
ये तीन सीमाएं सामूहिक रूप से समझाती हैं कि एकल-प्रोसेसर गति लाभ 1990 के दशक तक संतृप्ति के करीब क्यों थे & समानांतर आर्किटेक्चर में रुचि क्यों बढ़ी।
प्रकाश-गति सीमा को लागू करना
एक CPU 3 GHz पर चलता है। एक घड़ी चक्र = 1/3 ns ≈ 0.333 ns। तांबे में संकेत गति: ~2/3 c ≈ 2×10⁸ m/s।
वह विशेषज्ञ जो भयानक रूप से गलत थे
हैमिंग ने प्रौद्योगिकी इतिहास में मनाई जाने वाली भविष्यवाणी विफलताओं में से एक को नोट किया: 1940 के दशक के अंत में विशेषज्ञों ने अनुमान लगाया कि दुनिया को अधिकतम तीन से पाँच कंप्यूटर की आवश्यकता होगी। IBM के टॉम वाटसन ने कथित तौर पर दो कहा।
1993 तक, लाखों कंप्यूटर संचालन में थे।
विशेषज्ञ विफल क्यों हुए
विशेषज्ञों ने वर्तमान उपयोग केस से एक्सट्रपोलेट किया: राष्ट्रीय प्रयोगशालाओं में वैज्ञानिक गणना। उन्होंने समतुल्य उत्पाद अंतर्दृष्टि की कल्पना नहीं की: कंप्यूटर ऐसा नहीं करेंगे कि मनुष्य पहले से ही क्या करते हैं, तेजी से। कंप्यूटर ऐसी पूरी तरह से नई कार्य श्रेणियां सक्षम करेंगे जिनका कोई पूर्व अस्तित्व नहीं है।
विफलता पैटर्न: एक परिपक्व प्रौद्योगिकी में विशेषज्ञ इसकी सीमाओं के बारे में सबसे आत्मविश्वासी होते हैं & इसके भविष्य के अनुप्रयोगों के बारे में सबसे अधिक गलत होने की संभावना है। उनकी विशेषज्ञता उन्हें वर्तमान के सटीक मॉडल देती है; यह उन्हें यह मॉडल नहीं देता कि क्या संभव हो जाएगा।
समानांतर आर्किटेक्चर
एकल-प्रोसेसर गति 1990 के दशक तक संतृप्ति के करीब पहुंच गई। उद्योग प्रतिक्रिया: कई अंकगणितीय इकाइयां, पाइपलाइनें, कैश पदानुक्रम, & बड़े पैमाने पर समानांतर मशीनें। 1993 तक कोई एकल प्रमुख समानांतर आर्किटेक्चर नहीं था — विभिन्न ट्रेडऑफ और विभिन्न प्रोग्रामिंग मॉडल वाले कई प्रतिस्पर्धी डिज़ाइन। हैमिंग ने इस विखंडन को समस्या के रूप में नोट किया: मानक के बिना, प्रोग्रामिंग प्रयास असंगत प्रणालियों में विभाजित हो जाता है।
विशेषज्ञ भविष्यवाणी क्यों गलत होती है
हैमिंग ने 3-5 कंप्यूटर की भविष्यवाणी को जिज्ञासा के रूप में नहीं, बल्कि विशेषज्ञ ज्ञान की सीमाओं के बारे में एक पाठ के रूप में माना। विशेषज्ञ वर्तमान को अच्छी तरह से मॉडल करते हैं; वे अनुप्रयोगों पर विफल होते हैं जो अभी तक मौजूद नहीं हैं।
लॉस अलामोस डेटा & वृद्धि समीकरण
हैमिंग ने लॉस अलामोस नेशनल लेबोरेटरी (LANL) द्वारा संकलित एक चार्ट का हवाला दिया जो प्रत्येक समय में बाजार पर सबसे तेज़ कंप्यूटर की गति को ट्रैक करता था। डेटा एक घातीय समीकरण में फिट हुआ: गति लगभग हर 18 महीने दोगुनी हो गई — बाद में ट्रांजिस्टर गणना के लिए मूर के नियम के रूप में लोकप्रिय हुआ।
LANL समीकरण: speed(t) = speed₀ × 10^(bt), जहां b ≈ 0.09 प्रति वर्ष (प्रति सेकंड संचालन में लगभग हर 3.3 वर्ष में दोगुना होना, ट्रांजिस्टर गणना को दोगुना करने से अलग)।
हैमिंग ने एक्सट्रापोलेशन के बारे में एक बिंदु बनाने के लिए इसका उपयोग किया: घातीय अनिश्चित काल तक जारी नहीं रह सकता है। तीन भौतिक सीमाएं एक छत सेट करती हैं। घातीय छत तक कब पहुंचता है? वह संक्रमण एकल-प्रोसेसर युग के अंत को चिह्नित करता है।
1993 तक उद्योग पहले से उस छत के करीब पहुंच रहा था, समानांतर आर्किटेक्चर, पाइपलाइन ट्रिक्स, & कैश पदानुक्रमों में रुचि को चला रहा था — तेजी से एकल-थ्रेडेड निष्पादन के बजाय समानांतरवाद की ओर सभी छोटे कदम।