主要内容

tocbytes.

阅读自打电话以来已转移了多少字节ticbytes.

描述

例子

tocbytes(水池读取自呼叫以来已转移了多少字节ticbytes.。该函数显示并行传输到每个工人和从每个工人传输的字节数水池在最近的执行之后ticbytes.

使用ticbytes.水池) 和tocbytes.水池)一起函数以测量并行池中转移到工人和从工人转移的数据。您可以使用ticbytes.tocbytes.在执行并行语言构造和功能时,例如议案SPMD., 或者Parfeval.。用ticbytes.tocbytes.传递较少的数据并优化代码。

例子

字节= tocbytes(水池返回并行传输到每个工人的字节数水池

例子

tocbytes(水池startstate.显示并行传输的字节总数水池之后ticbytes.生成的命令startstate.

例子

字节= tocbytes(水池startstate.返回并行传输到每个工人的字节数水池之后ticbytes.生成的命令startstate.

例子

全部收缩

tocbytes(GCP,开始)测量转移的数据量。

a = 0;B =兰特(100);starts = ticbytes(gcp);议案i = 1:100 a = a + sum(b(:, i));结尾tocbytes(GCP,开始)
使用“本地”配置文件启动并行池(Parpool)...连接到4名工人。Bytessenttoworks BytesreceivedFrom Wherwworkers _________________________________________ 42948 7156 2 36548 4 27500 42500 427500 42500 427500 42500 42500 427500 42500 427500 42 27500 427500 47500 42500 42500 427500 47500 42500 427500 42 27500 42500 427500 42500 427500 42500 4 27500 42 27500 42500 42500 42500 4 27500 47500 42500 42500 4 27500 42500 423500 42500 4 27500 47500 425/42750 425/42750

工人可能会转移不同数量的字节,因为每个工作人员都可能执行不同数量的循环迭代。

bytes = tocbytes(gcp)测量转移的数据量。

ticbytes(GCP);SPMD.兰特(100);结尾bytes = tocbytes(gcp)
BYTES = 13448 1208 13448 1208 13448 1208 13448 1208

工人转移相同数量的字节,因为每个工作人员都执行相同数量的循环迭代。

在运行a时测量传输的最小和平均字节数议案循环嵌套在一个为了环形。

reps = 10;minbytes = INF;ticbytes(GCP);%ticbytes,一对1为了II = 1:REPS A = 0;B =兰特(100);starts = ticbytes(gcp)%ticbytes,配对2议案i = 1:100 a = a + sum(b(:, i));结尾字节= tocbytes(gcp,开始)%tocbytes,配对2minbytes = min(字节,minbytes)结尾scallybytes = tocbytes(gcp)/ reps%tocbytes,配对1

请注意,嵌套a议案- 在A中为了- 由于开销,可以缓慢,看看将嵌套循环嵌套转换为循环循环

输入参数

全部收缩

平行池,通常指定GCP.,如果您想要当前的并行池。否则,使用parpool.创建一个新池。

例子:tocbytes(gcp);

开始州返回ticbytes(游泳池)

例子:startstate = ticbytes(gcp);

输出参数

全部收缩

转移字节,作为大小的矩阵返回numworkers.x 2.此矩阵包含与并行池中的每个工人传输到的字节数。字节在没有标题的情况下返回字节字节的值。用tocbytes(游泳池)如果在命令窗口输出中没有输出参数以在命令窗口输出中以字节为单位发送和接收标题和值。

例子:bytes = tocbytes(池);

介绍在R2016B.