writing output to a file in Graphchi

天大地大妈咪最大 提交于 2019-12-02 08:14:12

问题


I wrote a shortest path code in Graphchi and I wanted to print the output of that in a file. I was trying to use the template shown in the examples but I get error if I use the sameway of writing to a file as in other examples. I have got stuck here. As the output I just want to print (vertex id,its minimum distance from source). How can i do that.


回答1:


Here is example how you can output values of all vertices to the console. It is easy to modify it to write the output to a file. Note that if you can handle binary files, GraphChi already has the vertex values in a file: .B.vout, where is sizeof(VertexDataType).

1) You need to define a callback-function, which will take vertex id and value as parameter

class OutputVertexCallback : public VCallback<VertexDataType> {
public:

virtual void callback(vid_t vertex_id, VertexDataType &value) {
  std::cout << vertex_id << "=" << value << std::endl;
}
 };

2) Then you need to call foreach_vertices() as follows to get the output:

OutputVertexCallback callback;
foreach_vertices<VertexDataType>(filename, 0, engine.num_vertices(), callback);


来源:https://stackoverflow.com/questions/12112543/writing-output-to-a-file-in-graphchi

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!