|
Параллельное и распределенное программирование на С++Реализация моделей SPMD и MPMD с помощью шаблонов.. { //... int Tag = 2; int WorldSize; int TaskRank; MPI_Status Status; MPI_Init(&argc,&argv); MPI_Comm_rank(MPI_COMM_WORLD, &TaskRank); MPI_Comm_size(MPI_COMM_WORLD, &WorldSize); //. . . switch(TaskRank) { case 1: { //. . . car * Car; set<streets> SearchSpace travel<streets>(Car, SearchSpace,Street); //.. . } break; case 2: { //.. . helicopter *BlueThunder; set<air_space> NationalAirSpace; travel<air_space>(BlueThunder, NationalAirSpace, AirSpace); //.. . } //case n: //. . . } } Программа search_n_rescue будет запущена в 16 процессах, причем все процессы потенциально могут выполняться на различных процессорах, а все процессоры находиться на различных компьютерах. Несмотря на то что все процессы выполняют один и тот же код, их действия могут радикально различаться (как и данные, с которыми они работают). Шаблоны и полиморфизм позволяют отличать одну MPI-задалу от другой (а значит, и данные, которые они будут использовать) ...» | Код для вставки книги в блог HTML
phpBB
текст
|
|