मैं रिपै का उपयोग करने वाले प्रोग्राम को संकलित करने का प्रयास करने के लिए जीएचसी 7.4.1 का उपयोग कर रहा हूं। लेकिन संकलन के माध्यम से भाग्य, मैं स्मृति से बाहर चला रहा हूँ। ghc -v
के साथ, मैं देख सकता हूं कि यह SpecConstr चरण में फंस गया है।मैं जीएचसी में SpecConstr की मदद कैसे कर सकता हूं?
SpecConstr जीएचसी के कोर-टू-कोर रूपांतरणों में से एक है। साइमन पेटन जोन्स का एक अच्छा वर्णन here है, और कुछ कोड here है, लेकिन यह मेरे लिए बहुत धीमी गति से चल रहा है क्योंकि मैं जीएचसी के आंतरिक कार्यों से परिचित नहीं हूं।
मैं किसी भी तरह से कंपाइलर की मदद करने में सक्षम होना चाहता हूं - क्या यह कहने का एक तरीका है कि यह कहां फंस रहा है? वैकल्पिक रूप से, क्या इस चरण में स्मृति उपयोग को सीमित करने का कोई तरीका है जब तक कि मैं एक बड़ी मशीन पर पुन: संकलित नहीं कर सकता?
धन्यवाद, चाड
एक सनकी पर, मैंने 'computeUnboxedS' हटा दिया, और अब यह ठीक से संकलित करता है। अभी भी कोई विचार नहीं, क्यों। –
यदि आप अपना कोड पोस्ट करते हैं, तो हम आपको बता सकते हैं कि क्यों। दृष्टि अदृश्य, मैं अनुमान लगाने जा रहा हूं कि आपने ट्यूटोनिक मैट्रिक्स को दबाया है, और जेफरी ट्यूब उच्च-हवादार थे। – rampion
धन्यवाद, दुर्भाग्य से मैं पूरी चीज पोस्ट नहीं कर सकता, और यह स्पष्ट नहीं है कि कम से कम मामले को कैसे डिस्टिल करना है। मैंने आशा की थी कि स्पेककॉन्स्ट के किस हिस्से में ब्लाउप हो रहा है, यह ट्रैक करने के लिए एक सामान्य प्रक्रिया हो सकती है। हो सकता है कि जीएचसी खुद को प्रोफाइलिंग करें, या ऐसा कुछ। –