基于SYCL的近似最近邻算法 HNSW并行执行实验

课程名称:高性能智能计算实验

1.摘要

本实验的主要工作是对近似最近邻算法——HNSW算法进行了一定的修改,使其能够在Intel DevCloud平台上执行,并利用了其OneAPI平台特性的优秀性能,对不同规模大小的输入数据进行了测试并对比实验结果。

HNSW(Hierarchical Navigable Small World)是一种用于近似最近邻搜索的算法,适用于高维度数据的快速搜索。它基于构建一个多层次的图结构,其中每个节点代表数据集中的一个数据点。该算法通过建立具有随机连接的高维空间的图,并保持每个节点与一组“近邻”节点相连来工作。这种“近邻”连接的不规则性使得HNSW能够在高维度空间中进行高效的最近邻搜索,而无需在整个数据集上执行昂贵的线性搜索。

HNSW的执行过程包括图的构建和搜索两部分,其中搜索部分对于并行执行有着比较好的适应性——指的是对多个不同询问的并行,而非一个询问执行内部的并行。就算法原理来说,单一询问几乎没有并行执行的空间,其中的主要执行接近于单线程的搜索算法。对于构建的部分,使用并行执行会有很大的优化空间,因为这个算法的主要时间开销还是在图构建部分,但是作为多线程算法,必须妥善管理数据竞争和并发问题来实现高效的并行的同时保证结果的正确。

2.运行环境

本实验全部在Intel DevCloud平台上执行,使用了cpu、gpu两种节点进行执行,主要配置如下: GPU节点:

  • cpu:i9-11900kb

  • ram:32GB

  • gpu:HD graphics P630

CPU节点:

  • cpu:xeon e-2176g

  • ra

  • 16
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值