← नवीनतम पेपर
💻 computer science

Arithmetic Variable LogLog: Advancing the Memory-Variance Frontier

यह शोध पत्र अरिथमेटिक वेरिएबल लॉगलॉग (AVLL) को प्रस्तुत करता है, जो एक नया कार्डिनैलिटी एस्टीमेशन एल्गोरिदम है जो अरिथमेटिक एनकोडिंग और एक अर्ली-एग्जिट मैकेनिज्म का उपयोग करके सभी परीक्षण किए गए आकारों में एक बेहतर मेमोरी-वेरिएंस प्रोडक्ट प्राप्त करके स्टेट-ऑफ-द-आर्ट एक्सालॉगलॉग (ExaLogLog) को सटीकता और गति दोनों में पीछे छोड़ देता है।

मूल लेखक: Brian Bushnell

प्रकाशित 2026-08-14
📖 6 मिनट में पढ़ें🧠 गहराई से पढ़ें

मूल लेखक: Brian Bushnell

मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें

कल्पना कीजिए कि आप एक विशाल पार्टी चला रहे हैं जहाँ लाखों मेहमान दरवाजे से अंदर आ रहे हैं, लेकिन आपके पास केवल एक छोटी सी नोटबुक है जिससे आप उनका हिसाब रख सकें। आप हर एक नाम नहीं लिख सकते—उससे आपकी नोटबुक तुरंत भर जाएगी। इसके बजाय, आपको बिना एक-एक करके गिने यह अनुमान लगाने के लिए एक चतुर तरीका चाहिए कि कितने अद्वितीय (unique) लोग आए हैं। यह "कार्डिनैलिटी एस्टीमेशन" (cardinality estimation) की समस्या है, एक ऐसी पहेली जिसने दशकों से कंप्यूटर वैज्ञानिकों को मंत्रमुग्ध किया है। लक्ष्य है: कम से कम मेमोरी का उपयोग करके सबसे सटीक अनुमान लगाना।

लंबे समय तक, इसका सबसे अच्छा तरीका एक पंक्ति में रखे लॉकरों जैसा था, जिनमें से प्रत्येक का एक विशिष्ट आकार होता था। आप एक रैंडम कोड के आधार पर अतिथि का नाम एक लॉकर में डालते, और यदि लॉकर खाली था, तो आप उसे चिह्नित करते। यदि वह पहले से ही भरा हुआ था, तो आप देखते कि क्या नया अतिथि पहले से मौजूद व्यक्ति की तुलना में "अधिक अद्वितीय" है। आपके पास जितने अधिक लॉकर होते, आपका अनुमान उतना ही बेहतर होता। लेकिन एक समस्या थी: एक अत्यंत सटीक अनुमान पाने के लिए, आपको या तो अधिक लॉकरों की आवश्यकता होती (जिसके लिए अधिक स्थान लगता) या फिर बड़े लॉकरों की जो प्रत्येक अतिथि के बारे में अधिक विस्तृत जानकारी रख सकें। वर्षों तक, बहस यह रही: क्या कुछ विशाल, अत्यधिक विस्तृत लॉकर रखना बेहतर है, या बहुत सारे छोटे, सरल लॉकर रखना बेहतर है?

यहाँ एक नया दावेदार आता है जिसे अरिथमेटिक वेरिएबल लॉगलॉग (AVLL) कहा जाता है। इसे ऐसे समझें जैसे एक जादूगर ने महसूस किया कि लॉकरों को पैक करने का पुराना तरीका बेकार था। निश्चित, पूर्व-निर्धारित स्लॉट के बजाय, AVLL एक लचीला, "अरिथमेटिक" पैकिंग तरीका उपयोग करता है जो उसी स्थान में बहुत अधिक छोटे लॉकरों को फिट कर सकता है। पेपर सुझाव देता है कि इन छोटे लॉकरों को 5.5 गुना अधिक सघन रूप से पैक करके, सिस्टम पिछले चैंपियंस की तुलना में बहुत बेहतर अनुमान लगा सकता है, भले ही प्रत्येक व्यक्तिगत लॉकर में कम जानकारी हो। यह ऐसा है जैसे यह महसूस करना कि भीड़ की बेहतर तस्वीर पाने के लिए 200 विशाल, स्लो-मोशन कैमरों के बजाय 1,000 छोटे, क्विक-पीक कैमरों का होना बेहतर है।

पेपर की बड़ी खोज

लेखक, ब्रायन बुशनेल, AVLL को डेटा स्ट्रीम में अद्वितीय वस्तुओं को गिनने के एक नए तरीके के रूप में प्रस्तुत करते हैं। उन्होंने पाया कि "बेस-56 अरिथमेटिक एनकोडिंग" नामक एक चतुर गणितीय ट्रिक का उपयोग करके, वे कंप्यूटर मेमोरी के एक सिंगल 64-बिट वर्ड में 11 रजिस्टरों (डिजिटल लॉकर) को पैक कर सकते हैं। अतीत में, मानक तरीके रजिस्टरों को निश्चित स्लॉट में फिट करने के लिए बिट्स को बर्बाद कर देते थे, लेकिन AVLL हर एक बिट का उपयोग करता है, जिससे शून्य बर्बादी होती है।

यह पैकिंग ट्रिक AVLL को एक बड़ा लाभ देती है: 1 KB के मेमोरी साइज पर, AVLL 1,408 रजिस्टर स्टोर कर सकता है, जबकि पिछले अत्याधुनिक तरीके, जिसे एक्सालॉगलॉग (ExaLogLog) कहा जाता था, उसी स्थान में केवल 256 रजिस्टर ही रख सकता था। यह अवलोकनों (observations) की संख्या में 5.5 गुना लाभ है।

पेपर दिखाता है कि यह "अधिक ही बेहतर है" वाला दृष्टिकोण बहुत अच्छी तरह काम करता है। 128,000 स्वतंत्र सिमुलेशन का उपयोग करते हुए परीक्षणों में, AVLL ने 1 KB पर 1.63% का विड्थ-वेटेड मीन एब्सोल्यूट एरर प्राप्त किया। तुलना में, एक्सालॉगलॉग का एरर 1.71% था। हालांकि यह अंतर छोटा लग सकता है, लेकिन उच्च-परिशुद्धता वाली गिनती की दुनिया में, यह एक महत्वपूर्ण जीत है। लेखक ने गणना की कि AVLL के लिए लगभग 3.4 का "मेमोरी-वैरिएंस प्रोडक्ट" (एक स्कोर जो बताता है कि मेमोरी का कितनी कुशलता से उपयोग किया गया है) है, जो एक्सालॉगलॉग के 3.78 के व्यावहारिक स्कोर से कम (और इसलिए बेहतर) है और इसके 3.67 के सैद्धांतिक सर्वश्रेष्ठ को भी मात देता है।

गिनती की गति बढ़ाना

लेकिन AVLL न केवल अधिक सटीक है, बल्कि यह आश्चर्यजनक रूप से तेज़ भी है, विशेष रूप से तब जब कंप्यूटर व्यस्त हो। पेपर एक तंत्र का वर्णन करता है जिसे "अर्ली एग्जिट" (early exit) कहा जाता है। एक पार्टी के दरवाजे पर खड़े बाउंसर की कल्पना करें जो तुरंत बता सकता है कि कोई अतिथि वह है जिसे उसने पहले देखा है, बिना अतिथि सूची देखे। AVLL इसे एक वैश्विक "फ्लोर" (floor) मान के साथ अतिथि के कोड की तुलना करके करता है। यदि कोड फ्लोर से नीचे है, तो अतिथि को तुरंत अनदेखा कर दिया जाता है, और सिस्टम मेमोरी को छूने तक नहीं जाता जहाँ लॉकर स्थित होते हैं।

उन परीक्षणों में जहाँ एक साथ हजारों ऐसे काउंटिंग सिस्टम चल रहे थे (एक भीड़भाड़ वाले कंप्यूटर कैश का अनुकरण करते हुए), AVLL एक्सालॉगलॉग की तुलना में 2.7 से 4.5 गुना तेज़ था। ऐसा इसलिए है क्योंकि एक्सालॉगलॉग प्रत्येक आइटम के लिए अपनी मेमोरी की जांच करता है, भले ही वह डुप्लिकेट हो, जबकि AVLL अधिकांश डुप्लिकेट्स को रजिस्टरों तक पहुँचने से पहले ही फिल्टर कर देता है। उच्च संख्या में अद्वितीय वस्तुओं के मामले में, AVLL लगभग 96% आने वाले डेटा को रजिस्टरों को छुए बिना ही खारिज कर देता है, जिससे सिस्टम सुचारू रूप से चलता रहता है।

इसका क्या अर्थ है (और क्या नहीं)

पेपर स्पष्ट रूप से इस विचार को खारिज करता है कि "समृद्ध" (richer) रजिस्टर (जैसे एक्सालॉगलॉग के विशाल 32-बिट लॉकर जो विस्तृत इतिहास संग्रहीत करते हैं) हमेशा बेहतर होते हैं। परिणाम बताते हैं कि इस विशिष्ट प्रकार की गिनती समस्या के लिए, अधिक स्वतंत्र अवलोकन (अधिक रजिस्टर) रखना प्रति अवलोकन अधिक समृद्ध डेटा रखने की तुलना में अधिक मूल्यवान है।

हालाँकि, लेखक सावधानी बरतते हुए कहते हैं कि AVLL कड़ाई से अर्थ में "आइडम्पोटेंट" (idempotent) नहीं है। इसका मतलब है कि यदि आप बिल्कुल समान डुप्लिकेट डेटा को दो बार फीड करते हैं, तो यह एक बार के मुकाबले थोड़ा अलग व्यवहार कर सकता है, हालांकि पेपर दिखाता है कि भारी डुप्लिकेशन वाले व्यावहारिक परीक्षणों में, सटीकता में कोई गिरावट नहीं आई। वे यह भी स्वीकार करते हैं कि उनका "HLDLC" एस्टिमेटर बड़े पैमाने पर सिमुलेशन के माध्यम से पाए गए विभिन्न गणितीय सूत्रों का एक चतुर मिश्रण है, न कि एक्सालॉगलॉग के 'मैक्सिमम लाइकलीहुड एस्टिमेटर' की तरह एक गणितीय रूप से सिद्ध "परफेक्ट" समाधान।

पेपर निष्कर्ष निकालता है कि AVLL एक स्व-निहित टूल (एक सिंगल जावा क्लास के रूप में लिखा गया) है, जो उपयोग के लिए तैयार है। यह मेमोरी स्पेस खत्म किए बिना भारी मात्रा में डेटा को संभालता है, और यह उतना ही अच्छा काम करता है चाहे डेटा अद्वितीय वस्तुओं का एक अराजक मिश्रण हो या डुप्लिकेट्स की एक पुनरावृत्ति वाली स्ट्रीम। मुख्य संदेश एक दर्शन में बदलाव है: मेमोरी दक्षता की लड़ाई में, घनत्व (density), समृद्धि (richness) को हरा देता है। एक ही स्थान में अधिक सरल, स्वतंत्र काउंटर पैक करके, हम डेटा स्ट्रीम की अधिक स्पष्ट, तेज़ और सटीक तस्वीर प्राप्त कर सकते हैं।

अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?

आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।

Digest आज़माएँ →