logo search
Primer_otcheta_vidimo_khoroshy_za_starshy_sem

Параллельная реализация алгоритма, изложенного в пункте 2. Модификация алгоритма

Параллельность исполнения алгоритма может быть обеспечена путем перераспределения множеств между процессами

Параллельная реализация «напрямую» излагаемого алгоритма потребует перераспределения множеств на каждом шаге, что может сильно сказаться на производительности программного кода реализации (при медленных каналах связи). В качестве решения данной проблемы предлагается модифицированный алгоритм с учетом специфики параллельных вычислений:

  1. На начальной стадии кластер состоит из единственной частицы . Распределить равномерно блоки между процессами. Задать множества .

  2. Сгенерировать сфер и их траекторий: .

  3. Для каждого блока (блоки статически равномерно распределены между процессами) и для каждого определить множество частиц , где .

  4. Для каждого ( ) и для каждого определить точку «прилипания» к j-ой сфере, как если бы других частиц не было бы. Полученное множество возможных точек «прилипания» обозначим за .

  5. Вычислить точку «прилипания», как если бы в кластере были только частицы, содержащиеся в блоках данного процесса, по формуле .

  6. Вычислить реальную точку прилипания по формуле .