加速不规则内存访问算法的探索:从地图匹配到最短路径问题
1. 低采样率GPS轨迹地图匹配算法
在地图匹配领域,为了实现低采样率GPS轨迹的地图匹配并降低时间复杂度,提出了基于加权最短路径的增量地图匹配算法(WSI - matching)。该算法通过填充两个GPS点候选路段之间的缺失路径,解决了数据稀疏问题。
实验结果表明,与传统的增量算法和全局算法相比,WSI - matching算法在细粒度和粗粒度地图匹配中,在匹配精度和运行时间方面都具有明显优势。
2. 单源最短路径问题的挑战与解决方案
单源最短路径(SSSP)是图论中的经典问题,在许多图算法中作为预处理步骤。虽然有大量算法用于解决或改进该问题,但由于不规则内存访问和计算与内存访问的低比率,在多核架构上的性能一直不佳。
为了在多核架构上获得显著的加速,需要解决三个关键问题:
- 优化内存访问。
- 最小化同步开销。
- 挖掘算法中的并行性。
采用最新的英特尔多核集成(MIC)设备(至强融核5110/7210处理器)来加速SSSP问题。通过模拟SSSP的内存访问模式,发现性能上限是将内存访问性能提升到70 GB/s。通过对SSSP的每个组件进行基准测试和性能分析,确定了每个步骤的性能边界。
3. 相关算法介绍
- Dijkstra算法 :一种顺序贪心单源最短路径算法,步骤如下:
1. 初始化每个顶点的最短距离,除了源顶点$D[v_0]$赋值为0,其他顶点设为$+\infty$。
2. 从堆中取出$D[v]$最小的顶点$v$,
超级会员免费看
订阅专栏 解锁全文
2122

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



