并行算法在相似性搜索与概率旅行商问题中的应用
1. CuAPSS算法的性能评估
在相似性搜索领域,CuAPSS算法是一种基于CUDA环境的混合并行余弦相似性搜索算法。为了评估其性能,研究人员进行了一系列实验。
- 准确性验证 :首先,研究人员用C++实现了AllPairs算法,这是一种精确的串行APSS算法。然后将CuAPSS与AllPairs在WW500上运行的输出结果进行比较,发现CuAPSS输出的相似对与AllPairs完全相同,从而验证了CuAPSS的准确性。
- 执行时间比较 :研究人员将CuAPSS与以下几种算法在执行时间上进行了比较:
- 基线串行算法 :IdxJoin、APT和L2AP。
- 多核并行算法 :pIdxJoin(基于IdxJoin,采用缓存分块优化)、pAPT(基于APT的并行APSS算法,是首个多核解决方案)、PL2AP(多核环境下的最先进并行算法,采用了多种缓存分块优化)。
- GPU库算法 :cuSPARSE(NVIDIA CUDA库,用于加速稀疏矩阵运算,通过简单的稀疏矩阵乘法方法解决APSS问题)。
实验使用了与其他研究相同的数据集,在NVIDIA GTX 1080Ti和Tesla P100上进行。结果表明,在大多数情况下,CuAPSS的性能优于其他所有算法,并且在不同的相似性阈值下保持相对稳定的运行时间。具体来说,在GTX 1080Ti上,当阈值σ ≤0.7时,CuAPSS相对于最佳串行执行的加速比为5 - 718倍,相对
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



