Gemini代码摘录(三)vertices处理过程
发布时间
阅读量:
阅读量
process_vertices函数解析
存在两个参数,分别为process以及待处理的点集合
process_vertices(std::function<R(VertexId)> process, Bitmap * active) {}
其使用方式如下:
double delta = graph->process_vertices<double>(
[&](VertexId vtx){
curr[vtx] = (double)1;
if (graph->out_degree[vtx]>0) {
curr[vtx] /= graph->out_degree[vtx];
}
return (double)1;
},
active_in
);
函数体内部实现方式如下:
依据当前存在的线程数量以及所设定的每个socket内线程数,将线程分配至对应的分区中,其中s_i表示分区的编号,而s_j则代表某一socket内部的线程序号。
全部评论 (0)
还没有任何评论哟~
