Page Rank C++实现单机用时10min,数据量10万条会不会慢求证matlab是否可以用2-3min处理这个量的数据
我觉得是题主的算法用得不对。题主应该是用PageRank的原始迭代定义计算的,所以10万条数据迭代到收敛耗时10分钟太正常不过了。正确的做法是用方程求解,一次矩阵计算出结果。因此算法的时间都在矩阵计算上。矩阵计算是一个被优化透了的问题,不管是MATLAB还是C++都有非常高效的求解方法。
■网友
10W条数据单线程应该几秒之内就可以完成,题主这是在糟蹋8核的CPU。C++单机做PageRank的极致可以参考一下GraphChi graphchi-cpp/pagerank.cpp at master · GraphChi/graphchi-cpp · GitHub
■网友
300万点1亿边的图用Graphchi跑PageRank也只用了3分钟,还包括读取数据做储存的过程,16G i5-5的机器
推荐阅读
- 非计算机专业想要利用课余时间深入自学C++,想要找到比较体面的工作大概需要啥水平
- Java工程师和C++工程师在工作上有啥区别哪个更适合自身发展
- C、C++、java等编程语言都有哪些坑
- c++写http服务器不用cgi和apache该用啥
- CPM 点击率(CTR)、损失率 和 LandingPage 的跳出率,这几个数值之间关系,一般网站这些数值取值区间是多少
- 看完c++ primer plus 还有必要再买本c++ primer看吗?
- 有人可以把C,C++,Python等编程语言开发出来,而我们却难以精通,这说明了啥问题
- MFC能用其他语言来替代吗?
- 看完一本C++书后应该学啥
- C++程序测试软件有哪些比较好
