2016-02-18 12 views
5

में त्रुटियों से जुड़ी मेमोरी को मुक्त करना मैं कभी-कभी आईपीथन नोटबुक में बहुत बड़े डेटा सेट के साथ काम करता हूं। कभी-कभी एक एकल पांडा डेटाफ्रेम 1 + जीबी मेमोरी लेगा, इसलिए मैं कई प्रतियां रखने के लिए बर्दाश्त नहीं कर सकता।आईपीथॉन नोटबुक

मुझे जो मिला है वह यह है कि यदि मैं इस तरह के मैट्रिक्स पर एक ऑपरेशन करने की कोशिश करता हूं, और एक त्रुटि उठाई जाती है, तो मुझे स्मृति वापस नहीं मिलती है - कुछ इंटरमीटेंट चर को अभी भी कहीं भी ट्रैक किया जा रहा है। समस्या यह है कि, मुझे नहीं पता कि यह कहां और मुक्त नहीं कर सकता!

उदाहरण के लिए, नीचे दी गई छवि सेल को निष्पादित करने के बार-बार प्रयासों के बाद मेमोरी खपत दिखाती है (ग्राफ़ में प्रत्येक चरण सेल को निष्पादित करने के प्रयास से मेल खाता है)। हर बार स्मृति का एक नया ब्लॉक खपत होता है जिसे कभी जारी नहीं किया जाता है।

Memory usage while executing a cell that raises an error

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

धन्यवाद!

+0

मुझे जुपीटर उपभोग करने के तरीके के साथ बहुत अधिक समस्या है। मैंने अभी तक समस्या के सटीक स्रोत की पहचान नहीं की है, लेकिन जुपीटर दिन के लिए सर्वर पर रहता है और नोटबुक अक्सर खोले जाते हैं और बंद होते हैं। मैं इस https://github.com/ipython/ipython/issues/8267 मुद्दे पर आया, और सोचा कि यह किसी भी तरह से जुड़ा हुआ हो सकता है। प्रस्तावित समाधान (अद्यतन 'jsonschema') ने मेरी मदद नहीं की, लेकिन आपके लिए काम कर सकता है –

+0

लिंक के लिए @Pocin धन्यवाद। जुपीटर परियोजना पर एक और मुद्दा उठाया गया है: https://github.com/jupyter/notebook/issues/642। शायद आप इस अनुभव पर अधिक जानकारी प्राप्त करने में मदद करने के लिए अपने अनुभव के साथ एक टिप्पणी जोड़ सकते हैं। –

+0

आप किस मंच पर हैं और आप स्मृति की निगरानी के लिए क्या उपयोग कर रहे हैं? संबंधित मुद्दों को ट्रैक करने की कोशिश कर रहा है .. – dartdog

उत्तर

2

issue 642 से संबंधित जिथब पर चर्चा के अनुसार, jsonschema 2.4 में ज्ञात स्मृति रिसाव है। Jsonschema 2.5.1 को अद्यतन करने के बाद, मुझे अब यह समस्या नहीं है।

तो, यदि आप पुराने ढांचे का उपयोग कर रहे हैं और इस समस्या को देख रहे हैं, तो आपको कम से कम jsonschema को अपग्रेड करना होगा।

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