विषय पर बढ़ें

डोमेन विभाजन

कई प्रक्रियाओं से बड़े मेश का समानांतर विश्लेषण करते समय पहले एकल-डोमेन मेश को उपडोमेनों में विभाजित करना और प्रत्येक प्रक्रिया को सौंपे गए क्षेत्र तथा डोमेनों के बीच संचार के लिए आवश्यक जानकारी पहले से उत्पन्न करना आवश्यक है। इस पूर्वप्रसंस्करण को डोमेन विभाजन कहते हैं।

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 से निर्दिष्ट किया जाता है।

नोड-आधारित विभाजन की अवधारणा

चित्र 10.1 नोड-आधारित विभाजन की अवधारणा

प्रत्येक उपडोमेन अपने आंतरिक नोड, उन आंतरिक नोडों वाले एलिमेंट और उन एलिमेंटों को बनाने वाले नोड बनाए रखता है।

नोड-आधारित विभाजन में प्रत्येक उपडोमेन द्वारा बनाए रखे गए नोड और एलिमेंट

चित्र 10.2 नोड-आधारित विभाजन में प्रत्येक उपडोमेन द्वारा बनाए रखे गए नोड और एलिमेंट

नोड-आधारित विभाजन की संचार तालिकाओं में निम्न जानकारी होती है।

  • इम्पोर्ट नोड: किसी उपडोमेन में उपयोग किए जाने वाले वे नोड जिनका स्वामित्व किसी अन्य उपडोमेन के पास है।
  • एक्सपोर्ट नोड: ऐसे आंतरिक नोड जो किसी अन्य उपडोमेन के इम्पोर्ट नोड हैं।
  • साझा एलिमेंट: अन्य उपडोमेनों के साथ साझा किए गए एलिमेंट।

नोड-आधारित विभाजन में इम्पोर्ट नोड

चित्र 10.3 नोड-आधारित विभाजन में इम्पोर्ट नोड

नोड-आधारित विभाजन में एक्सपोर्ट नोड

चित्र 10.4 नोड-आधारित विभाजन में एक्सपोर्ट नोड

नोड-आधारित विभाजन में साझा एलिमेंट

चित्र 10.5 नोड-आधारित विभाजन में साझा एलिमेंट

एलिमेंट-आधारित विभाजन

एलिमेंट-आधारित विभाजन में प्रत्येक एलिमेंट ठीक एक स्वामी उपडोमेन को सौंपा जाता है। नोड पड़ोसी उपडोमेनों में ओवरलैप के साथ बनाए रखे जाते हैं। इनपुट में इसे !PARTITION, TYPE=ELEMENT-BASED से निर्दिष्ट किया जाता है।

एलिमेंट-आधारित विभाजन की अवधारणा

चित्र 10.6 एलिमेंट-आधारित विभाजन की अवधारणा

प्रत्येक उपडोमेन अपने आंतरिक एलिमेंट, उन आंतरिक एलिमेंटों को बनाने वाले नोड और उन नोडों वाले एलिमेंट बनाए रखता है।

एलिमेंट-आधारित विभाजन में प्रत्येक उपडोमेन द्वारा बनाए रखे गए नोड और एलिमेंट

चित्र 10.7 एलिमेंट-आधारित विभाजन में प्रत्येक उपडोमेन द्वारा बनाए रखे गए नोड और एलिमेंट

एलिमेंट-आधारित विभाजन की संचार तालिकाओं में निम्न जानकारी होती है।

  • इम्पोर्ट एलिमेंट: किसी उपडोमेन में उपयोग किए जाने वाले वे एलिमेंट जिनका स्वामित्व किसी अन्य उपडोमेन के पास है।
  • एक्सपोर्ट एलिमेंट: ऐसे आंतरिक एलिमेंट जो किसी अन्य उपडोमेन के इम्पोर्ट एलिमेंट हैं।
  • साझा नोड: अन्य उपडोमेनों के साथ साझा किए गए नोड।

एलिमेंट-आधारित विभाजन में इम्पोर्ट एलिमेंट

चित्र 10.8 एलिमेंट-आधारित विभाजन में इम्पोर्ट एलिमेंट

एलिमेंट-आधारित विभाजन में एक्सपोर्ट एलिमेंट

चित्र 10.9 एलिमेंट-आधारित विभाजन में एक्सपोर्ट एलिमेंट

एलिमेंट-आधारित विभाजन में साझा नोड

चित्र 10.10 एलिमेंट-आधारित विभाजन में साझा नोड

किसी भी विभाजन प्रकार में, 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 या अधिक करने से प्रीकंडीशनर की गुणवत्ता सुधर सकती है।

MPI समानांतर गणना में प्रथम-क्रम टेट्राहेड्रल एलिमेंट 341 के साथ चयनात्मक edge/nodal smoothing सूत्रीकरण (FORM341=SELECTIVE_ESNS) उपयोग करने पर भी ओवरलैप गहराई 2 या अधिक आवश्यक है। edge-आधारित और node-आधारित smoothing लक्ष्य एलिमेंट से सटे एलिमेंटों पर राशियों का औसत लेते हैं, इसलिए किसी उपडोमेन में कठोरता संयोजन के लिए दो आसन्नता-परत दूर के एलिमेंटों की जानकारी चाहिए; डिफ़ॉल्ट DEPTH=1 पर डोमेन सीमा के पास smoothing अपर्याप्त होती है। एलिमेंट सूत्रीकरण के विवरण के लिए एलिमेंट लाइब्रेरी देखें।

ओवरलैप गहराई बढ़ाने पर पड़ोसी उपडोमेनों द्वारा बनाए रखे जाने वाले नोड और एलिमेंट बढ़ते हैं, जिससे मेमोरी उपयोग और संचार मात्रा दोनों बढ़ते हैं। अभिसरण में सुधार और गणनात्मक लागत में वृद्धि के संतुलन के आधार पर इसे सेट करें। प्रीकंडीशनर चयन के लिए सॉल्वर और प्रीकंडीशनर देखें।

संपर्क बिंदुओं का प्रबंधन

संपर्क पेयर वाले मेश का विभाजन करते समय !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 फ़ाइल आउटपुट होती है। UCD फ़ाइल का उपयोग MicroAVS जैसे विज़ुअलाइज़ेशन टूल के साथ डोमेन नंबर और विभाजन सीमाएँ देखने के लिए किया जा सकता है।

डोमेनों की संख्या, विभाजन विधि या ओवरलैप गहराई बदलने के बाद विभाजित डोमेनों में असंतुलन या अप्राकृतिक खंडन की जाँच करना महत्वपूर्ण है। UCD आउटपुट समानांतर विश्लेषण चलाने से पहले विभाजन की वैधता सत्यापित करने के लिए सहायक फ़ंक्शन है।

संबंधित विषय