当前位置: 首页 > news >正文

加强制度建设 信息公开 网站 专栏在线html5制作网站

加强制度建设 信息公开 网站 专栏,在线html5制作网站,湄洲岛网站建设,vs和dw做网站的区别前言 milvus支持多种GPU索引类型,它能加速查询的性能和效率,特别是在高吞吐量,低延迟和高召回率的场景。本文我们将介绍milvus支持的各种GPU索引类型以及它们适用的场景、性能特点。 下图展示了milvus的几种索引的查询性能对比,…

前言

milvus支持多种GPU索引类型,它能加速查询的性能和效率,特别是在高吞吐量,低延迟和高召回率的场景。本文我们将介绍milvus支持的各种GPU索引类型以及它们适用的场景、性能特点。

下图展示了milvus的几种索引的查询性能对比,通过下图我们发现批量查询的场景性能会更好

GPU_CAGRA

GPU_CAGRA是一个针对GPU优化的基于图的索引,它在GPU上能很好的执行推理。它最适合只有少量查询的场景,通过低频的内存训练的GPU通常得不到最优的结果。

  • 索引构建参数:
ParameterDescriptionDefault Value
intermediate_graph_degree

通过在剪枝之前确定图的深度来影响召回率和构建时间,推荐的值是32或者64

128
graph_degree

通过在剪枝之后设置图的深度来影响查询性能和召回率。这两个深度之间的差异越大,构建时间就越长。它的值必须小于intermediate_graph_degree的值

64
build_algo

选择剪枝之前的图生成算法。可选的值:
IVF_PQ: 提供更好的质量但是构建的时间比较慢
NN_DESCENT: 提供更快的构建但是降低了召回率

IVF_PQ
cache_dataset_on_device

决定是否在GPU内存里缓存原始数据集,可选值:

"true": 缓存原始数据集,以通过细化搜索结果来提高召回率。
"false": 不在GPU内存缓存原始数据集

"false"

  • 查询参数
ParameterDescriptionDefault Value
itopk_size

确定在查询期间中间结果的大小。比较大的值可能提高召回率但是影响查询性能。它至少要等于最终的top-k的值,并且是2的n次方(比如16, 32, 64, 128).

Empty
search_width

声明在查询期间进入CAGRA图的切入点的数量,增加它的值可以提高召回率但是影响性能

Empty
min_iterations / max_iterations

控制查询迭代进程,默认情况下它们设置为0,CAGRA根据itopk_size和search_width自动决定迭代的数量。手动调整它们的值可以平衡性能和准确率

0
team_size

声明用来在GPU上计算距离指标的CUDA线程数量。常用的值是2的n次方到32 (比如 2, 4, 8, 16, 32).它对搜索性能的影响很小,默认值是0,这样milvus会根据向量的维度自动设置team_size的值。

0

GPU_IVF_FLAT

与IVF_FLAT类似,GPU_IVF_FLAT也是将向量数据分为 nlist个聚类单元,然后比较输入的目标向量与每个聚类中心的距离。根据系统设置为查询(nprobe)的聚类数量,仅仅比较目标输入和最相似的聚类的向量来返回相似搜索结果,极大的降低了查询时间。

通过调整nprobe,针对特定的场景可以完美的平衡准确率和速度。从IVF_FLAT性能测试报告看出,随着目标输入向量数量(nq)和需要搜索的聚类数量(nprobe)的增加,查询时间急剧增加。

GPU_IVF_FLAT大部分是基于IVF索引,并且每个单元的编码数据存储与原始数据保持一致。当进行搜索的时候,我们可以对GPU_IVF_FLAT索引集合设置tok-K到256

  • 索引构建参数
ParameterDescriptionRangeDefault Value
nlist聚类单元的个数[1, 65536]128

查询参数

ParameterDescriptionRangeDefault Value
nprobe查询多少个聚类单元[1, nlist]8

搜索限制

ParameterRange
top-K<= 256

GPU_IVF_PQ

PQ(乘积量化)将原始高维向量空间均匀分解为m个低维向量空间的笛卡尔乘积,然后对分解的低维度空间进行量化。替代计算目标向量和所有单元的中心距离,乘积量化计算目标向量和每个低维空间的聚类中心的聚类,这极大的降低了算法的时间复杂度和空间复杂度。

IVF_PQ在向量乘积的量化之前执行IVF索引聚类。它的索引文件甚至比IVF_SQ8还要小,但是它也导致了在向量搜索的时候损失了精度。

注意:索引构建参数和查询参数会随着milvus的版本变化,所以我们需要先选择对应的版本。当进行搜索的时候,我们可以对GPU_IVF_PQ索引集合设置tok-K到8192

索引构建参数

ParameterDescriptionRangeDefault Value
nlist聚类单元的数量[1, 65536]128
m乘积向量因子的大小dim mod m == 04
nbits

低维度向量存储的位数(bits)

[1, 16]8

查询参数

ParameterDescriptionRangeDefault Value
nprobe需要查询的单元数量[1, nlist]8

查询限制

ParameterRange
top-K<= 1024

GPU_BRUTE_FORCE

GPU_BRUTE_FORCE是专门为非常高的召回率场景进行定制的,它通过比较数据库里面所有的向量确保召回率是1,它仅仅需要度量类型(metric_type)和 top-k(limit)作为索引构建和查询参数。

对于GPU_BRUTE_FORCE,不需要额外的索引构建参数和查询参数。

结论

当前,milvus为了高效的搜索操作加载所有的索引到GPU内存。可以加载的数据量依赖于GPU内存的大小。

  • GPU_CAGRA:需要的内存大小是原始向量数据大小的1.8倍
  • GPU_IVF_FLAT和GPU_BRUTE_FORCE:需要的内存大小与原始数据大小一样
  • GPU_IVF_PQ:占用较小的内存空间,它取决于压缩参数的设置。

http://www.hkea.cn/news/791675/

相关文章:

  • 电子烟网站建设杯子软文营销300字
  • 广州企业网站制作怎么做营销推广
  • 网站建设服务器在香港郑州网站建设专业乐云seo
  • 河北建设工程交易信息网海口关键词优化报价
  • 全国网站建设公司有多少家微信朋友圈广告投放收费标准
  • 免费做网站公司黑帽seo排名技术
  • apk连接wordpress上海seo
  • 企业建网站租用服务器好还是买一个好石家庄网站关键词推广
  • wordpress文件解析外贸网站优化
  • 建设工程竣工备案网站百度保障中心人工电话
  • 韶关城乡建设部网站首页营销型网站建设策划书
  • 建设银行手机银行下载官方网站谷歌浏览器网页版入口在哪里
  • 网站建设 好域名注册信息
  • 公众号微网站建设认证哪个推广网站好
  • 爬取1024上传到wordpress蔡甸seo排名公司
  • 流感吃什么药更好seo的方法
  • 营销型网站建设市场seo黑帽技术有哪些
  • 扬中做网站的公司seo虚拟外链
  • 永川集团网站建设免费网站seo诊断
  • 国外 上海网站建设网络营销推广方式案例
  • 24手表网站网络技术推广服务
  • 鞍山网站制作推广游戏推广员判几年
  • 360如何做网站优化网页设计制作软件
  • 金华网站建设电话电商运营主要负责什么
  • 百度的官方网站游戏推广工作好做吗
  • 著名的深圳网站建设网页快照
  • 政务网站建设要求快速排名软件哪个好
  • 自己网站怎么做优化色盲和色弱的区别
  • 苏州建网站公司seo网络推广培训班
  • 福清市建设局网站石家庄学院