यह त्रुटि संदेश इंगित करता है कि डिवाइस (जैसे GPU) को आरंभ करते समय, अपर्याप्त मेमोरी थी, जिसके परिणामस्वरूप OpenCL कमांड clEnqueueNDRangeKernel() मेमोरी आवंटन विफल हो गया (CL_MEM_OBJECT_ALLOCATION_FAILURE)। यह आमतौर पर जीपीयू के लिए अपर्याप्त उपलब्ध मेमोरी से संबंधित है, संभवतः निम्नलिखित कारणों से:
अपर्याप्त जीपीयू वीडियो मेमोरी : आपके जीपीयू में हैशकैट या अन्य उपकरणों द्वारा आवश्यक कार्यों को संभालने के लिए पर्याप्त वीडियो मेमोरी नहीं है । उदाहरण के लिए, जब आप एक बहुत बड़ी हैश फ़ाइल को क्रैक करने की कोशिश करते हैं या बहुत अधिक क्रैकिंग शक्ति का उपयोग करते हैं, तो वीडियो मेमोरी आवश्यकताएं काफी बढ़ जाती हैं ।
अन्य प्रक्रियाएँ GPU मेमोरी लेती हैं : आपके GPU पर अन्य प्रक्रियाएँ चल रही हो सकती हैं जो बहुत सारी वीडियो मेमोरी लेती हैं, जिससे हैशकैट पर्याप्त मेमोरी आवंटित करने में असमर्थ हो जाता है ।
GPU ड्राइवर समस्याएं : कभी-कभी, GPU ड्राइवर संस्करण असंगत होते हैं या ऐसे बग होते हैं जो मेमोरी प्रबंधन में समस्याएं पैदा कर सकते हैं । ड्राइवर को अपडेट करने से इस समस्या को हल करने में मदद मिल सकती है ।
मेमोरी आवंटन सीमा : कुछ OpenCL कार्यान्वयन में व्यक्तिगत मेमोरी आवंटन के लिए आकार सीमा हो सकती है । यदि आपके कार्य के लिए आवश्यक एकल मेमोरी ब्लॉक इस सीमा से अधिक है, तो मेमोरी आवंटन विफलता भी हो सकती है ।
हमले के पैरामीटर को कम करें:
वीडियो मेमोरी उपयोग को कम करने के लिए बैच का आकार (--workload-profile या -n और -u पैरामीटर) कम करें ।
एक छोटी हैश सूची का उपयोग करके चलाया जाता है या बड़ी फ़ाइलों को छोटे भागों में विभाजित करता है ।
GPU पर कब्जा करने वाली अन्य प्रक्रियाओं को बंद करें :
पुष्टि करें कि कोई अन्य प्रक्रिया GPU का उपयोग नहीं कर रही है । आप वर्तमान वीडियो मेमोरी उपयोग की जांच करने के लिए कार्य प्रबंधक (Windows) या nvidia-smi (Linux/Windows, NVIDIA GPU के लिए) का उपयोग कर सकते हैं ।
डिवाइस चयन को समायोजित करें :
-d पैरामीटर का उपयोग करके विभिन्न डिवाइस (यदि कई GPU हैं) का चयन करें ।
अपने GPU ड्राइवर को अपडेट या पुनः स्थापित करें:
सुनिश्चित करें कि आपका GPU ड्राइवर नवीनतम संस्करण में है, खासकर जब आप नए GPU या ऑपरेटिंग सिस्टम संस्करण का उपयोग कर रहे हों ।
लोअर हैश एल्गोरिदम पैटर्न का उपयोग करें :
लोअर पैटर्न का उपयोग करना, यदि लागू हो, तो मेमोरी आवश्यकताओं को कम कर सकता है ।
अधिक भौतिक मेमोरी जोड़ें :
यदि आपके पास कई GPU हैं, तो भौतिक मेमोरी जोड़ने या अधिक मेमोरी वाले GPU पर स्विच करने पर विचार करें ।
उपरोक्त विधियों की कोशिश करके, आपको अपर्याप्त मेमोरी समस्या से निपटने के लिए एक उपयुक्त समाधान खोजने में सक्षम होना चाहिए ।