exponenta event banner

codistributed.colon

Распределенная операция двоеточия

Синтаксис

codistributed.colon(a,d,b)
codistributed.colon(a,b)
codistributed.colon(___,codist)
codistributed.colon(___,'noCommunication')
codistributed.colon(___,codist,'noCommunication')

Описание

codistributed.colon(a,d,b) секционирует вектор a:d:b в numlabs смежные субвекторы равной или почти равной длины, и создает совместно распределенный массив, локальная часть которого на каждом работнике является labindex-й субвектор.

codistributed.colon(a,b) использование d = 1.

Необязательные аргументы для codistributed.colon должны быть указаны после требуемых аргументов и в следующем порядке:

codistributed.colon(___,codist) использует объект codistributor codist для задания схемы распределения результирующего вектора. Если значение опущено, результат распределяется с использованием схемы распределения по умолчанию. Сведения о построении объектов coddistributor см. на страницах ссылок для codistributor1d и codistributor2dbc.

codistributed.colon(___,'noCommunication') или codistributed.colon(___,codist,'noCommunication') указывает, что при построении вектора связь не должна выполняться, пропуская некоторые шаги проверки ошибок.

Примеры

Разбиение вектора 1:10 на четыре субвектора среди четырех работников.

spmd(4); C = codistributed.colon(1,10), end
Lab 1: 
  This worker stores C(1:3).
          LocalPart: [1 2 3]
      Codistributor: [1x1 codistributor1d]
Lab 2: 
  This worker stores C(4:6).
          LocalPart: [4 5 6]
      Codistributor: [1x1 codistributor1d]
Lab 3: 
  This worker stores C(7:8).
          LocalPart: [7 8]
      Codistributor: [1x1 codistributor1d]
Lab 4: 
  This worker stores C(9:10).
          LocalPart: [9 10]
      Codistributor: [1x1 codistributor1d]

Представлен в R2009b