मैं जानना चाहता हूं कि बफर आवंटित करने से पहले मेरे डिवाइस पर कितनी मुफ्त मेमोरी है। क्या यह संभव है? मैं वहाँ कुल स्मृति के लिए CL_DEVICE_GLOBAL_MEM_SIZE
, और एक वस्तु का अधिकतम आकार के लिए CL_DEVICE_MAX_MEM_ALLOC_SIZE
पता है, लेकिन मैं वर्तमान स्मृति राज्य जानना चाहूंगा।मैं ओपनसीएल में उपलब्ध डिवाइस मेमोरी कैसे निर्धारित करूं?
यह खड़ा है जैसा कि मैंने शायद ओपन विक्रेता विशिष्ट एक्सटेंशन का उपयोग करने के लिए जा रहा हूँ।
यह वहाँ कोई रास्ता नहीं है पता करने के लिए अच्छा है, लेकिन आप क्यों कह सकते हैं कि कोई आवश्यकता नहीं है? मैं स्मृति में/बाहर स्वैप नहीं करना चाहता, और चूंकि मैं जीएल के साथ भी काम कर रहा हूं, मैं जीएल की सभी मेमोरी नहीं खा रहा हूं। – nullspace
कोई ज़रूरत नहीं है क्योंकि चालक इसका ख्याल रखता है। जीएल संसाधन भी वर्चुअलाइज्ड हैं। स्वैपिंग वास्तव में खराब नहीं है, यह केवल वीआरएएम में डेटा को राम में कॉपी करेगा, और जब आवश्यक हो तो उपाध्यक्ष। यदि आप पाते हैं कि पर्याप्त वीआरएएम शेष नहीं है तो आप क्या करेंगे? –
वर्तमान में, यह जीएल सबसाइटम को दुर्घटनाग्रस्त कर रहा है और इसे फिर से शुरू करने के लिए टीडीआर की प्रतीक्षा करता है। यह संभव है कि यह मेरे कोड में एक बग के कारण है, लेकिन छोटे बफर आवंटित करने से यह ठीक हो जाता है। मैं एक इष्टतम बफर आकार निर्धारित करना चाहता हूं। तो यह एक निवारक चीज से अधिक है। – nullspace