什么是大型数据集最快的强​​制导向网络图引擎? [英] What's the fastest force-directed network graph engine for large data sets?

查看:86
本文介绍了什么是大型数据集最快的强​​制导向网络图引擎?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们目前有一个动态更新的网络图,其中包含 1,500个节点 2,000个边。它不断增长。我们目前的布局引擎使用了 Prefuse - 特别是强制定向的布局 - 大型服务器需要大约10分钟才能获得一个漂亮,稳定的布局。



我看了一下 GraphViz 的sfpd算法,但还没有测试过它...



有更快的选择我应该看看吗?




  • 我不关心节点和边的视觉外观 - 我们分别处理它 - 只需将 x,y
  • 我们需要能够修改图的特定部分的布局属性,例如,对某些节点应用特殊的更紧密或更松散的弹簧。
  • >


在此先感谢您,并请发表评论,如果您需要更具体的信息来解答!

编辑:我特别寻找速度比较布局引擎选项。基准测试,具体的例子,或只是个人经验就足够了!

解决方案

我会看看OGDF,特别是 http://www.ogdf.net/doku.php/tech:howto:frcl
我没有使用过OGDF,但我知道Fast Multipole Multilevel是一个很好的高性能算法,当您处理与强制定向布局相关的运行时类型时,需要使用多少个节点,许多。
为什么,除其他原因外,该算法非常棒:快速多极方法。快速多极方法是一种矩阵乘法近似,它可以将矩阵乘法的O()运行时间近似为一个小程度。理想情况下,你可以使用类似这样的代码: http://mgarland.org/files/papers /layoutgpu.pdf ,但我无法在任何地方找到它;也许CUDA的解决方案并不是你的胡同。



祝你好运。


We currently have a dynamically updated network graph with around 1,500 nodes and 2,000 edges. It's ever-growing. Our current layout engine uses Prefuse - the force directed layout in particular - and it takes about 10 minutes with a hefty server to get a nice, stable layout.

I've looked a little GraphViz's sfpd algorithm, but haven't tested it yet...

Are there faster alternatives I should look at?

  • I don't care about the visual appearance of the nodes and edges - we process that separately - just putting x, y on the nodes.
  • We do need to be able to tinker with the layout properties for specific parts of the graph, for instance, applying special tighter or looser springs for certain nodes.

Thanks in advance, and please comment if you need more specific information to answer!

EDIT: I'm particularly looking for speed comparisons between the layout engine options. Benchmarks, specific examples, or just personal experience would suffice!

解决方案

I would have a look at OGDF, specifically http://www.ogdf.net/doku.php/tech:howto:frcl I have not used OGDF, but I do know that Fast Multipole Multilevel is a good performant algorithm and when you're dealing with the types of runtimes involved with force directed layout with the number of nodes you want, that matters a lot. Why, among other reasons, that algorithm is awesome: Fast Multipole method. The fast multipole method is a matrix multiplication approximation which reduces the O() runtime of matrix multiplication for approximation to a small degree. Ideally, you'd have code from something like this: http://mgarland.org/files/papers/layoutgpu.pdf but I can't find it anywhere; maybe a CUDA solution isn't up your alley anyways.

Good luck.

这篇关于什么是大型数据集最快的强​​制导向网络图引擎?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆