प्रदेश विभाजन¶
मोठ्या मेशचे अनेक प्रक्रियांवर समांतर विश्लेषण करताना एकाच प्रदेशातील मेश अनेक उपप्रदेशांत विभागून, प्रत्येक प्रक्रियेचा प्रदेश आणि प्रदेशांमधील संप्रेषणासाठी आवश्यक माहिती आधीच निर्माण करावी लागते. या पूर्वप्रक्रियेला प्रदेश विभाजन म्हणतात.
FrontISTR च्या समांतर गणनेत hecmw_part1 एक-प्रदेश मेश उपप्रदेशांत विभागते आणि वितरित मेश डेटा तयार करते. तयार झालेला वितरित मेश डेटा समांतर fistr1 वाचते आणि प्रदेशांतर संप्रेषणासाठी आवश्यक माहितीसह समांतर सॉल्वरमध्ये वापरते.
या पृष्ठावर प्रदेश विभाजनातील विभाजन प्रकार, विभाजन पद्धत, ओव्हरलॅप खोली आणि संपर्क बिंदूंचे हाताळणे समजावले आहे. hecmw_part1 चालविण्याची पद्धत, नियंत्रण फाइलचा प्रत्यक्ष स्वरूप आणि त्रुटी संदेश यासाठी संबंधित विषय पहा.
कार्याचा आढावा¶
प्रदेश विभाजन म्हणजे एक-प्रदेश मेश अनेक उपप्रदेशांत विभागण्याची प्रक्रिया. FrontISTR मध्ये विभाजन प्रकार, विभाजन पद्धत, प्रदेश संख्या आणि ओव्हरलॅप खोली यांचे संयोजन करून वितरित मेश डेटा तयार केला जातो.
| निवडीचा निकष | मुख्य पर्याय | भूमिका |
|---|---|---|
| विभाजन प्रकार | नोड-आधारित विभाजन, घटक-आधारित विभाजन | नोड किंवा घटक यापैकी कोणत्या एककावर मालकी ठरवायची ते निश्चित करते. |
| विभाजन पद्धत | RCB, METIS (pMETIS / kMETIS) | प्रदेश सीमा कशा तयार करायच्या ते ठरविते. |
| प्रदेश संख्या | कोणताही धन पूर्णांक (RCB मध्ये \(2^n\)) | वितरित मेश डेटातील उपप्रदेशांची संख्या ठरविते. साधारणतः MPI प्रक्रियांच्या संख्येशी ती समान ठेवली जाते. |
| ओव्हरलॅप खोली | 1 किंवा त्याहून मोठा पूर्णांक | शेजारील प्रदेशांनी सामायिकपणे धरून ठेवायची व्याप्ती ठरविते. नोड-आधारित विभाजनात निर्दिष्ट केली जाते. |
| संप्रेषण तक्ता | आयात/निर्यात माहिती, सामायिक माहिती | शेजारील उपप्रदेशांमधील आवश्यक डेटा देवाणघेवाण परिभाषित करतो. प्रदेश विभाजनावेळी आपोआप तयार होतो. |
संप्रेषण तक्ता वितरित मेश डेटात समाविष्ट असल्याने सामान्य विश्लेषणात वापरकर्त्याने तो थेट संपादित करण्याची गरज नसते. समांतर fistr1 हा वितरित मेश डेटा वाचून MUMPS सारखी समांतर थेट पद्धत किंवा पुनरावृत्ती पद्धत वापरून रेषीय समीकरणे सोडवते.
प्रदेश विभाजनाची निवड¶
सामान्य संरचनात्मक विश्लेषण आणि उष्णता वहन विश्लेषणासाठी प्रथम नोड-आधारित विभाजनाचा विचार करावा. नोड-आधारित विभाजनामुळे समांतर परिमित घटक विश्लेषणात आवश्यक नोड-मूल्यांचे संप्रेषण हाताळणे सोपे होते आणि ओव्हरलॅप खोलीही निर्दिष्ट करता येते. घटक-आधारित विभाजन हे संयुक्त विश्लेषणांसारख्या, विभाजनानंतरची माहिती घटक-केंद्रित पद्धतीने हाताळायची असलेल्या उपयोगांसाठी पर्याय आहे.
विभाजन पद्धत आकार आणि प्रदेश संख्येनुसार निवडा. साध्या आकारात प्रदेश संख्या \(2^n\) ठेवता येत असल्यास RCB हा साधा आणि स्थिर पर्याय आहे. गुंतागुंतीच्या आकारासाठी किंवा कोणत्याही प्रदेश संख्येसाठी विभाजन करायचे असल्यास आलेख-विभाजनावर आधारित METIS विचारात घ्या.
| समस्येचे वैशिष्ट्य | शिफारस केलेली निवड |
|---|---|
| संरचनात्मक/उष्णता वहन विश्लेषणातील प्रमाणित समांतर विश्लेषण | नोड-आधारित विभाजन |
| संयुक्त विश्लेषणासारख्या घटक-केंद्रित वितरित माहितीच्या उपयोगासाठी | घटक-आधारित विभाजन |
| साधारण आयतघन आकार आणि प्रदेश संख्या \(2^n\) | RCB |
| गुंतागुंतीचा आकार किंवा कोणतीही प्रदेश संख्या | METIS |
| SAINV पूर्वशर्तीकरण वापरणारी संपर्क समस्या/MPC बंधन समस्या | नोड-आधारित विभाजनात ओव्हरलॅप खोली 2 किंवा अधिक |
प्रदेश संख्या साधारणतः MPI प्रक्रियांच्या संख्येशी समान ठेवली जाते. समांतर चालविण्याची प्रक्रिया आणि प्रक्रिया-संख्या निर्दिष्ट करण्यासाठी समांतर प्रक्रियेद्वारे विश्लेषण पहा. SAINV पूर्वशर्तीकरण आणि ओव्हरलॅप खोलीतील संबंधासाठी सॉल्वर आणि पूर्वशर्तीकरण देखील पहा.
विभाजन प्रकार¶
विभाजन प्रकार मेशमधील कोणत्या एककाला एकमेव मालकीचा उपप्रदेश द्यायचा ते ठरवितो. नोड-आधारित विभाजनात नोडांची मालकी, तर घटक-आधारित विभाजनात घटकांची मालकी ठरविली जाते. दोन्ही बाबतीत शेजारील उपप्रदेशांबरोबर गणनेस आवश्यक माहिती ओव्हरलॅप म्हणून ठेवली जाते.
नोड-आधारित विभाजन¶
नोड-आधारित विभाजनात प्रत्येक नोडसाठी एकमेव मालकीचा उपप्रदेश ठरविला जातो. शेजारील उपप्रदेशांत घटक ओव्हरलॅप म्हणून ठेवले जातात. इनपुटमध्ये !PARTITION, TYPE=NODE-BASED ने निर्दिष्ट करा.

प्रत्येक उपप्रदेश अंतर्गत नोड, त्या अंतर्गत नोडांचा समावेश असलेले घटक आणि ते घटक बनविणारे नोड ठेवतो.

नोड-आधारित विभाजनाच्या संप्रेषण तक्त्यात पुढील माहिती असते.
- आयात नोड: उपप्रदेशात वापरल्या जाणाऱ्या नोडांपैकी इतर उपप्रदेशाच्या मालकीचे नोड.
- निर्यात नोड: इतर उपप्रदेशांचे आयात नोड असलेले अंतर्गत नोड.
- सामायिक घटक: इतर उपप्रदेशांबरोबर सामायिक केलेले घटक.



घटक-आधारित विभाजन¶
घटक-आधारित विभाजनात प्रत्येक घटकासाठी एकमेव मालकीचा उपप्रदेश ठरविला जातो. शेजारील उपप्रदेशांत नोड ओव्हरलॅप म्हणून ठेवले जातात. इनपुटमध्ये !PARTITION, TYPE=ELEMENT-BASED ने निर्दिष्ट करा.

प्रत्येक उपप्रदेश अंतर्गत घटक, ते बनविणारे नोड आणि त्या नोडांचा समावेश असलेले घटक ठेवतो.

घटक-आधारित विभाजनाच्या संप्रेषण तक्त्यात पुढील माहिती असते.
- आयात घटक: उपप्रदेशात वापरल्या जाणाऱ्या घटकांपैकी इतर उपप्रदेशाच्या मालकीचे घटक.
- निर्यात घटक: इतर उपप्रदेशांचे आयात घटक असलेले अंतर्गत घटक.
- सामायिक नोड: इतर उपप्रदेशांबरोबर सामायिक केलेले नोड.



दोन्ही विभाजन प्रकारांसाठी संप्रेषण तक्ता hecmw_part1 आपोआप तयार करून वितरित मेश डेटात लिहिते. त्यामुळे सामान्य विश्लेषणात वापरकर्त्याला आयात/निर्यात माहिती स्वतः तयार करण्याची गरज नसते.
विभाजन पद्धती¶
विभाजन पद्धत उपप्रदेशांच्या सीमा कशा ठरवल्या जातात हे दर्शविते. FrontISTR मध्ये निर्देशांक मूल्यांवर आधारित RCB आणि आलेख-विभाजनावर आधारित METIS वापरता येतात.
| विभाजन पद्धत | वैशिष्ट्ये | मुख्य बंधने/लक्षात ठेवण्याच्या बाबी |
|---|---|---|
| RCB | निर्देशांक मूल्यांच्या तुलनेवरून पुनरावर्ती द्विभाजन करते. साध्या आकारांचे जलद विभाजन करता येते. | प्रदेश संख्या \(2^n\) पुरती मर्यादित आहे. विभाजन अक्ष निर्दिष्ट करावा लागतो. |
| pMETIS | आलेख-विभाजनावर आधारित असून प्रदेशांतील जोडणीचा विचार करून विभाजन करते. | METIS सक्षम केलेल्या बिल्डमध्ये उपलब्ध. |
| kMETIS | अनेक प्रदेशांच्या आलेख-विभाजनावर आधारित असून गुंतागुंतीच्या आकारांमध्येही प्रदेश सीमा तयार करणे सोपे करते. | METIS सक्षम केलेल्या बिल्डमध्ये उपलब्ध. |
RCB म्हणजे Recursive Coordinate Bisection. निर्देशांक अक्षांनुसार मेशचे द्विभाजन पुन्हा पुन्हा केले जाते. प्रदेश संख्या \(2^n\) ठेवता येत असल्यास ते योग्य असून, आयतघनासारख्या साध्या आकारांसाठी हाताळणे सोपे आहे.
METIS मेशची जोडणी आलेख म्हणून हाताळते आणि आलेख-विभाजनाने उपप्रदेश तयार करते. आकार गुंतागुंतीचा असल्यास किंवा प्रदेश संख्या \(2^n\) पर्यंत मर्यादित ठेवायची नसल्यास हा पर्याय उपयुक्त आहे. METIS वापरण्यासाठी बिल्डवेळी METIS ग्रंथालय सक्षम असणे आवश्यक आहे. अवलंबित्वांसाठी आवश्यक आणि पर्यायी अवलंबित्व ग्रंथालये पहा.
ओव्हरलॅप खोली¶
ओव्हरलॅप खोली म्हणजे शेजारील उपप्रदेशांनी सामायिकपणे ठेवलेल्या व्याप्तीतील स्तरांची संख्या. नोड-आधारित विभाजनात !PARTITION च्या DEPTH प्राचलाने 1 किंवा अधिक पूर्णांक निर्दिष्ट करता येतो. वगळल्यास ओव्हरलॅप खोली 1 असते.
सामान्य समांतर विश्लेषणासाठी DEPTH=1 पुरेसे असते. परंतु SAINV सारखे SAI-प्रकारचे पूर्वशर्तीकरण संपर्क किंवा MPC बंधन समस्यांसाठी वापरताना ओव्हरलॅप खोली 2 किंवा अधिक केल्याने पूर्वशर्तीकरणाची गुणवत्ता सुधारू शकते.
तसेच चतुष्फलकीय प्रथम-क्रम घटक 341 साठी निवडक कडा/नोड गुळगुळीतकरण मांडणी (FORM341=SELECTIVE_ESNS) MPI समांतर पद्धतीने वापरताना ओव्हरलॅप खोली 2 किंवा अधिक असणे आवश्यक आहे. कडा-आधारित/नोड-आधारित गुळगुळीतकरणात लक्ष्य घटकाच्या शेजारच्या घटकांची राशी सरासरी केली जाते; म्हणून उपप्रदेशाच्या आत दृढता असेंबल करण्यासाठी “शेजाऱ्याच्या शेजाऱ्याची” घटक माहिती लागते आणि पूर्वनिर्धारित DEPTH=1 मध्ये प्रदेश सीमेजवळ गुळगुळीतकरण अपुरे पडते. घटक मांडणीच्या तपशीलासाठी घटक ग्रंथालय पहा.
ओव्हरलॅप खोली वाढवल्यास शेजारील उपप्रदेशांनी ठेवलेले नोड आणि घटक वाढतात, त्यामुळे स्मृती वापर आणि संप्रेषणाचे प्रमाणही वाढते. अभिसरणातील सुधारणा आणि गणनाखर्चातील वाढ यांचा विचार करून मूल्य ठरवा. पूर्वशर्तीकरणाच्या निवडीसाठी सॉल्वर आणि पूर्वशर्तीकरण पहा.
संपर्क बिंदूंचे हाताळणे¶
संपर्क जोड्या असलेला मेश विभाजित करताना !PARTITION च्या CONTACT प्राचलाने संपर्क बिंदूंच्या प्रदेश-वाटपाची नीती निर्दिष्ट करता येते. संपर्क बिंदूंचे वाटप संपर्क शोध आणि संपर्क बंधन असलेल्या समांतर विश्लेषणाची स्थिरता व संप्रेषणाचे प्रमाण प्रभावित करते.
| मूल्य | भूमिका |
|---|---|
DEFAULT | प्रमाणित वाटप नीती वापरते. |
SIMPLE | संपर्क बिंदूंना विशेष वजन न देता सामान्य विभाजनास जवळची वाटप नीती वापरते. |
AGGREGATE | संपर्क जोड्यांशी संबंधित नोड समूह एकत्र ठेवण्याच्या दिशेने विभाजन करते. |
DISTRIBUTE | संपर्काच्या मास्टर बाजूचे नोड उपप्रदेशांमध्ये अति-पक्षपाती होऊ नयेत अशा दिशेने विभाजन करते. |
संपर्क नसलेल्या मेशमध्ये CONTACT प्राचलाचा विचार करण्याची गरज नाही. संपर्कासह समांतर विश्लेषणात अभिसरण किंवा भार-संतुलनात समस्या असल्यास संपर्क बिंदूंची वाटप नीती तपासा. इनपुट स्वरूपासाठी !PARTITION पहा.
यापासून स्वतंत्रपणे, CONTACT_OWNER प्राचलाने समांतर संपर्काची मालकी पद्धत निवडता येते. CONTACT “कसे विभाजित करायचे” हे ठरविते, तर CONTACT_OWNER “विभाजनानंतर कोणती बाजू जबाबदार असेल” हे ठरविते.
| मूल्य | भूमिका |
|---|---|
MASTER | मास्टर-मालकी पद्धत (वगळल्यास हीच). मास्टर पृष्ठे घटकाच्या मालकी प्रदेशानुसार विभागली जातात आणि स्लेव नोड प्रत्येक मास्टर-मालकी प्रदेशात प्रतिकृत केले जातात. |
SLAVE | स्लेव-मालकी पद्धत. स्लेव नोड फक्त त्याचा मालकी प्रदेश ठेवतो आणि त्या प्रदेशात संपूर्ण मास्टर पृष्ठ ठेवले जाते. |
परिमित घसरण (!CONTACT मधील INTERACTION=FSLID) मध्ये स्लेव नोड मास्टर पृष्ठाच्या प्रदेश-विभाजन सीमेतून जात असल्यास MASTER पद्धतीत सीमेवर शेजारी शोध तुटतो, संपर्क अवस्था आणि घर्षण इतिहास हरवतो आणि उत्तर प्रदेश विभाजन संख्येवर अवलंबून होते. SLAVE हे टाळते. हे फक्त TYPE=NODE-BASED असताना निर्दिष्ट करता येते; स्लेवची मालकी असलेल्या प्रदेशाचा स्मृती वापर मात्र वाढतो.
प्रदेश विभाजन प्रतिमेचा आउटपुट¶
!PARTITION चा UCD प्राचल निर्दिष्ट केल्यास विभाजन परिणाम तपासण्यासाठी UCD फाइल आउटपुट करता येते. MicroAVS सारख्या दृश्यांकन साधनांमध्ये प्रदेश क्रमांक आणि विभाजन सीमा तपासण्यासाठी ही फाइल वापरता येते.
प्रदेश संख्या, विभाजन पद्धत किंवा ओव्हरलॅप खोली बदलल्यानंतर विभाजित प्रदेशांत असमतोल किंवा अनैसर्गिक सूक्ष्म-विभाजन आहे का ते तपासणे महत्त्वाचे आहे. समांतर विश्लेषण चालवण्यापूर्वी विभाजनाची वैधता तपासण्यासाठी UCD आउटपुट हे सहाय्यक साधन आहे.
संबंधित विषय¶
- समांतर प्रक्रियेद्वारे विश्लेषण —
hecmw_part1चालविण्याची प्रक्रिया, इनपुट फाइल आणि वितरित मेश डेटा आउटपुटची तपासणी. - सॉल्वर आणि पूर्वशर्तीकरण — समांतर सॉल्वर, पूर्वशर्तीकरण, SAINV आणि ओव्हरलॅप खोलीतील संबंध.
- त्रुटी संदेशांची सूची —
hecmw_part1आणिfistr1मधील प्रमुख त्रुटी संदेश. - समांतर परिमित घटक पद्धत — प्रदेश विभाजन आणि समांतर परिमित घटक पद्धतीची सैद्धांतिक पार्श्वभूमी.
- !PARTITION — प्रदेश विभाजन युटिलिटी नियंत्रण डेटाचे इनपुट स्वरूप.