【问题标题】:C++: looking for thread based a parallel kd tree library [closed]C ++:寻找基于并行kd树库的线程[关闭] 【发布时间】:2011-02-22 15:39:13 【问题描述】: 在共享内存机器上是否有一些 KD-Tree 实现? 谢谢 阿尔曼。 【问题讨论】: 标签: c++ kdtree parallel-processing 【解决方案1】: libkdtree++ 或 kdtree 【讨论】: 谢谢,但它们都是串行库。我无法从不同的线程并行构建树。 我自己也在寻找这样的库,但没有成功。您可能必须自己实现它,或者扩展/更改现有的开源解决方案。我用 ANN 做了第二件事,但我没有并行化树的创建,只是搜索。 @PeterK:感谢彼得的回复。我有一个完全 MPI 并行实现的八叉树,所以我想节省时间并使用一些基于线程的并行版本的开源。所以如果我的实现成功了,我会把它放在 google.code 中与其他人分享。 @Arman:不客气。我相信我对 ANN 库的扩展将很快公开(开源)可用(我希望在几周内)。它允许并行搜索,但不能添加或删除记录。我什至认为这是不可能的,因为如果添加或删除某些记录,树结构会发生变化,因此它会破坏正在进行的任何搜索。 如果你从kdtree开始,你可能会有一些运气,libkdtree++太乱了,看着很痛苦。就像他们花了 99% 的时间在玩模板并尝试使用书中的每个 STL 模板,出于某种原因,每个名称都以 _ 或 __ 开头——函数名、参数……也许这是一种隐藏算法的新方法:-))