भौतिकी में GPU और एक्सेलेरेटर कंप्यूटिंग
ग्राफिक्स प्रोसेसिंग यूनिट (Graphics processing units) और अन्य एक्सेलेरेटर हजारों हल्के कोर पैक करते हैं जो भौतिकी सिमुलेशन के डेटा-पैरेलल अंकगणित में उत्कृष्ट प्रदर्शन करते हैं, आणविक गतिशीलता (molecular dynamics), लैटिस (lattice) और ग्रिड संगणनाओं के लिए बड़ी गति वृद्धि प्रदान करते हैं।
Definition
भौतिकी में GPU और एक्सेलेरेटर कंप्यूटिंग एक सिमुलेशन के डेटा-पैरेलल कर्नेल को निष्पादित करने के लिए कई सरल कोर वाले अत्यधिक समानांतर सह-प्रोसेसरों (highly parallel coprocessors) का उपयोग है, जो उपयुक्त भौतिकी वर्कलोड पर उच्च थ्रूपुट (throughput) प्राप्त करता है।
Scope
यह विषय भौतिकी के लिए एक्सेलेरेटर कंप्यूटिंग को कवर करता है: बड़े पैमाने पर डेटा-पैरेलल GPU मॉडल, मेमोरी पदानुक्रम (memory hierarchy) और मेमोरी-एक्सेस पैटर्न का महत्व, बल संगणना (force computation) और स्टेंसिल अपडेट (stencil updates) जैसे भौतिकी कर्नेल (kernels) को एक्सेलेरेटर पर मैप करना, और विषम CPU-GPU प्रोग्रामिंग के फायदे और नुकसान। यह प्रदर्शन और प्रोग्रामेबिलिटी दोनों को संबोधित करता है।
Core questions
- GPU कई भौतिकी सिमुलेशन के डेटा-पैरेलल अंकगणित के लिए क्यों उपयुक्त हैं?
- GPU मेमोरी पदानुक्रम प्राप्त करने योग्य प्रदर्शन को कैसे आकार देता है?
- कौन से भौतिकी कर्नेल एक्सेलेरेटर पर अच्छी तरह से मैप होते हैं और कौन से नहीं?
- विषम CPU-GPU सिमुलेशन कैसे व्यवस्थित किए जाते हैं?
Key theories
- बड़े पैमाने पर डेटा-पैरेलल निष्पादन
- GPU विभिन्न डेटा पर हजारों थ्रेड्स में एक ही ऑपरेशन चलाते हैं, जो उन सिमुलेशन से मेल खाते हैं जहां कई कणों या ग्रिड बिंदुओं पर समान अपडेट लागू किए जाते हैं, जिससे बड़े थ्रूपुट लाभ मिलते हैं।
- मेमोरी पदानुक्रम और एक्सेस पैटर्न
- GPU प्रदर्शन समेकित मेमोरी एक्सेस (coalesced memory access) और तेज़ ऑन-चिप मेमोरी के प्रभावी उपयोग पर निर्भर करता है, इसलिए एल्गोरिदम को इस तरह से पुनर्गठित किया जाना चाहिए ताकि कई कोर को डेटा मिलता रहे बजाय मेमोरी पर रुकने के।
- त्वरित भौतिकी कर्नेल
- आणविक गतिशीलता में बल मूल्यांकन (force evaluation), ग्रिड सॉल्वर में स्टेंसिल अपडेट (stencil updates) और क्षेत्र सिद्धांत में लैटिस अपडेट (lattice updates) को परिमाण के क्रम में गति वृद्धि के लिए GPU में पोर्ट किया गया है, जैसा कि प्रारंभिक पूरी तरह से GPU-आधारित आणविक गतिशीलता द्वारा प्रदर्शित किया गया है।
Clinical relevance
GPU त्वरण आधुनिक आणविक गतिशीलता, लैटिस क्वांटम क्रोमोडायनामिक्स (lattice quantum chromodynamics) और खगोल भौतिकी सिमुलेशन के अधिकांश हिस्से को शक्ति प्रदान करता है, और यही हार्डवेयर मशीन-लर्निंग वर्कफ़्लो (machine-learning workflows) का आधार है जिसका उपयोग भौतिकी संगणनाओं का विश्लेषण और त्वरण करने के लिए तेजी से किया जा रहा है।
History
सामान्य-उद्देश्य GPU कंप्यूटिंग 2000 के दशक के अंत में प्रोग्रामेबल शेडर (programmable shaders) और CUDA प्लेटफॉर्म के साथ शुरू हुई; भौतिकी एक प्रारंभिक अपनाने वाला था, जिसमें 2008 में पूरी तरह से GPU-आधारित आणविक गतिशीलता और उसके बाद GPU-त्वरित लैटिस क्वांटम क्रोमोडायनामिक्स आया, जिससे एक्सेलेरेटर सुपरकंप्यूटर में मानक बन गए।
Key figures
- Wen-mei Hwu
- David Kirk
- Joshua Anderson
Related topics
Seminal works
- kirkhwu2016
- anderson2008
Frequently asked questions
- कुछ भौतिकी कोड के लिए GPU इतने तेज़ क्यों होते हैं लेकिन दूसरों के लिए नहीं?
- GPU तब उत्कृष्ट प्रदर्शन करते हैं जब एक ही सरल ऑपरेशन को नियमित मेमोरी एक्सेस के साथ बड़ी मात्रा में डेटा पर लागू किया जाता है, जैसे कि बल या स्टेंसिल अपडेट में। भारी ब्रांचिंग (branching), अनियमित मेमोरी एक्सेस या बड़े सीरियल सेक्शन वाले कोड को बहुत कम लाभ होता है और वे धीमे भी चल सकते हैं।
- क्या GPU भौतिकी कंप्यूटिंग में CPU की जगह लेते हैं?
- नहीं। अधिकांश बड़े सिमुलेशन विषम होते हैं, भारी डेटा-पैरेलल कर्नेल के लिए GPU का उपयोग करते हैं जबकि CPU नियंत्रण प्रवाह (control flow), समन्वय और अनियमित कार्य को संभालते हैं, इसलिए दोनों का उपयोग एक साथ किया जाता है बजाय एक दूसरे की जगह लेने के।