शोधयंत्राचा शोध - भाग ८ - इंकटुमी
[१] आल्टाव्हिस्टा ह्या डेकच्या उपसंस्थेने आधुनिक शोधयंत्राचा पाया रचून देखील डेकमधल्या तंत्रज्ञान व्यवस्थापकांच्या अदूरदृष्टीमुळे त्यांचा कसा ऱ्हास झाला हे आपण गेल्या वेळी बघितले.
आल्टाव्हिस्टाचा ऱ्हास होण्यास ही फक्त एकच बाब कारणीभूत नव्हती. दुसरी एक तांत्रिक बाब देखील त्यासाठी महत्वाची ठरली. ती म्हणजे आल्टाव्हिस्टाने त्यांच्या शोधयंत्रासाठी एकाच संगणकावर दिलेला जोर. हे समजवून घेण्यासाठी आपल्याला पुन्हा आपल्या वाढक्षमता (स्केलेबिलिटी) ह्या संकल्पनेला समजावून घ्यायला हवे. सदस्यांची संख्या कितीही प्रमाणात वाढली तरी त्या वाढीला सामोरे जाण्याची, त्या वाढीनंतरही आपल्या सेवेची तत्परता कायम ठेवण्याची क्षमता, म्हणजे ही वाढक्षमता. आपण ह्या वाढक्षमतेची उदाहरणे आपल्या रोजच्या जीवनात पाहिलेली आहेत. आपण एखाद्या पतपेढीत जाता. पैसे काढायला किंवा जमा करायला. तिथे एकच कॅशियर असतो. समजा त्या पतपेढीचे सदस्य त्या पतपेढीच्या सुयोगाने दर दिवशी दुप्पट होत असले, तर हा एक कॅशियर किती दिवस पुरणार? मग त्यांना आणखी कॅशियर लागतील ना ? सदस्य संख्येच्या प्रमाणात कॅशियर लागतील हे एक सोपे गणित. हे झाले तिथल्या नोकरदारांविषयी. परंतु समजा त्या पतपेढीचे नियम असे असतील, की तुम्हाला पैसे काढायचे असतील, तर त्या पतपेढीच्या सर्वोच्च व्यवस्थापकाची सही तुमच्या अर्जावर आवश्यक आहे. तर मग हे सर्वोच्च व्यवस्थापक तर असे सदस्य संख्येनुसार वाढवता येणार नाहीत ना? म्हणजे त्या पतपेढीला अजीबात वाढक्षमता नाही, असे म्हणता येईल. आणि तुम्ही तुमचे त्या पतपेढीतील खाते बंद करून दुसऱ्या वाढक्षम पतपेढीत उघडाल, होय ना ? तसेच आल्टाव्हिस्टाचे झाले.
आल्टाव्हिस्टाने आपल्या शोधयंत्राची जी यंत्रणा उभारली होती, त्यात संचारक आज्ञावली चालवायला एक संगणक, सूचिकारासाठी एक संगणक, आणि शोधयंत्राच्या दर्शनी भागासाठी एक संगणक अशी योजना केली होती. जसजसे आल्टाव्हिस्टावर विश्वजालाचा शोध घेणारे सदस्य वाढीला लागले, तसतशी त्या सेवेची तत्परता कमी व्हायला लागली. एकच संगणक कितीशा लोकांना उत्तरे देणार ?
हा घोळ कॅलिफोर्नियातील बर्कले येथील विद्यापीठातले एक प्राध्यापक डॉ. एरिक ब्र्यूअर आणि त्यांच्या विद्यार्थ्याने, पॉल गॉथियेने, अचूक ओळखला. हे दोघेही संशोधक होते, ते माझ्या क्षेत्रातले, समांतर प्रक्रियण (पॅरेलल प्रोसेसिंग) ह्या क्षेत्रातले. आमचे हे संगणक विज्ञानातले क्षेत्र फक्त एकाच ध्येयाने प्रेरित आहे. कुठल्याही कामासाठी एकच संगणक न वापरता, अनेक संगणक एकाच वेळी वापरता येतील का ? कुठलीही समस्या एकाने सोडवायला सोपी पडत असेल, तर अनेक जण मिळून ती समस्या लवकर सोडवू शकतील का? तुम्हाला आपल्या दैनंदिन जीवनात अशा अनेक समस्या सापडतील, की ज्या एकापेक्षा जास्त लोकांनी हाताळल्या तर लवकर सुटू शकतील.
एक उदाहरण देतो. तुमच्या घरी लग्नाचा सोहळा आहे. त्याची निमंत्रणपत्रे वाटायची आहेत तुमच्या सगळ्या नातेवाईक आणि मित्रांना. मग कुणीतरी सगळ्यांना कामे वाटून देतो. तू शुक्रवारपेठेत जा, ही आमंत्रणपत्रे घेऊन. तू नारायण पेठेत. तू कोथरूडला. असे कामांचे वाटप करतो आपण, नाही? त्यामुळे ह्या सर्व कामाला लागणारा वेळ किती पटीने कमी होतो ? अगदी सोप्पा प्रश्न आहे, तुम्ही म्हणाल. जितके काम करणारे लोक असतील तितक्या पटीने! म्हणजे दोघ जण वाटणारे असतील, तर मूळ कामाच्या अर्ध्या वेळात हे काम होईल. नाही का ? हं, पण जरा सबूर. अशी पेठांनुसार वाटणी केली कामाची, आणि तुमचा एकच मित्र शुक्रवारपेठेत रहात असेल, आणि बाकी सगळे नातेवाईक आणि मित्र कोथरुडात. तर तो कोथरूडची जबाबदारी घेणारा माणूस सगळे काम करेल, आणि हा शुक्रवारपेठेची जबाबदारी घेणारा माणूस एकच निमंत्रणपत्रिका पोहोचवून उरलेला वेळ ‘दुर्गा’ मध्ये चिकन-बिर्याणी खात घालवेल! आणि एकाच माणसाने हे काम केले असते तरी चालले असते, असे तुम्हाला वाटेल ना?
म्हणजे आपल्या कामाचे समांतर पद्धतीने होऊ शकणारे भाग साधारणत: सारख्याच जबाबदारीचे असावेत. होय ना ? मग आपण अशा पेठांनुसार भाग न करता, ह्या सगळ्यांचे समान भाग करूयात. असं करू, की १००० पत्रिका आणि पाच जण त्या वाटण्याच्या कामाला उपलब्ध असतील तर, ज्या नावांनी पत्रिका आहेत, त्या नावांची शब्दकोशातील क्रमानुसार क्रमवारी लावूया. आणि पहिल्या दोनशे पत्रिका पहिल्या व्यक्तीला, दुसऱ्या दोनशे दुसऱ्याला असे ठरवूयात. असे केले तर सगळ्यांना सारखी जबाबदारी मिळेल. होय ना ?
अरे! ह्यामुळे तर खुपच घोळ झाला! प्रत्येक व्यक्ती त्यामुळे पूर्ण पुणे फिरतेय ! शनिवार, शुक्रवार, नारायण ह्या पेठा, आणि कोथरूड, बाणेर, हिंजवडी सगळीकडे प्रत्येक व्यक्तीला जावे लागते! हे काही बरं नाही. ही जबाबदारी वाटण्याची पद्धत चुकली वाटते. मग विचार करा की ही कामे, सर्वात कमी वेळात व्हावीत म्हणून कशी वाटून द्यावी? हे जर तुम्हाला कळले, तर तुम्हाला इंकटुमीने शोधयंत्रात काय मूलभूत क्रांती केली ते कळले.
एरिक ब्र्यूअर आणि पॉल गॉथियेने एका संगणकाच्या ऐवजी अनेक संगणक शोधयंत्राच्या तीन मूलभूत घटकांमध्ये, म्हणजे संचारक, सूचिकार, आणि दर्शनी भागांत, कसे वापरावे ह्यासाठी ही वाटणी शोधून काढली, आणि १९९६ मध्ये ह्या तंत्रज्ञानाचा वापर करून इंकटुमी ही संस्था जन्माला आली. जसजशी संकेतस्थळांची संख्या वाढू लागली, तसतसे हे लोक शोधयंत्राच्या कामात असलेल्या संगणकांची संख्या वाढवू लागले, आणि आपल्या शोधयंत्राच्या सेवेची तत्परता पूर्ववत ठेवण्यात सफल झाले.
संगणकाची तत्परता दोन तऱ्हांनी वाढत असते. एक म्हणजे मूळ संगणक अधिक वेगवान करून. आणि दुसरे म्हणजे त्या संगणकावर वापरलेल्या कृतिक्रमांऐवजी दुसरे वेगवान कृतिक्रम वापरून. ह्या दोन्हींचा समसमासंयोग होतो तो समांतर प्रक्रियणात. तुमचा समांतर कृतिक्रम जर वाढक्षम असेल, तर जास्त संगणक वापरून तुम्हाला तुमच्या सेवेची तत्परता वाढवता येते. समांतर प्रक्रियणाचा हा दुहेरी फायदा उचलला इंकटुमीच्या संस्थापकांनी.
पुढच्या भागात आपण इंकटुमी ह्या संस्थेने शोधयंत्राचा आर्थिक फायदा कसा करून घेतला ते बघू.
[गृहपाठ: इंकटुमीच्या संस्थापकांपैकी एक, पॉल गॉथिये, आणि प्रस्तुत लेखाचा लेखक, मिलिंद भांडारकर, ह्यांची नावे एकत्र शोधयंत्राला द्या. कुठले दुवे मिळतात? त्यातून हे दोघे सध्या एकाच प्रकल्पावर केंद्रित आहेत असे दिसून येईल. तो प्रकल्प कुठला? उत्तर देणाऱ्यास, त्या प्रकल्पातून तयार झालेली आज्ञावली फुकट देण्यात येईल. शोधा, आणि खट्टू व्हा. कारण ही आज्ञावली तशीही मुक्तस्त्रोत आज्ञावली आहे. आणि म्हणूनच फुकट उपलब्ध आहे!]
(अवांतर: काही अपरिहार्य कारणास्तव यापुढचा भाग जरा उशीरा प्रकाशित होईल.)