Оқулық Қазақстан Республикасы Білім және ғылым министрлігі бекіткен Алматы, 2011


int MPI_Comm_rank(MPI_Comm comm, int *rank)



Pdf көрінісі
бет83/121
Дата31.08.2022
өлшемі2,81 Mb.
#38343
түріОқулық
1   ...   79   80   81   82   83   84   85   86   ...   121
Байланысты:
duisembiev-parallel-esep

int MPI_Comm_rank(MPI_Comm comm, int *rank) 


159 

comm - коммуникатор идентификаторы; 

OUT 
rank - comm коммуникаторындағы процесс нӛмірі. 
comm коммуникаторындағы процесс нӛмірін анықтау. Егер сол comm 
коммуникаторы үшін MPI_comm_size функциясы size мәнін қайтарса, 
онда rank айнымалысы арқылы MPI_Comm_rank функциясымен қайтарылған 
мән 0-ден бастап size – 1-ге дейінгі диапазонда жатады. 
double MPI_Wtime(void) 
Бұл функция қандай да бір бекітілген моменттен бергі ӛткен 
астрономиялық уақытты қайтарады (нақты сан, сек). Егер бағдарламаның 
қандай да бір жекелеген участогын осы функцияның шақыруларымен 
қоршасақ, онда қайтарылатын мәндердің айырмасы осы участоктың жұмыс 
істеген уақытын кӛрсетеді. Сонымен қатар, процесс орындалуы кезінде санақ 
нүктесі ретінде пайдаланылған уақыт мезетінің ӛзгертілмейтініне кепілдік 
беріледі және де берілген функция ӛзінің жұмысы нәтижесін параметрлер 
арқылы емес айқын түрде қайтаратынын байқауға болады.
Жоғарыда сипатталған функциялар пайдаланылған қарапайым бағдарламаны 
келесі түрде беруге болады: 
main(int argc, char **argv) 

int me, size; 
... 
MPI_Init(&argc, &argv); 
MPI_Comm_rank(MPI_COMM_WORLD, &me); 
MPI_Comm_size(MPI_COMM_WORLD, &size); 
printf("Process %d size %d \n", me, size); 
... 
MPI_Finalize(); 
... 

MPI_Init функциясы шақырылған кезде қанша процесс туындаған болса, 
соншама рет printf функциясына сәйкес келетін «жол» шығарылатын болады. 
Жолдардың пайда болу реті алдын-ала анықталмаған және ол кезкелген 
болуы мүмкін. Мұнда түрлі жолдардың мазмұндары бір-бірімен араласып 
кетпеуіне ғана кепілдік беріледі.
Жеке процестер арасында хабарламаны қабылдау/жіберу 


160 
MPI бағдарламалау жүйесінің хабарламаны жіберу функциялары екі 
топқа бӛлінеді. Бірінші топқа бағдарламаның екі процесінің арақатынасы 
үшін 
арналған 
функциялар 
кіреді. 
Бұндай 
операциялар 
дербес 
(индивидуальный) немесе "нүкте-нүкте" түріндегі операциялар деп аталады. 
Екінші топқа кіретін функциялар, қандай да бір коммуникатордың барлық 
процестері операцияға қатыстырылуы керек деп жорамалдайды. Бұндай 
операциялар ұжымдық деп аталады. 
Хабарламалар алмасу функцияларының сипаттамасын "нүкте - нүкте" 
түріндегі операцияларды талдаудан бастаймыз. Бұл топтың барлық 
функциялары, ӛз кезегінде, тағы екі класқа бӛлінеді: бұғатталуы бар 
функциялар және бұғатталуы жоқ функциялар. 
Бұғатталуы бар хабарламаларды қабылдау/жіберу келесі түрдегі 
конструкциялармен беріледі. 


Достарыңызбен бөлісу:
1   ...   79   80   81   82   83   84   85   86   ...   121




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет