Məzmuna keç

Oblastların bölünməsi

Böyükmiqyaslı tor bir neçə proseslə paralel analiz edildikdə əvvəlcə bir oblastlı tor altoblastlara bölünməli və hər prosesə təyinat və oblastlararası rabitə üçün tələb olunan məlumat əvvəlcədən yaradılmalıdır. Bu ilkin emal mərhələsi oblastların bölünməsi adlanır.

FrontISTR paralel hesablamasında hecmw_part1 bir oblastlı toru altoblastlara bölür və paylanmış tor məlumatı yaradır. Yaradılmış paylanmış tor məlumatı paralel fistr1 tərəfindən oxunur və oblastlararası rabitə üçün tələb olunan məlumatla birlikdə paralel həlledici tərəfindən istifadə olunur.

Bu səhifədə oblastların bölünməsi üçün seçilən bölünmə növü, bölünmə üsulu, üst-üstə düşmə dərinliyi və kontakt nöqtələrinin emalı təsvir olunur. hecmw_part1 icra proseduru, konkret idarəetmə faylı sintaksisi və xəta mesajları üçün əlaqəli mövzulara baxın.

Ümumi baxış

Oblastların bölünməsi bir oblastlı torun bir neçə altoblasta bölünməsi prosesidir. FrontISTR bölünmə növünü, bölünmə üsulunu, oblastların sayını və üst-üstə düşmə dərinliyini birləşdirərək paylanmış tor məlumatı yaradır.

Seçim meyarı Əsas seçimlər Rolu
Bölünmə növü Düyün əsaslı bölünmə, element əsaslı bölünmə Sahibliyin düyünə, yoxsa elementə görə təyin edilməsini müəyyən edir.
Bölünmə üsulu RCB, METIS (pMETIS / kMETIS) Oblast sərhədlərinin necə yaradılacağını müəyyən edir.
Oblastların sayı İstənilən müsbət tam ədəd (RCB üçün \(2^n\)) Paylanmış tor məlumatındakı altoblastların sayını müəyyən edir. Adətən MPI proseslərinin sayına uyğunlaşdırılır.
Üst-üstə düşmə dərinliyi 1 və ya daha böyük tam ədəd Qonşu oblastlar tərəfindən təkrarlı saxlanılan diapazonu müəyyən edir. Düyün əsaslı bölünmə üçün göstərilir.
Rabitə cədvəlləri İdxal/ixrac məlumatı, ortaq məlumat Qonşu altoblastlar arasında tələb olunan məlumat mübadiləsini təyin edir. Oblastların bölünməsi zamanı avtomatik yaradılır.

Rabitə cədvəlləri paylanmış tor məlumatına daxil olduğundan istifadəçilərin adətən onları birbaşa redaktə etməsinə ehtiyac yoxdur. Paralel fistr1 paylanmış tor məlumatını oxuyur və MUMPS kimi paralel birbaşa üsuldan və ya iterativ üsuldan istifadə edərək xətti tənlikləri həll edir.

Oblast bölünməsi konfiqurasiyasının seçilməsi

Adi konstruksiya və istilik keçiriciliyi analizləri üçün ümumiyyətlə əvvəlcə düyün əsaslı bölünmə nəzərdən keçirilməlidir. Düyün əsaslı bölünmə paralel sonlu element analizində tələb olunan düyün qiymətlərinin rabitəsini sadələşdirir və üst-üstə düşmə dərinliyini göstərməyə də imkan verir. Element əsaslı bölünmə, paylanmış məlumatın əsasən element üzrə emal olunacağı əlaqələndirilmiş analiz kimi tətbiqlər üçün seçimdir.

Bölünmə üsulunu həndəsə və oblastların sayına əsasən seçin. Oblastların sayının \(2^n\) ola bildiyi sadə həndəsələr üçün RCB sadə və sabit seçimdir. Mürəkkəb həndəsələr və ya ixtiyari sayda oblast tələb olunduqda qraf bölünməsinə əsaslanan METIS namizəddir.

Məsələnin xüsusiyyətləri Tövsiyə olunan seçim
Standart paralel konstruksiya və ya istilik keçiriciliyi analizi Düyün əsaslı bölünmə
Əlaqələndirilmiş analiz kimi element mərkəzli paylanmış məlumatdan istifadə edən tətbiqlər Element əsaslı bölünmə
Düzbucaqlı prizmaya yaxın sadə həndəsə, \(2^n\) oblast RCB
Mürəkkəb həndəsə və ya ixtiyari sayda oblast METIS
SAINV önşərtləndiricisindən istifadə edən kontakt və ya MPC məhdudiyyətli məsələlər Üst-üstə düşmə dərinliyi 2 və ya daha böyük olan düyün əsaslı bölünmədən istifadə edin

Oblastların sayı adətən MPI proseslərinin sayına uyğunlaşdırılır. Paralel icra proseduru və proses sayının təyini üçün Paralel analiz bölməsinə baxın. SAINV önşərtləndiricisi ilə üst-üstə düşmə dərinliyi arasındakı əlaqə üçün həmçinin Həlledici və önşərtləndiricilər bölməsinə baxın.

Bölünmə növləri

Bölünmə növü hansı tor obyektinə altoblast tərəfindən unikal sahiblik veriləcəyini müəyyən edir. Düyün əsaslı bölünmə sahibliyi düyünlərə, element əsaslı bölünmə isə elementlərə təyin edir. Hər iki halda qonşu altoblastlarla hesablama üçün tələb olunan məlumat üst-üstə düşmə məlumatı kimi saxlanılır.

Düyün əsaslı bölünmə

Düyün əsaslı bölünmədə hər düyün dəqiq bir sahib altoblasta təyin edilir. Elementlər qonşu altoblastlarda üst-üstə düşmə ilə saxlanılır. Girişdə bu !PARTITION, TYPE=NODE-BASED ilə göstərilir.

Düyün əsaslı bölünmə anlayışı

Şəkil 10.1 Düyün əsaslı bölünmə anlayışı

Hər altoblast öz daxili düyünlərini, həmin daxili düyünləri ehtiva edən elementləri və həmin elementləri təşkil edən düyünləri saxlayır.

Düyün əsaslı bölünmədə hər altoblastın saxladığı düyünlər və elementlər

Şəkil 10.2 Düyün əsaslı bölünmədə hər altoblastın saxladığı düyünlər və elementlər

Düyün əsaslı bölünmə üçün rabitə cədvəlləri aşağıdakı məlumatları ehtiva edir.

  • İdxal düyünləri: Altoblastda istifadə olunan, lakin başqa altoblasta məxsus düyünlər.
  • İxrac düyünləri: Başqa altoblastın idxal düyünləri olan daxili düyünlər.
  • Ortaq elementlər: Digər altoblastlarla ortaq elementlər.

Düyün əsaslı bölünmədə idxal düyünləri

Şəkil 10.3 Düyün əsaslı bölünmədə idxal düyünləri

Düyün əsaslı bölünmədə ixrac düyünləri

Şəkil 10.4 Düyün əsaslı bölünmədə ixrac düyünləri

Düyün əsaslı bölünmədə ortaq elementlər

Şəkil 10.5 Düyün əsaslı bölünmədə ortaq elementlər

Element əsaslı bölünmə

Element əsaslı bölünmədə hər element dəqiq bir sahib altoblasta təyin edilir. Düyünlər qonşu altoblastlarda üst-üstə düşmə ilə saxlanılır. Girişdə bu !PARTITION, TYPE=ELEMENT-BASED ilə göstərilir.

Element əsaslı bölünmə anlayışı

Şəkil 10.6 Element əsaslı bölünmə anlayışı

Hər altoblast öz daxili elementlərini, həmin daxili elementləri təşkil edən düyünləri və həmin düyünləri ehtiva edən elementləri saxlayır.

Element əsaslı bölünmədə hər altoblastın saxladığı düyünlər və elementlər

Şəkil 10.7 Element əsaslı bölünmədə hər altoblastın saxladığı düyünlər və elementlər

Element əsaslı bölünmə üçün rabitə cədvəlləri aşağıdakı məlumatları ehtiva edir.

  • İdxal elementləri: Altoblastda istifadə olunan, lakin başqa altoblasta məxsus elementlər.
  • İxrac elementləri: Başqa altoblastın idxal elementləri olan daxili elementlər.
  • Ortaq düyünlər: Digər altoblastlarla ortaq düyünlər.

Element əsaslı bölünmədə idxal elementləri

Şəkil 10.8 Element əsaslı bölünmədə idxal elementləri

Element əsaslı bölünmədə ixrac elementləri

Şəkil 10.9 Element əsaslı bölünmədə ixrac elementləri

Element əsaslı bölünmədə ortaq düyünlər

Şəkil 10.10 Element əsaslı bölünmədə ortaq düyünlər

Hər iki bölünmə növü üçün hecmw_part1 rabitə cədvəllərini avtomatik yaradır və paylanmış tor məlumatına yazır. Buna görə istifadəçilərin adətən idxal/ixrac məlumatını birbaşa yaratmasına ehtiyac yoxdur.

Bölünmə üsulları

Bölünmə üsulu altoblast sərhədlərinin necə yaradıldığını müəyyən edir. FrontISTR koordinat əsaslı RCB-ni və qraf bölünməsi əsaslı METIS-i dəstəkləyir.

Bölünmə üsulu Xüsusiyyətlər Əsas məhdudiyyətlər və qeydlər
RCB Koordinat qiymətlərinə əsasən toru rekursiv olaraq iki yerə bölür. Sadə həndəsələr üçün sürətli bölünmə təmin edir. Oblastların sayı \(2^n\) ilə məhduddur. Bölünmə oxları göstərilməlidir.
pMETIS Oblastlar arasındakı əlaqəni nəzərə alaraq qraf bölünməsindən istifadə edir. METIS aktiv olan yığımlarda mövcuddur.
kMETIS Çoxyollu qraf bölünməsindən istifadə edir və mürəkkəb həndəsələrdə oblast sərhədlərinin yaradılması üçün uyğundur. METIS aktiv olan yığımlarda mövcuddur.

RCB Recursive Coordinate Bisection deməkdir və toru koordinat oxları boyunca təkrar iki yerə bölür. Oblastların sayı \(2^n\) ola bildikdə uyğundur və qutuya bənzər sadə həndəsələr üçün istifadəsi asandır.

METIS tor əlaqəliliyini qraf kimi qəbul edir və qraf bölünməsi ilə altoblastlar yaradır. Mürəkkəb həndəsələr üçün və ya oblastların sayının \(2^n\) ilə məhdudlaşdırılmaması lazım olduqda namizəddir. METIS-dən istifadə etmək üçün yığım zamanı METIS kitabxanası aktiv olmalıdır. Asılılıqların emalı üçün Tələb olunan və ixtiyari asılılıqlar bölməsinə baxın.

Üst-üstə düşmə dərinliyi

Üst-üstə düşmə dərinliyi qonşu altoblastların təkrarlı saxladığı diapazondakı qatların sayıdır. Düyün əsaslı bölünmə üçün !PARTITION DEPTH parametrində 1 və ya daha böyük tam ədəd göstərməyə imkan verir. Susmaya görə üst-üstə düşmə dərinliyi 1-dir.

Adi paralel analiz üçün DEPTH=1 kifayətdir. Lakin kontakt məsələsi və ya MPC məhdudiyyətli məsələdə SAINV kimi SAI ailəsinə aid önşərtləndiricidən istifadə edilirsə, üst-üstə düşmə dərinliyini 2 və ya daha böyük etmək önşərtləndiricinin keyfiyyətini yaxşılaşdıra bilər.

MPI paralel hesablamasında birinci tərtibli tetraedrik 341 elementi ilə seçici kənar/düyün hamarlama formulyasiyası (FORM341=SELECTIVE_ESNS) istifadə edilərkən də 2 və ya daha böyük üst-üstə düşmə dərinliyi tələb olunur. Kənar əsaslı və düyün əsaslı hamarlama hədəf elementə qonşu elementlər üzrə kəmiyyətləri ortalaşdırdığından altoblast daxilində sərtliyin yığılması üçün iki qonşuluq qatı uzaqlıqdakı elementlərin məlumatı tələb olunur; susmaya görə DEPTH=1 ilə oblast sərhədləri yaxınlığında hamarlama kifayət etmir. Element formulyasiyasının təfərrüatları üçün Element kitabxanası bölməsinə baxın.

Üst-üstə düşmə dərinliyinin artırılması qonşu altoblastlarda saxlanılan düyün və elementlərin sayını, bununla da həm yaddaş istifadəsini, həm də rabitə həcmini artırır. Onu yığılmanın yaxşılaşması ilə artan hesablama xərci arasında tarazlıq yaradaraq seçin. Önşərtləndirici seçimi üçün Həlledici və önşərtləndiricilər bölməsinə baxın.

Kontakt nöqtələrinin emalı

Kontakt cütləri olan tor bölünərkən !PARTITION daxilində CONTACT parametri kontakt nöqtələrinin oblastlarda yerləşdirilmə siyasətini təyin etməyə imkan verir. Kontakt nöqtələrinin yerləşdirilməsi kontakt axtarışı və kontakt məhdudiyyətləri olan paralel analizlərin sabitliyinə və rabitə həcminə təsir edir.

Qiymət Rolu
DEFAULT Standart yerləşdirmə siyasətindən istifadə edir.
SIMPLE Kontakt nöqtələrinə xüsusi çəkilər vermədən adi bölünməyə yaxın yerləşdirmədən istifadə edir.
AGGREGATE Kontakt cütləri ilə əlaqəli düyünləri qruplaşdırmağa meylli şəkildə bölür.
DISTRIBUTE Master tərəfdəki kontakt düyünlərinin müəyyən altoblastlarda cəmlənmə ehtimalını azaltmaq üçün bölür.

Kontakt olmayan torlarda CONTACT parametrinə adətən diqqət yetirmək lazım deyil. Kontakt olan paralel analizdə yığılma və ya yük balanslaşdırması problem yaradırsa, kontakt nöqtələrinin yerləşdirilmə siyasətini nəzərdən keçirin. Giriş sintaksisinin təfərrüatları üçün !PARTITION bölməsinə baxın.

Bundan asılı olmayaraq, paralel kontakt üçün sahiblik sxemini seçmək məqsədilə CONTACT_OWNER parametrindən istifadə edilə bilər. CONTACT "necə bölmək" qaydasını, CONTACT_OWNER isə "bölünmədən sonra hansı tərəfin cavabdeh olduğunu" təyin edir.

Qiymət Rolu
MASTER Master-sahib sxemi (susmaya görə). Master səthi elementlərin sahibi olan oblastlar üzrə bölünür və slave düyünləri hər master-sahib oblasta təkrarlanır.
SLAVE Slave-sahib sxemi. Hər slave düyünü yalnız öz sahib oblastında saxlanılır və bütün master səthi həmin oblasta yerləşdirilir.

Sonlu sürüşmədə (!CONTACT daxilində INTERACTION=FSLID) slave düyünü master səthində oblast bölünməsi sərhədini keçdikdə MASTER sxemi sərhəddə qonşuluq axtarışını kəsə, kontakt vəziyyətinin və sürtünmə tarixçəsinin itirilməsinə və həllin oblastların sayından asılı olmasına səbəb ola bilər. SLAVE sxemi bu problemdən qaçır. O yalnız TYPE=NODE-BASED olduqda göstərilə bilər; slave düyünlərinin sahibi olan oblastlarda yaddaş istifadəsi artır.

Oblast bölünməsi təsvirinin çıxarılması

!PARTITION daxilində UCD parametri göstərildikdə bölünmə nəticəsini yoxlamaq üçün UCD faylı çıxarılır. UCD faylı MicroAVS kimi vizuallaşdırma vasitələrində oblast nömrələrini və bölünmə sərhədlərini yoxlamaq üçün istifadə edilə bilər.

Oblastların sayı, bölünmə üsulu və ya üst-üstə düşmə dərinliyi dəyişdirildikdən sonra bölünmüş oblastlar arasında balanssızlığı və ya qeyri-təbii parçalanmanı yoxlamaq vacibdir. UCD çıxışı paralel analizi işə salmazdan əvvəl bölünmənin düzgünlüyünü yoxlamaq üçün köməkçi funksiyadır.

Əlaqəli mövzular

AI-assisted translation May contain errors Official docs Status