मैं अपने कार्यक्रम की गति को अधिकतम करने के लिए प्रयास कर रहा हूं (वास्तविक समय में परिणाम प्राप्त करने के लिए) और हार्ड ड्राइव से डेटा की अनावश्यक लोडिंग से बचें।मेरे कार्यक्रम के लिए जितना संभव हो उतना रैम का उपयोग कैसे करें?
प्रोग्राम छवियों की एक बड़ी मात्रा को संसाधित करना है और मैं जितना संभव हो उतना संसाधित डेटा रैम में संभालना चाहता हूं। लेकिन मुझे पता चला कि malloc
8 जीबी रैम (विंडोज 7 64-बिट) होने पर भी 2 जीबी से अधिक आवंटित नहीं होगा।
मैं अपने प्रोग्राम को जितना संभव हो उतना रैम उपयोग कर सकता हूं?
यदि आप 64-बिट्स लिनक्स पर स्विच करते हैं तो आप 2 जीबी (शायद लगभग 7 या 8 जीबी) से अधिक 'malloc' करने में सक्षम होंगे। –
याद रखें कि उदा। 'malloc' स्मृति की निरंतर ब्लॉक आवंटित करता है। यह बस हो सकता है कि आपके लिए पर्याप्त कोई ब्लॉक न हो। यह भी याद रखें कि भले ही आपके पास 8 जीबी भौतिक रैम है, फिर भी सभी एप्लिकेशन उस मेमोरी को साझा करते हैं, और जब तक कि आप सभी मेमोरी को लगातार पढ़/लिखते नहीं हैं, तब इसके कुछ हिस्सों को डिस्क पर बदल दिया जा सकता है। –
क्या आप सुनिश्चित हैं कि 64 बिट्स मोड में 64 बिट्स निष्पादन योग्य में आपका प्रोग्राम संकलित किया गया है? –