G‘afarov, A. F. Galimyanov parallel hisobiyotlar qo'llanma Qozon
Download 1.46 Mb.
|
ParVychGafGal (1)
- Bu sahifa navigatsiya:
- MPI_Abort usulini
- MPIda jamoaviy aloqalar
- MPI_Barrier
partner_rank = (jahon_darajasi + 1) % 2;
esa (ping_pong_soni < PING_PONG_LIMIT) { agar (jahon_darajasi == ping_pong_hisobi % 2) { ping_pong_count++; MPI_Yuborish(&ping_pong_hisobi, 1, MPI_INT, hamkor_darajasi, 0, MPI_COMM_WORLD); printf("%d yuborildi va ping_pong_soni %d dan %dgacha oshirildi\n", Machine Translated by Google dunyo_darajasi, ping_pong_hisoblash, sherik_darajasi); } boshqa { MPI_Recv(&ping_pong_count, 1, MPI_INT, partner_rank, 0, MPI_COMM_WORLD, MPI_STATUS_IGNORE); printf("%d ping_pong_count %d ni %d dan qabul qildi\n", dunyo_darajasi, ping_pong_hisoblash, sherik_darajasi); } } MPI_Finalize(); } Ushbu misol faqat ikkita jarayonda ishlash uchun mo'ljallangan, agar siz ko'proq yoki kamroq jarayonlar sonini ko'rsatgan bo'lsangiz, u holda dastur MPI_Abort usulini chaqirish orqali tugatiladi . O'zgaruvchan ping_pong_count nolga tenglashtiriladi va stol tennisining har bir bosqichida oshiriladi topshirish jarayoni orqali. Ping_pong_count qiymati sifatida ortadi, jarayonlar o'z navbatida jo'natuvchiga aylanadi va oluvchi. Nihoyat, chegaraga erishgandan so'ng, jarayonlar to'xtatiladi yuborish va qabul qilish. MPIda jamoaviy aloqalar Yuqorida biz nuqtadan nuqtaga aloqalarni ko'rib chiqdik, bu ikki jarayon o‘rtasidagi bog‘liqlikni ifodalaydi. Ushbu bo'limda biz ko'rib chiqamiz jamoaviy aloqalar. Kollektiv muloqot - bu usul kommunikator. Kollektiv haqida eslash kerak bo'lgan narsalardan biri aloqa, u bir nuqtani nazarda tutadi jarayonlar o'rtasidagi sinxronizatsiya . Bu shuni anglatadiki, barcha jarayonlar kerak qaytadan boshlashdan oldin ularning kodlaridagi bir nuqtaga erishing 101 Machine Translated by Google ishlash. MPI uchun maxsus funktsiya mavjud jarayonni sinxronlashtirish: MPI_Barrier (MPI_Comm kommunikatori)Funktsiya nomi juda tavsiflovchi - funktsiya to'siq hosil qiladi va yo'q kommunikatordagi jarayonlar hammasi bo'lmaguncha to'siqdan o'ta olmaydi funksiyani chaqiradi. Mana, undan foydalanishning illyustratsiyasi funktsiyalari. Rasmda gorizontal o'q bajarilishini ifodalaydi dasturlar va doiralar turli jarayonlarni ifodalaydi: MPI_Barrier ko'p narsalar uchun foydali bo'lishi mumkin. Asosiylaridan biri MPI_Barrier ilovalari dasturlarni sinxronlashtirishdir, shuning uchun qismlar parallel kodni o'z vaqtida sinxronlash mumkin. Download 1.46 Mb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling