ЗНАЕТЕ ИНТУИТ, Лекция, Виртуални топологии
Виртуални топологии
Организацията на обмена се основава на свойствата на комуникатора - дескриптора на зоната на взаимодействие. В допълнение към списъка с процеси и контекста на обмена, допълнителната информация може да бъде свързана с комуникатора .
Най-важният тип такава информация е обменната топология. В MPI топологията е механизъм за картографиране на процеси, принадлежащи към група, които са алтернативни на обичайните схеми за номериране.
Топологиите на обмена на съобщения в MPI са виртуални; те не са свързани с физическата топология на комуникационната мрежа на паралелна изчислителна система. Използването на комуникатори и топологии отличава MPI от повечето други системи за съобщения.
Топология в този случай се нарича структура на връзките - линии и мрежови възли, без да се вземат предвид характеристиките на самите тези възли. Тук възлите са процеси, връзките са канали за съобщения и ние всъщност наричаме всички процеси, които изграждат паралелна програма, мрежа.
Често в приложните програми процесите са подредени според определена топология. Тази ситуация възниква например, ако се извършват изчисления, които използват решетки (мрежи). Това може да бъде при програмиране на мрежови методи за решаване на диференциални уравнения, както и в други случаи.
Познаването на топологията на проблема може да се използва за ефективно разпределение на процесите между процесорите на паралелна изчислителна система.
Има два вида топология в MPI: Декартово топология - правоъгълна решетка с произволни размери и топология броя (в този случай процесите са свързани помежду си с ръбове, показващи посоката на обмен).

На топологии могат да се извършват различни операции. Декартовите решетки могат да бъдат разделени на хиперплоскости чрез премахване на някои измерения. Данните могат да се преместват по избраното измерение на декартовата мрежа. Промяна в този случай е трансферът на данни между процеси по определено измерение. Колективният обмен може да бъде организиран по избрано измерение.
За да свържете структурата на декартовата решетка с комуникатора MPI_COMM_WORLD, трябва да зададете следните параметри:
- измерение решетка (стойност 2, например, съответства на плоска решетка);
- размерът решетки по всяко измерение (размерите, например, съответстват на правоъгълна плоска решетка, дължината на която по оста x е 10 възла на процеса, а по оста y - 5 възела);
- гранични условия по всяко измерение (решетката може да бъде периодична, ако процесите в противоположните краища на реда взаимодействат помежду си).