17 पॉइंट द्वारा kuroneko 2023-07-21 | 3 टिप्पणियां | WhatsApp पर शेयर करें
  • 512MB RAM वाले Raspberry Pi Zero 2 पर Stable Diffusion चलाने के लिए एक लाइब्रेरी।
  • मेमोरी खपत के optimization पर फोकस करते हुए OnnxStream लाइब्रेरी विकसित की गई।
  • मॉडल को weights देने वाले components को अलग करके मेमोरी उपयोग को optimize किया गया।
    • सैद्धांतिक रूप से HTTP server से weights सीधे पास करके डिस्क पर कुछ भी लिखे बिना भी मॉडल चलाया जा सकता है।
  • नतीजतन, यह OnnxRuntime की तुलना में अधिकतम 55 गुना कम मेमोरी इस्तेमाल करता है, लेकिन 0.5~2 गुना धीमा है।
  • लेकिन Stable Diffusion में शामिल VAE मॉडल इस लाइब्रेरी का उपयोग करने पर भी लगभग 1GB RAM इस्तेमाल करता है।
    • VAE मॉडल में 8-bit static quantization (W8A8) के जरिए मेमोरी उपयोग को और optimize किया गया।
    • आखिरकार, असली RPI Zero 2 पर 3 घंटे में इमेज generate करने में सफलता मिली।
    • अंतिम रूप से लगभग 260MB RAM ही इस्तेमाल हुई।

3 टिप्पणियां

 
wkang586 2023-07-31

उस छोटे से बच्चे को और कितना सताओगे.....
लगता है इंसान ही सबसे विकृत creature है।

 
kuroneko 2023-07-21

वाकई हैरान करने वाला है। कई GB के मॉडल को 260MB RAM में चलाना...

3 घंटे लगने की बात भी Raspberry Pi की वजह से है; हाई-परफॉर्मेंस CPU पर यह जाहिर तौर पर तेज़ होगा।
RAM भी काफ़ी कम इस्तेमाल होगी।

कहीं ऐसा न हो कि आगे चलकर Serverless के साथ Edge पर चलाने का तरीका भी निकल आए....

 
ninebow 2023-07-21

ओह, यह काफ़ी दिलचस्प प्रोजेक्ट है। धन्यवाद!
लगता है CPU - RAM के बीच की bottleneck को कम करने के लिए भी काफी कोशिशें होंगी +_+