이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.
로컬 작업 공간으로 분산 배열 또는 gpuArray 전송
X = gather(A)
[X1,X2,...,Xn] = gather(A1,A2,...,,Xn)
X = gather(C,lab)
[X1,X2,...,Xn] = gather(C1,C2,...,Cn,lab)
X = gather(A)
는 다음 배열 데이터에 대해 연산을 수행할 수 있습니다.
gpuArray: GPU에서 A
의 요소를 로컬 작업 공간으로 전송하여 X
에 할당합니다.
spmd
문 외부의 분산 배열: 여러 워커에 있는 A
의 요소를 로컬 작업 공간으로 한데 모아 X
에 할당합니다.
spmd
문 또는 통신 작업 내의 공동분산 배열: A
의 요소를 한데 모은 후, 모든 워커에서 X
로 복제합니다.
tall형 배열과 같은 다른 데이터 유형에 대해 gather
를 호출할 수 있습니다(gather (tall)
항목 참조). 데이터 유형이 수집을 지원하지 않는 경우에는 gather
가 아무런 효과가 없습니다.
X = gather(gpuArray(X))
, X =
gather(distributed(X))
또는 X =
gather(codistributed(X))
는 원래 배열 X
를 반환합니다.
[X1,X2,...,Xn] = gather(A1,A2,...,,Xn)
은 여러 배열 A1,A2,...,,An
을 대응하는 출력값 X1,X2,...,Xn
으로 수집합니다. 입력 인수 개수와 출력 인수 개수는 일치해야 합니다.
X = gather(C,lab)
는 공동분산 배열 C
를 변형 배열(variant array) X
로 변환합니다. 이때 워커 lab
에서의 X는 모든 요소를 포함하며 다른 모든 워커에서의 X
는 0x0의 빈 double형입니다.
[X1,X2,...,Xn] = gather(C1,C2,...,Cn,lab)
은 공동분산 배열 C1,C2,...,Cn
을 대응하는 출력값 X1,X2,...,Xn
으로 수집하는데, 모든 요소는 워커 lab
에 포함됩니다. 입력 인수 개수와 출력 인수 개수는 일치해야 합니다.
gather
의 입력 인수가 분산 배열, 공동분산 배열 또는 gpuArray가 아닌 경우 출력값은 입력값과 동일합니다.
gather
는 자신이 실행되는 모든 워커의 작업 공간에서, 또는 MATLAB 클라이언트에서 각각(즉, 둘 다는 아님) 공동분산 배열 또는 분산 배열을 조합합니다. spmd
문 내에서 gather
를 사용하는 경우, 수집된 배열은 해당하는 Composite
객체를 통해 클라이언트에서 액세스할 수 있습니다. Access Worker Variables with Composites 항목을 참조하십시오. 통신 작업에서 gather
를 실행하는 경우, 수집된 배열을 태스크의 출력 인수로 클라이언트에 반환할 수 있습니다.
gather
함수를 사용하려면 모든 워커 간에 통신이 필요하므로 if labindex ==
1
과 같은 조건문 내에 함수를 배치하여 모든 워커로부터 단일 워커로 데이터를 수집할 수 없습니다.
arrayfun
| bsxfun
| codistributed
| distributed
| gpuArray
| pagefun