हार्डवेयर तुम्हारे विश्लेषण को कैसे बदल देता है
प्रोसेसर कोर, हैश का आकार, और तुम्हारा लैपटॉप सर्वर से अलग क्यों आँकता है
जब तुम कोई शतरंज इंजन चलाते हो, तो तुम महज़ एक प्रोग्राम नहीं चला रहे होते — तुम अपने कंप्यूटर से कह रहे होते हो कि हर सेकंड लाखों स्थितियाँ खंगाले, हरेक को आँके और अपनी सबसे अच्छी राय लौटाए। यह काम वह कितनी अच्छी तरह करेगा, इसका फ़ैसला सीधे उस हार्डवेयर से होता है जिस पर वह चल रहा है। फिर भी शतरंज मंचों पर इस निर्णायक पहलू की चर्चा शायद ही कभी होती है।
जो सुधार को गंभीरता से लेता है, उसे हार्डवेयर और विश्लेषण की गुणवत्ता के रिश्ते को समझना चाहिए। यही समझाता है कि एक ही स्थिति अलग-अलग उपकरणों पर अलग अंक क्यों पाती है, और तुम्हारे फ़ोन की "गहराई 20" किसी दमदार डेस्कटॉप की "गहराई 20" से क्यों अलग चीज़ है।
प्रोसेसर: विश्लेषण के पीछे का दिमाग़
Stockfish जैसे इंजन सबसे ज़्यादा प्रोसेसर खाते हैं। उनका काम खेल-वृक्ष बनाना और खंगालना है — चालों और जवाबी चालों की शाखाओं में बँटी वे कड़ियाँ जो बहुत आगे तक फैलती हैं। प्रोसेसर जितना तेज़, इंजन हर सेकंड उतनी ज़्यादा स्थितियाँ आँकता है, जिसे प्रति सेकंड नोड की संख्या से मापा जाता है।
आजकल का डेस्कटॉप प्रोसेसर Stockfish के साथ हर सेकंड तीन से पाँच करोड़ नोड तक पहुँच सकता है, जबकि फ़ोन का प्रोसेसर तीस से अस्सी लाख पर रुक जाता है। यह क़रीब पाँच से दस गुना का अंतर सीधे गहराई में बदलता है। उतने ही समय में डेस्कटॉप कहीं ज़्यादा गहरे उतरता है और वे रणनीतिक कड़ियाँ तथा स्थितिगत बारीकियाँ ढूँढ़ लेता है जिन तक पहुँचने का वक़्त फ़ोन को मिलता ही नहीं।
कई कोर वाले प्रोसेसर समांतर खोज का फ़ायदा भी जोड़ते हैं। जब Stockfish एक के बजाय 8 थ्रेड इस्तेमाल करता है तो वह ठीक आठ गुना तेज़ नहीं होता — तालमेल का ख़र्च कुछ हिस्सा खा जाता है — पर उतने ही समय में साफ़ तौर पर ज़्यादा गहराई तक पहुँचता है। यही वजह है कि मंचों का सर्वर विश्लेषण आम तौर पर तुम्हारे अपने उपकरण पर चलने वाले विश्लेषण से बेहतर निकलता है।
हैश तालिका: मेमोरी मायने रखती है
ट्रांसपोज़िशन तालिका, जिसे आम तौर पर सिर्फ़ "हैश" कहते हैं, मेमोरी का वह हिस्सा है जहाँ इंजन पहले से आँकी हुई स्थितियाँ रखता है। जब वही स्थिति किसी दूसरे क्रम से दोबारा सामने आती है — और शतरंज में यह लगातार होता है — तो वह सब कुछ नए सिरे से गिनने के बजाय अपना पिछला आकलन देख लेता है।
इस तालिका का आकार विश्लेषण की गुणवत्ता पर सीधा असर डालता है। ज़्यादा हैश मिलने पर इंजन पहले जाँची गई ज़्यादा स्थितियाँ सँभाले रखता है और दोहरा काम नहीं करता। हैश कम हो तो वह देखी हुई स्थितियाँ बार-बार "भूलता" है और गणना की ताक़त बर्बाद करता है।
मोटा नियम यह है कि उपलब्ध रैम का लगभग आधा हिस्सा दे दिया जाए, हालाँकि ज़्यादातर लोगों के लिए 512 एमबी से 2 जीबी का दायरा सबसे सुविधाजनक बैठता है। बहुत ऊँचा रखने पर उलटा नुक़सान होता है, क्योंकि ऑपरेटिंग सिस्टम मेमोरी को डिस्क पर उतारने लगता है।
ChessOnyx जैसा ब्राउज़र के भीतर चलने वाला विश्लेषण मेमोरी के मामले में ज़्यादा तंग रहता है। WebAssembly ब्राउज़र की तय की हुई सीमाओं में ही काम करता है। यही एक वजह है कि ब्राउज़र का विश्लेषण उल्लेखनीय रूप से सक्षम होते हुए भी भरपूर मेमोरी वाले देसी डेस्कटॉप प्रोग्राम की पूरी बराबरी नहीं कर पाता।
NNUE: तंत्रिका नेटवर्क वाली उलटफेर
आज का Stockfish स्थितियाँ आँकने के लिए NNUE नाम के तंत्रिका नेटवर्क का इस्तेमाल करता है। करोड़ों स्थितियों पर प्रशिक्षित इस नेटवर्क ने हाथ से लिखी पुरानी मूल्यांकन प्रणाली के मुक़ाबले इंजन की स्थितिगत समझ को नाटकीय ढंग से बेहतर बनाया है।
NNUE से आँकना पुराने तरीक़े के मुक़ाबले गणना की दृष्टि से महँगा है, यानी हर नोड पर थोड़ा ज़्यादा समय लगता है। पर आकलन इतने ज़्यादा सटीक होते हैं कि इंजन कम गहराई पर भी बेहतर फ़ैसले लेता है। कुल मिलाकर खेल काफ़ी मज़बूत और विश्लेषण ज़्यादा भरोसेमंद हो जाता है।
NNUE नेटवर्क ख़ुद एक फ़ाइल है जो इंजन शुरू होते समय लोड होती है, और इसके अलग-अलग संस्करण अलग आकलन देते हैं। अलग-अलग मंचों का विश्लेषण मिलाते वक़्त यह याद रखना काम आता है कि उनके नेटवर्क एक जैसे न हों, भले ही हर जगह "Stockfish" ही लिखा हो।
ब्राउज़र, डेस्कटॉप या सर्वर
विश्लेषण के तीन आम माहौल हैं, और हरेक का अपना मिज़ाज है:
ब्राउज़र वाला विश्लेषण (WebAssembly) सीधे तुम्हारे उपकरण पर चलता है। यह सुविधाजनक है, कुछ इंस्टॉल नहीं करना पड़ता, और हर उपकरण पर काम करता है। बदले में यह ब्राउज़र की मेमोरी सीमाओं में बँधा रहता है और WebAssembly के अतिरिक्त बोझ के कारण देसी प्रोग्राम से थोड़ा धीमा चलता है। आजकल के डेस्कटॉप ब्राउज़र पर गुणवत्ता ठोस मिलती है; फ़ोन पर नतीजे उथले रह जाते हैं।
डेस्कटॉप प्रोग्राम (देसी Stockfish, ChessBase वग़ैरह) तुम्हारे हार्डवेयर का पूरा इस्तेमाल करते हैं। वे ब्राउज़र की बंदिशों के बिना सीधे प्रोसेसर थ्रेड और मेमोरी तक पहुँचते हैं। गंभीर विश्लेषण के लिए सक्षम मशीन पर चलता डेस्कटॉप प्रोग्राम निजी स्तर पर सबसे अच्छा अनुभव देता है।
सर्वर वाला विश्लेषण ताक़तवर क्लाउड हार्डवेयर पर चलता है और नतीजा तुम्हारे ब्राउज़र तक पहुँचाता है। यह ब्राउज़र की सहूलियत और सर्वर की ताक़त को जोड़ देता है। क़ीमत यह है कि तुम सर्वर के उपलब्ध होने पर निर्भर रहते हो और आम तौर पर गहराई या मानक अपनी मर्ज़ी से नहीं बदल सकते।
हर रास्ते की अपनी जगह है। ChessOnyx ब्राउज़र वाला विश्लेषण इसलिए चुनता है क्योंकि हम तुम्हें कुछ भी इंस्टॉल कराए बिना विश्लेषण की सीधी कमान देना चाहते हैं। गणना तुम्हारे ही उपकरण पर होती है और कोई डेटा सर्वर तक नहीं जाता — यानी तुम्हारी बाज़ियाँ तुम्हारी ही रहती हैं।
तुम्हारे लिए इसका मतलब
हार्डवेयर की भूमिका समझने से नतीजे ज़्यादा सही ढंग से पढ़े जाते हैं। व्यावहारिक बातें ये हैं:
अलग-अलग उपकरणों या मंचों के आकलन मिलाकर यह उम्मीद मत रखो कि वे हूबहू एक जैसे निकलेंगे। घर के विश्लेषण और किसी मंच के विश्लेषण के बीच 0.1 से 0.3 का फ़र्क़ सामान्य है।
गंभीर विश्लेषण कर रहे हो तो जो सबसे ताक़तवर उपकरण मौजूद हो वही इस्तेमाल करो। आधुनिक बहु-कोर प्रोसेसर वाला डेस्कटॉप फ़ोन के मुक़ाबले साफ़ बेहतर नतीजे देगा।
इंजन को वक़्त दो। हार्डवेयर कोई भी हो, उसे ज़्यादा देर चलने देना ज़्यादा भरोसेमंद नतीजा देता है। एक ही स्थिति पर पाँच सेकंड की झलक तीस सेकंड के विश्लेषण से कहीं कम बताती है।
सिर्फ़ समय नहीं, गहराई देखो। तेज़ कंप्यूटर की गहराई 25 और धीमे फ़ोन की गहराई 25 खोज की एक ही गहराई है; फ़र्क़ बस इतना कि तेज़ मशीन वहाँ सेकंडों में पहुँचती है और फ़ोन को शायद मिनट लगें। दो विश्लेषण मिलाने हों तो एक जैसी गहराई पर मिलाओ, एक जैसे समय पर नहीं।
हार्डवेयर जो भी हो, इंजन एक ताक़तवर औज़ार बना रहता है। मामूली उपकरणों पर भी आज का Stockfish ऐसा विश्लेषण देता है जिसे दस साल पहले मानवीय क्षमता से परे माना जाता। असल बात यह है कि अपनी ही मशीन पर उसकी सीमाएँ जानो और नतीजों को उसी हिसाब से पढ़ो।