158
Әрбір қосымша үшін параллель бӛлікті инициализациялау тек бір рет
қана орындалу керек. Кӛптеген модулдерден тұратын және әртүрлі
авторлармен жазылған күрделі қосымшалар үшін
бұны тексеріп отыру
қиынға соғатындықтан,
қосымша
MPI_initialized
функциясы
енгізілген:
MPI_Initialized (int *flag)
Мұндағы
OUT
*flag – бағдарламаның параллель бӛлігін инициалдау белгісі.
Егер MPI_Init функциясы шақырылып қойылса, онда flag параметрі
арқылы 1 мәні, кері жағдайда 0 қайтарылады.
int MPI_Finalize(void)
Қосымшаның параллель бӛлігінің аяқталуы. Барлық келесі қатынастар,
кез-келген MPI-функциялары үшін және MPI_Init функциясы үшін де
тыйым салынған. MPI_Finalize шақырылғанға
дейін оның хабарламалар
алмасуға араласуы талап етілетін барлық іс-әрекеттер аяқталуы тиіс.
MPI-бағдарламасының жалпы схемасы:
main(int argc, char **argv)
{
...
MPI_Init(&argc, &argv);
...
MPI_Finalize();
...
}
int MPI_Comm_size(MPI_Comm comm, int *size)
comm —коммуникатор идентификаторы;
OUT
size -
comm коммуникаторындағы процестер саны.
comm коммуникаторындағы параллель процестердің жалпы санын анықтау.
Нәтиже size параметрі арқылы қайтарылады. Коммуникатор күрделі
құрылым болуы себепті, оның алдында алдын ала анықталған MPI_Comm
типті ат (имя) тұр және ол mpi.h файлында анықталған.
Достарыңызбен бөлісу: