बड़ी फ़ाइलों के md5 योग की गणना करते समय, मुझे एक सीपीयू कोर कूद 100% तक लगता है, हालांकि यह लंबे समय तक लेता है, अन्य सभी कोर निष्क्रिय रहता है।क्या एमडी 5 कई कोर/धागे में चलाने के लिए टूटा जा सकता है?
एमडी 5 की मेरी प्राथमिक समझ पूरी प्रक्रिया पूरी तरह से रैखिक है, जहां मूल्य पिछले सभी मानों पर निर्भर हैं, और ऐसा कुछ भी नहीं है जिसे हम बहु-थ्रेडेड बनाने के लिए कर सकते हैं। क्या ये सच है?
या वहाँ एक रास्ता वर्गों में फ़ाइलों को तोड़ने के लिए है, की गणना < कुछ > बहु कोर का उपयोग कर कई हिस्सों पर, और फिर अंतिम md5 में उन < कुछ > मूल्यों गठबंधन?
एमडी 5 एसयूएम की गणना करने के लिए हम जिस लाइब्रेरी का उपयोग कर रहे हैं वह http://libmd5-rfc.sourceforge.net/ है, लेकिन यदि मैं कई कोरों में md5sum को तोड़ना संभव था तो मैं एक अलग से स्विच करूँगा ताकि यह तेज़ी से पूरा हो सके।
(नोट:। Md5 के अलावा कुछ करने के लिए बदल रहा है सवाल नहीं है, न ही यह क्योंकि अन्य बंद प्रणालियों के किया जा सकता है जो इस इंटरफेस और न ही md5 का उपयोग कर की सुरक्षा के बारे में इस सवाल यह है कि करने के लिए।)
क्या आपने इसके लिए Google किया था? "समांतर कार्यान्वयन एमडी 5" के लिए पहली हिट में से एक है: http://wwwcip.cs.fau.de/~spjsschl/md5.pdf, जो दिखाता है कि संक्षिप्त उत्तर "हां, यह कर सकता है।" आपके "नोट" के लिए –
+1। यद्यपि तथ्य यह है कि आप मुद्दों से अवगत हैं, इसका तात्पर्य है कि शायद आपको उनके बारे में कुछ करने पर विचार करना चाहिए ... – Ben
@ जेरीकॉफिन मुझे लगता है कि लेख थोड़ा भ्रामक है। मैंने इकट्ठा किया कि वे पासवर्ड हैशिंग के लिए एमडी 5 के एकाधिक पुनरावृत्तियों के समानांतर थे, एमडी 5 एल्गोरिदम स्वयं समानांतर नहीं। उनका अन्य अनुकूलन 4 32-बिट रजिस्टरों के बजाय एक बड़े 128-बिट एसएसई रजिस्टर का उपयोग करना था। – greg