"सीपीएस" दृष्टिकोण ने एसएमएल / एनजे में प्रदर्शन को बहुत नुकसान पहुंचाया है; वांछित


11

लर्निंग एफ # के लिए एक टिप्पणी में : कार्यात्मक अवधारणाओं को सीखने के लिए अन्य प्रोग्रामिंग भाषाओं का उपयोग करने वाली पुस्तकों का अनुवाद एफ # में किया जा सकता है? Makarius कहा:

ध्यान दें कि "CPS" दृष्टिकोण ने SML / NJ में प्रदर्शन को बहुत नुकसान पहुंचाया है। इसका भौतिक मूल्यांकन मॉडल बहुत सी मान्यताओं का उल्लंघन करता है जो हार्डवेयर में निर्मित होती हैं। यदि आप एसएमएल के बड़े प्रतीकात्मक अनुप्रयोग जैसे इसाबेल / एचओएल, सीपीएस के साथ एसएमएल / एनजे लेते हैं तो लगभग बाहर आता है। पॉली / एमएल की तुलना में 100 गुना धीमा अपने पारंपरिक स्टैक के साथ।

क्या कोई इसके कारणों की व्याख्या कर सकता है? (कुछ उदाहरणों के साथ अधिमानतः) क्या यहां एक प्रतिबाधा बेमेल है?


1
मेरी समझ यह है कि हार्डवेयर एक स्थिर अनुशासन मानता है, और इसलिए सीपीएस दृष्टिकोण इस धारणा का पालन नहीं करने के लिए एक प्रदर्शन हिट लेता है। लेकिन यह सिर्फ मेरी असंबद्ध राय है।
बाउर

जवाबों:


9

पहले सन्निकटन में, मेमोरी एक्सेस के "स्थानीयता" में अंतर होता है, जब एक प्रोग्राम सिर्फ पारंपरिक बढ़ते और ढेर के सिकुड़ने के बजाय सीपीएस शैली में ढेर पर आगे बढ़ता है। यह भी ध्यान दें कि सीपीएस को हमेशा आपके द्वारा ढेर पर रखे गए स्थानीय डेटा को पुनर्प्राप्त करने के लिए GC की आवश्यकता होगी। अकेले ये अवलोकन 10 या 20 साल पहले पर्याप्त होंगे, जब हार्डवेयर आज की तुलना में बहुत सरल था।

मैं खुद न तो हार्डवेयर हूं और न ही कंपाइलर गुरु, इसलिए दूसरे अनुमान के तौर पर, यहां लगभग कुछ ठोस कारण हैं। फैक्टर 100 इसाबेल / HOL में देखा गया:

  • ऊपर "पहले सन्निकटन" के अनुसार बुनियादी प्रदर्शन हानि।

  • एसएमएल / एनजे हीप प्रबंधन और जीसी में कई दसियों एमबी से परे पैमाने पर गंभीर समस्याएं हैं; इसाबेल अब 100-1000 एमबी नियमित रूप से उपयोग करती है, कभी-कभी कई जीबी।

  • एसएमएल / एनजे संकलन बहुत धीमा है - यह पूरी तरह से असंबंधित हो सकता है (ध्यान दें कि इसाबेल / एचओएल वैकल्पिक रनटाइम संकलन और रनिंग कोड)।

  • एसएमएल / एनजे में मूल मल्टीथ्रेडिंग का अभाव है - पूरी तरह से असंबंधित नहीं, क्योंकि सीपीएस को "अलग-अलग ढेर के बिना उपयोगकर्ता के स्थान में अपने स्वयं के थ्रेड रोल" के रूप में विज्ञापित किया गया था।

पेपर और मोहरों के सहसंबंध की भी चर्चा मॉरिसेट / टोलमाच पीपीओपीपी 1993 "कागज और ताले: न्यू जर्सी के मानक एमएल के लिए एक पोर्टेबल मल्टीप्रोसेसिंग प्लेटफ़ॉर्म" द्वारा की गई है ( CiteSeerX ) नोट: CiteSeerX पर पीडीएफ 10- से पन्नों के पीछे है। 1 के बजाय 1-10।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.