有A B C D四台机器,分别在本地维护维护一个 w 矩阵,和一个同纬度的sum_local 矩阵,一个计数器 i 初始化为1。
sum_local = w // 根据本地 w 的拷贝初始化 sum_local
i = 1 // sum_local 已收集了一个矩阵
while( i != number_of_Node_in_ring )
{
throw w to next node
get new w from previous node // 每次接到上个节点传来的 w,下次循环时只将接收到的w再传递出去
++i
sum_local += w
}
您的视频中,四个节点,六轮(每轮通讯四条链路同时利用)通讯,共24次通讯,复杂度是(number_of_parameter / wide——bandwidth)
有A B C D四台机器,分别在本地维护维护一个 w 矩阵,和一个同纬度的sum_local 矩阵,一个计数器 i 初始化为1。
sum_local = w // 根据本地 w 的拷贝初始化 sum_local i = 1 // sum_local 已收集了一个矩阵 while( i != number_of_Node_in_ring ) { throw w to next node get new w from previous node // 每次接到上个节点传来的 w,下次循环时只将接收到的w再传递出去 ++i sum_local += w }
这个方法可行么,共计四轮(每轮,四条链路同时利用)通讯,共16 次通讯(复杂度是 number_of_node / bandwidth)