codistributed

Создайте codistributed массив из реплицированных локальных данных

Синтаксис

C = codistributed(X)
C = codistributed(X,codist)
C = codistributed(X,lab,codist)
C = codistributed(C1,codist)

Описание

C = codistributed(X) распределяет реплицированный массив X использование значения по умолчанию codistributor, создание codistributed массив C в результате. X должен быть реплицированный массив, то есть, он должен иметь то же значение на всех рабочих. size(C) совпадает с size(X).

C = codistributed(X,codist) распределяет реплицированный массив X использование схемы распределения задано codistributor codistX должен быть реплицированный массив, а именно, он должен иметь то же значение на всех рабочих. size(C) совпадает с size(X). Для получения информации о построении codistributor объекты, смотрите страницы с описанием для codistributor1d и codistributor2dbc.

C = codistributed(X,lab,codist) распределяет локальный массив X это находится на рабочем, идентифицированном lab, использование codistributor codist. Локальный массив X должен быть задан на всех рабочих, но только значении от lab используется, чтобы создать C. size(C) совпадает с size(X).

C = codistributed(C1,codist) принимает массив C1 это уже codistributed и перераспределяет его в C согласно схеме распределения, заданной codistributor codist. Это совпадает с вызовом C = redistribute(C1,codist). Если существующая схема распределения C1 эквивалентен это задало в codist, затем результат C совпадает с входом C1.

Примеры

Создайте codistributed массив 1000 на 1000 C1 использование схемы распределения по умолчанию.

parpool('local',4)
spmd
    N = 1000;
    X = magic(N);          % Replicated on every worker
    C1 = codistributed(X); % Partitioned among the workers
end

Создайте codistributed массив 1000 на 1000 C2, распределенный строками (по его первой размерности).

spmd
    N = 1000;
    X = magic(N);
    C2 = codistributed(X,codistributor1d(1));
end

Советы

gather по существу выполняет инверсию codistributed.