2017-11-22 10 views
5

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

+0

https://stackoverflow.com/ प्रश्न/35375143/हैकसेल-डीबगिंग-लम्बी-संकलन-समय-पर-स्टैक-प्रोजेक्ट – leftaroundabout

+0

हां, उस प्रश्न को देखा गया लेकिन जीएचसी को तेजी से बनाने के तरीके पर कुछ सामान्य सलाह के बगल में कोई जवाब नहीं है ... या शायद मैं इसे बहुत जल्दी पढ़ूं ? – insitu

उत्तर

0

सुनिश्चित नहीं हैं कि 70+ संकुल या 70+ मॉड्यूल, लेकिन वैसे भी ...

मैं यह करने के लिए किसी भी विशेष रूप से आसान तरीका नहीं सोच सकते हैं इसका मतलब है। आप को समय पर ठीक कर सकते हैं जब जीएचसी कंसोल पर अपने संदेश लिखता है; मुझे यकीन नहीं है कि यह कितना सटीक होगा। अन्यथा, मुझे लगता है कि आपको सही संकलन आदेश का पता लगाना होगा, और एक समय में एक मॉड्यूल को संकलित करने के लिए मैन्युअल रूप से जीएचसी का आह्वान करना होगा, और प्रत्येक संकलन आदेश कितनी देर तक लेता है, ओएस-स्तरीय टूल का उपयोग करें। (शायद GHC के स्वचालित Makefile पीढ़ी सुविधा की सहायता से ...)

यह संभव है प्रोफाइलिंग को सक्षम करने पर GHC ही संकलित करने के लिए, लेकिन मुझे नहीं लगता कि इस मामले में मदद करता है है। (और यह काफी काम का एक बहुत कुछ है।)

Fwiw, मैं भी जानना चाहता है कि कुछ मॉड्यूल एक छोटे से अनंत काल लेने जबकि दूसरों को लगभग तत्काल हैं संकलित करने के लिए चाहते हैं ...

+0

धन्यवाद। मुझे लगता है कि मेरे पास एक एम्ब्रोनिक समाधान है जो '-शो-पास' पर आधारित होगा जो प्रति मॉड्यूल के कुछ आंकड़ों को डंप करता है (और हाँ, मेरा मतलब 70 मॉड्यूल है क्योंकि मुझे यह जानने में दिलचस्पी है कि कौन से मॉड्यूल सबसे अधिक समय लेते हैं, पैकेजों के लिए यह आसान है) । मैंने उस जानकारी को निर्माण और डंप आंकड़ों से निकालने के लिए कुछ बहुत ही सरल टूल लिखना शुरू कर दिया है। – insitu

संबंधित मुद्दे