2011-05-26 8 views
11

मेथेमेटिका में करने के लिए पार मंच विकल्प, एक Save (मीटर फ़ाइलें) या DumpSave (.mx फ़ाइलें) के साथ कार्यक्षेत्र का आंशिक राज्य मध्यवर्ती परिणाम को बचा सकता है /।फास्ट करने के लिए लोड एमएक्स फ़ाइलें (Mathematica)

मीटर फ़ाइलें पोर्टेबल हैं, लेकिन बहुत धीमे लोड होते हैं (बड़े डेटा के साथ)।

.mx फ़ाइलें लोड करने के लिए तेजी से कर रहे हैं, लेकिन प्लेटफार्मों/आर्किटेक्चर के बीच पोर्टेबल नहीं हैं।

वहाँ एक रास्ता है जेनेरिक मैथमैटिका एक्सप्रेशन को ऐसे तरीके से सहेजें जिससे उन्हें लोड किया जा सके, और वे प्लेटफॉर्म के बीच पोर्टेबल हैं? क्या किसी ने प्रयोग किया है/ऐसा करने के लिए विभिन्न तरीकों का बेंचमार्क किया?

एक संभावित समाधान .m फ़ाइलों (क्रॉस-प्लेटफ़ॉर्म) को सहेजना है, फिर उन्हें नए प्लेटफ़ॉर्म (एक बार ऑपरेशन) पर काम शुरू करते समय .mx फ़ाइलों में कनवर्ट करना है। .m फ़ाइलों को .mx फ़ाइलों में कनवर्ट करने का एक पूर्ण स्वचालित तरीका है?

+4

आधिकारिक समाचार समूह में संबंधित धागा: ["प्राप्त करें \ [" file.mx "\] काम नहीं करता है"] (http://groups.google.com/d/topic/comp.soft-sys.math .mathematica/8ErMYTzcBY4/चर्चा)। उत्तर [डेविड बेली द्वारा] (http://groups.google.com/d/msg/comp.soft-sys.math.mathematica/8ErMYTzcBY4/E5Rk9hlgcsMJ) और [\t अल्बर्ट रेटी] (https: // समूह। google.com/d/msg/comp.soft-sys.math.mathematica/8ErMYTzcBY4/nntc64q-xOcJ) सबसे उपयोगी (IMHO) हैं। –

उत्तर

4
  • पदों से एलेक्सी जुड़ा हुआ:

    str=OpenWrite[file,BinaryFormat->True]; 
    
    BinaryWrite[str,Compress[expr],"TerminatedString"]; 
    
    Close[str]; 
    

    यह काफी के रूप में तेजी से एक mx फ़ाइल का उपयोग कर के रूप में नहीं है, लेकिन यह अभी भी बहुत तेजी से है।

    डेविड बेली


    एक अन्य विकल्प हो रहा है WDX (Wolfram डेटा विनिमय) जो मैं मशीनों की एक किस्म का उपयोग कर हूँ समस्याओं के बिना और यह भी करने लगता है जो पोर्टेबल होना, वास्तव में की तरह इस्तेमाल किया जा सकता एमएक्स फाइलें, बाइनरी है, दस्तावेज है और इस प्रकार मैं आधिकारिक रूप से समर्थित मानता हूं। और इसका उपयोग डेटा पैकेट कार्यक्षमता द्वारा किया जाता है, इसलिए मुझे लगता है कि यह उचित रूप से निष्पादक है और सभी प्रणालियों पर अच्छी तरह से परीक्षण किया गया है (एक धारणा है कि मेरा अनुभव अब तक समर्थन करता है)।

    (अल्बर्ट Retey, यह भी एलेक्सी के लिंक से द्वारा जवाब से अंश)

लेकिन इन Save/DumpSave के रूप में काम नहीं करते हैं, यह है कि में यह expr की FullDefinition बचाने नहीं करता है, केवल स्पष्ट मूल्य expr का।

+0

"लेकिन यह सेव/डंपसेव के रूप में काम नहीं करता है।" बल्कि गूढ़ है। क्या आप आगे समझा सकते हैं? –

+0

@bel अब बेहतर है? –

+0

@Szabolcs संपादित करने के लिए धन्यवाद –

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