主要内容

收集

대기중연산을실행한후高형배열을메모리에수집

설명

예제

Y=收集(X는계산되지않은高형배열X를계산하는데필한대기중모든연산을실행하여그결과를메모리에Y로수집합니다。

收集계산결과가너무큰경우matlab®에메모리가부족할수도있습니다。결과를다넣을수있을만큼메모리가충분한지확신할수없으면收集(头(X))收集(尾(X))를사용하여,전체계산을수행하되결과의일부만메모리로가져오십시오。

가능한 한收集를덜사용하여데이터에대한추가적통과가계산과정에서결합되도록하십시오。자세한내용은高数组的延迟计算항목을참조하십시오。

예제

Y1,Y2,Y3.[答案]X1,X2,X3,…)은계산되지않은여러高형배열X1 x2 x3…을이에대응되는출력값Y1, y2, y3,…으로수집합니다。

예제

모두 축소

airlinesmall.csv데이터세트에대한데이터저장소를만듭니다。“NA”값을누락된데이터로처리합니다。그러면tabularTextDatastore가 이 값을값으로대체합니다。사용할변수는일부를선택합니다。이데이터저장소를高형테이블로변환합니다。

Varnames = {“年”“ArrDelay”“UniqueCarrier”};ds = tabularTextDatastore(“airlinesmall.csv”“TreatAsMissing”“NA”...“SelectedVariableNames”, varnames);T =高(ds)
T = Mx3高表年ArrDelay UniqueCarrier  ____ ________ _____________ 8 1987 1987{“PS”}{“PS”}{“PS”}1987年1987年21日13{“PS”}{“PS”}1987 1987 59{“PS”}1987 1987 11 {{' p '} ' PS '} : : : : : :

高大형테이블의크기를계산합니다。

sz = size(T)
Sz = 1x2高双行向量??

MATLAB®은tall형배열에대한대부분의연산을즉시실행하지않습니다。대신,MATLAB은사용자가수행하려고입력한연산들을기억하여백그라운드에서계산을최적화합니다。

계산되지않은高형배열에收集를사용하는경우MATLAB은최소한의통과횟수로데이터에접근해대기중인모든연산을실행합니다。이러한최적화는대규모계산의실행시간을크게줄여줍니다。이러한이유로,결과를확marketing해야하는경우에만收集를사용해야합니다。

收集를사용하여계산을실행하고결과를메모리에수집합니다。

S = gather(sz)
使用本地MATLAB会话评估tall表达式:-通过1 / 1:在0.84秒内完成评估在1.1秒内完成
S =1×2123523年3

여러입력값과함께收集를사용하여여러개의高형배열을동시에계산합니다。

1000年1에서사이의정수형난수로구성된메모리내배열에서高형배열을생성합니다。각열의최댓값과최솟값을계산합니다。

(randi(1000,100,7))
A = 100x7高双矩阵815 163 645 60 423 583 851 906 795 379 682 95 541 561 127 312 812 43 599 870 930 914 529 533 72 471 265 697 633 166 351 522 696 319 583 98 602 940 97 700 120 816 279 263 876 819 639 940 880 555 551 818 34 646 989::::::::::::::
b = min(A);c = max(A);

그결과를사용하여배열에서전체최솟값과최댓값을결정합니다。최종결과를메모리에수집합니다。

[mnA,mxA] = gather(min(b),max(c));
使用本地MATLAB会话评估tall表达式:-通过1 / 1:在0.19秒内完成评估,在0.51秒内完成
valRange = [mnA mxA]
valRange =1×21 1000

입력marketing수

모두 축소

계산되지않은高형배열입니다。계산되지않은高형배열은收集를사용하여계산을완전히실행하지않고계산을수행하는모든高형배열입니다。

출력marketing수

모두 축소

메모리내배열입니다。Y의데이터형은계산되지않은高형배열X의기본데이터형과동일합니다。

  • 并行计算工具箱™를사용하는경우分布式계산과gpuArray계산을수집하는방법에대한자세한내용은收集(并行计算工具箱)를참조하십시오。

확장 기능

高형배열
메모리에담을수없을정도로많은행을가진배열을계산할수있습니다。

Gpu코드생성
GPU编码器™를사용하여NVIDIA GPU®용CUDA®코드를생성할수있습니다。

버전 내역

R2016b에개발됨