如何实现算力智能选择

为什么需要对算力进行智能选择

随着科技的飞速发展,算力已经成为制约人工智能应用性能的关键因素。为了满足各种应用场景下的计算需求,算力网络应运而生,它通过对分散的计算资源进行整合,并灵活地分配和调度,逐步推动算力成为与水电一样,可“一点接入、即取即用”的社会级服务,达成“网络无所不达、算力无所不在、智能无所不及”的愿景。

但算力网络与电力网络有很大的区别,电力网络中流动的电力是标准化的是可以直接使用的,而算力本身是无法流动的,必须借助网络,将算力的需求方与算力的供给方连接起来,将需求方的计算任务发送到供给方的算力资源中进行计算。因此,要实现对算力的“一点接入、即取即用”,一方面在于如何通过确定性网络将广泛分布的云边端算力资源接入进来;另一方面就是如何将算力需求方的需求调度到最为合适的算力供给方,本篇文章将针对这一方面进行探讨,并介绍一些目前在实现算力智能选择中用到的技术方法和实践。

以淘宝平台为例,在这里算力需求方变成了消费者,算力供给方则变成了商家,消费者在淘宝上购物时,会面临各种选择困难,比如哪家商家的商品质量更好?哪家商家的服务更好?哪家商家的价格更实惠?这个时候就需要有一个聪明的购物助手,来帮助消费者解决这些问题,它通过分析用户的需求与商家的历史数据、服务质量、市场竞争情况等信息,在算力商家中做出明智的选择,为消费者提供最合适的商家推荐。

这个聪明的购物助手不仅需要能够准确的解构、度量不同用户的差异化、个性化需求,将其转换为系统所能理解的语言与量化数据;同时也需要能够将来源众多、分布广泛、形态各异的商家关键信息进行标准画像,在将解构量化后的用户需求与商家的标准画像信息进行匹配运算,从而得到最优的选择。其中,关于解构量化用户需求的详细方案,可查看鲸品堂的另一篇文章《“东数西算”一年:业务算力度量体系及其应用》。而这里将商家关键信息进行标准画像以及匹配运算的过程,就是我们今天文章的主角“智能选择”所需要做的事情。

图片

根据什么对算力进行智能选择

还是以淘宝为例,用户在淘宝上搜索商品时,淘宝的搜索引擎会根据商品的相关性,商品质量、价格,商家的服务质量和信誉,时间季节等因素对商品根据一定的算法进行筛选、排序。同样,在对算力进行智能选择前,也需要能够制定出对算力资源池与算力产品的各种量化因素,对其进行标准画像,作为选择依据,才能通过各种策略、算法对其进行智能选择。

对于这些量化因素,我们可以从以下几个方面进行制定:

资源池能力因素:这部分因素是从整体对资源池的服务体量进行量化描述,包括对资源池所能提供不同类型算力的可用规模,例如半精度型通用算力规模,单精度型智能算力规模等等;以及资源池的地理位置、安全防护等级,能耗PUE,出口带宽可用规模等指标。

资源池质量因素:这部分因素是从整体对资源池的服务水平进行量化描述,类比于商家的信誉,它包括计算力、稳定性等指标。以下是我们在对智能推荐实践中一些总结出的指标:

- 算力性能负载率:它是对资源池内提供算力产品服务的底层基础设施运行负载情况的量化描述,通常会按照通用算力、智能算力、超算算力不同类型的算力进行计算。比如通用算力性能负载率,会选取提供通用算力服务宿主机的CPU利用率、内存利用率进行计算,取其中位数作为负载率指标。

- 算力性能负载方差:它是对资源池内提供算力产品服务的底层基础设施运行负载离散分布情况进行的量化描述,它反映了对资源池内基础设施的使用是否均衡,也会按照通用算力、智能算力、超算算力不同类型的算力进行计算。比如通用算力性能负载方差,会根据每台宿主机的算力性能负载率与整体平均算力性能负载率进行计算。

- 健康评分:它是对资源池的整体运行稳定情况的量化描述。这个因素会对不同级别的告警设定权重,根据资源池在运行时产生不同级别告警数量,通过计算加权后的归一化告警总数来得到资源池的健康评分。

除此之外,还有对资源池网络的量化因素,如出口时延、出口带宽利用率、网络接入距离等指标。

算力产品能力因素:这部分因素是对资源池上具体某类算力产品的服务体量进行量化描述,主要包括该算力产品的分配率、可用配额、产品成本、可用性等级等指标。

算力产品质量因素:这部分因素类比于具体商品的质量,它的计算方法与资源池质量类似,通常只是将计算范围从资源池维度变为产品集群维度。

在量化因素制定完成后,我们就对所接入纳管的算力资源有了清晰的概念,能够以不同维度对其过滤、比较。接下来,我们还需要对这些因素的运用来制定规则,在具体实践中,我们把这部分规则称之为“调度策略”,它在一定程度上也是对用户使用体验需求的抽象描述。例如,有的用户希望优先保证计算性能,有的用户希望能尽可能的压缩成本,有的用户希望在性能和成本之间取个平衡点。

在制定调度策略时,设计人员可以根据用户不同的使用体验需求标准进行策略配置,比如可以配置性能最优、成本最优、距离最优、综合最优等策略,对应着用户不同的使用体验需求。在具体的策略中,可以配置在智能推荐计算过程中所需要用到策略因子,它是根据当前策略的实际需要选择不同的量化因素,并配置各因素在当前策略计算过程中所占权重以及因素取值的限制范围,通过这些信息的差异可以体现不同策略对使用需求的侧重点。例如,在成本最优策略中,可以通过“产品成本”因子的取值范围限定其上限,或是限制其只能使用成本按从低到高排序后,排名在后30%的资源池,来控制该策略中备选资源池的范围;并可将其因子的权重调高,使得成本越低的资源池在计算时会占有越大的优势。

如何对算力进行智能选择

在相关的量化因素、调度策略都具备后,我们就可以具体的根据用户需求,对资源池进行智能选择的计算了。在实际计算过程中,会选取一个或多个调度策略,在根据相应的算法对待选资源池进行计算,获得各个资源池选择方案的匹配指数,得到最优资源池解,将算力需求调度分配到最优匹配的某个资源池或多个资源池上。在这里,我们可以分为两种情况对算法进行设计:

用户的算力需求必须调度分配到同一个资源池的情况:这种情况相对计算过程会比较简单,我们可以通过以下方式进行计算:

- 根据用户算力需求中解构出的算力产品,依次轮询资源池集合,计算集合中资源池在当前策略下每个策略因子的得分,筛选掉不符合条件的资源池。对于符合条件的资源池,通过具体算法计算得到每个产品能力对应的最优匹配资源池。

- 在通过算法计算最优匹配资源池时,主要是根据不同资源池的因子得分与因子权重,通过计算后对资源池进行最优匹配。这里介绍一种目前在使用中的算法,多属性群决策算法。多属性群决策(Multi-Attribute Group Decision Making, MAGDM ) ,是现代决策科学的一个重要研究领域,其理论和方法已广泛应用于城市规划、经济管理、投资风险等领域。其计算步骤如下:

  • 定义决策矩阵。当前资源池选择问题中,将符合条件的备选资源池集合定义为P={P1,P2,……,Pn},每个资源池的策略因子集合定义为C={C1,C2,……,Cm}。资源池Pn对策略因子m的取值为Vnm,通过上述集合形成决策矩阵V。

  • 计算策略因子权重得分。由于各策略因子之间的单位和量级存在差异,无法直接进行评估计算,需要先消除指标差异性,形成标准化得分。这里我们可以采用区间值映射法,将属性取值区间上每个数映射到1~100中的某个区间上。在根据因子权重,通过D=策略因子标准化得分策略因子权重,计算得到策略因子权重得分D。

  • 计算最优资源池。在得到每个备选资源池不同策略因子权重得分后,将其替换至对应决策矩阵V中。采用TOPSIS法来对资源池优劣进行排序。其基本原理,是首先计算各资源池与当前决策矩阵中正理想解集合、负理想解集合的欧式距离,在通过欧式距离计算得到各资源池与正理想解集合的相对接近度。这里的接近度越大,表示资源池匹配度越高,在通过排序,就可以得到最优匹配资源池。

- 如果需要计算的算力产品能力大于一个,则根据算力产品能力权重计算总得分=Σ(产品能力c对应资源池匹配度×产品能力权重),作为这个算力产品能力对应资源池的得分。

- 在计算完第一个算力产品能力后,将得到的资源池范围作为第二个算力产品能力用于过滤资源池的初始值,重复以上过程,并根据每个算力产品能力中计算出的资源池范围取交集,将交集范围的资源池得分计算平均分后排序得到最终的可调度分配资源池排序。

用户的算力需求可以调度分配到多个资源池的情况:这种情况下对算力智能选择可以看作是一个优化问题,以下这些智能优化算法,如遗传算法、粒子群优化算法和模拟退火算法等,可以用于寻找这个最优策略。

- 遗传算法:遗传算法是一种全局优化算法,适用于解决复杂的非线性问题,可以在较大的搜索空间中进行操作。在资源池智能选择中,遗传算法可以用于确定最优的资源组合和分配方案,以实现整体性能的最大化。

- 粒子群优化算法:粒子群优化算法是一种简单、易于实现的算法,适用于解决单峰、连续、非线性问题。在资源池智能选择中,粒子群优化算法可以用于确定最优的资源分配方案,以实现资源利用的最大化。

- 模拟退火算法:模拟退火算法适用于求解组合优化问题,能够在一定时间内找到最优解。在资源池智能选择中,模拟退火算法可以用于确定最优的资源组合方案,以实现负载平衡和性能的最大化。

- 在对于资源池的智能选择中,可以根据具体问题的特点来选择合适的智能优化算法。如果需要考虑整体性能的最大化和复杂问题的非线性特性,遗传算法可能是一个更好的选择;如果需要快速找到最优解并解决单峰、连续、非线性问题,粒子群优化算法可能更适合;如果需要在一定时间内找到最优解并解决组合优化问题,模拟退火算法可能更为合适。当然,在实际应用中,可以根据具体的需求和限制,结合多种算法进行综合优化,以实现更好的效果。

后记

通过以上的实践,我们就可以根据用户的算力需求,为其推荐出单个资源池最优方案或是多个资源池组合的最优方案中,实现对多资源池下算力资源智能选择分配的自动化、精细化、准确化,来为用户提供智能、极简、无感的算网服务。

在实际使用中,我们也可以对一段时间的智能选择结果进行分析,与我们预期中对资源分配的目标进行比对,例如资源池维度的算力的均衡负载率、服务器性能负载率等指标,对实际分配使用情况进行评估。从而对用到的策略因子、算法等内容进行优化调整,进行持续迭代更新,使得智能选择更加准确,可以满足更多的生产场景需要。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/252522.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

虚拟飞控计算机:飞行控制系统验证与优化的利器

01.背景介绍 随着航空技术的飞速发展,飞行控制系统作为飞机的心脏,全面负责监测、调整和维持飞行器的姿态、航向、高度等参数,用以确保飞行的安全和稳定。为了满足这些要求,现代飞控系统通常采用先进的处理器和外设来确保其高效、…

智能运维哪些算法?智能运维包含哪些

在智能运维领域,详细介绍一些关键的算法,并阐述这些算法是如何被应用于智能运维系统中的。此外,关于智能运维中包含的主要组成部分或功能模块,以及它们各自的作用和重要性。如何应用再场景中应用在智能运维行业,一些关…

从零开始手写mmo游戏从框架到爆炸(三)— 服务启动接口与网络事件监听器

导航:从零开始手写mmo游戏从框架到爆炸(零)—— 导航-CSDN博客 上一章我们完成了netty服务启动的相关抽象(https://blog.csdn.net/money9sun/article/details/136025471),这一章我们再新增一个全…

2023 OpenHarmony 年度运营报告

汇聚 70 家企业 6700名贡献者力量, OpenHarmony 已成为下一代智能终端操作系统根社区; 我们在成长,OpenHarmony 项目群成员单位增至 35 家; 2023 年持续迭代更新 6 个版本及 OpenHarmony4.0 重点特性简介……

09_树莓派_树莓派外设板_GPIO_按键的中断与消抖

目录 1.树莓派外设集成板总体介绍 2.第一部分 按键矩阵 GPIO_按键与中断 3.实现效果 1.树莓派外设集成板总体介绍 1)前言:这是一块为了验证树莓派【兼容树莓派多个型号】的40pins的外设接口的外接板,告别复杂的面包板外设搭建。【欢迎各位…

EMNLP 2023精选:Text-to-SQL任务的前沿进展(上篇)——正会论文解读

导语 本文记录了今年的自然语言处理国际顶级会议EMNLP 2023中接收的所有与Text-to-SQL相关(通过搜索标题关键词查找得到,可能不全)的论文,共计12篇,包含5篇正会论文和7篇Findings论文,以下是对这些论文的略…

安卓动态链接库文件体积优化探索实践

背景介绍 应用安装包的体积影响着用户下载量、安装时长、用户磁盘占用量等多个方面,据Google Play统计,应用体积每增加6MB,安装的转化率将下降1%。 安装包的体积受诸多方面影响,针对dex、资源文件、so文件都有不同的优化策略&…

爬虫实战--人民网

文章目录 前言发现宝藏 前言 为了巩固所学的知识,作者尝试着开始发布一些学习笔记类的博客,方便日后回顾。当然,如果能帮到一些萌新进行新技术的学习那也是极好的。作者菜菜一枚,文章中如果有记录错误,欢迎读者朋友们…

[UI5 常用控件] 07.SplitApp,SplitContainer

文章目录 前言1. SplitApp1.1 组件结构1.2 Demo1.3 mode属性 2. SplitContainer 前言 本章节记录常用控件SplitApp,SplitContainer。主要功能是在左侧显示Master页面,右侧显示Detail页面。 Master页面和Detail页面可以由多个Page组成,并支持…

Kubernetes基础(十一)-CNI网络插件用法和对比

1 CNI概述 1.1 什么是CNI? Kubernetes 本身并没有实现自己的容器网络,而是借助 CNI 标准,通过插件化的方式来集成各种网络插件,实现集群内部网络相互通信。 CNI(Container Network Interface,容器网络的…

【Mysql】事务的隔离级别与 MVCC

事务隔离级别 我们知道 MySQL 是一个 C/S 架构的服务,对于同一个服务器来说,可以有多个客户端与之连接,每个客户端与服务器连接上之后,就是一个会话( Session )。每个客户端都可以在自己的会话中向服务器发…

DockerUI如何部署结合内网穿透实现公网环境管理本地docker容器

文章目录 前言1. 安装部署DockerUI2. 安装cpolar内网穿透3. 配置DockerUI公网访问地址4. 公网远程访问DockerUI5. 固定DockerUI公网地址 前言 DockerUI是一个docker容器镜像的可视化图形化管理工具。DockerUI可以用来轻松构建、管理和维护docker环境。它是完全开源且免费的。基…

Node.js+Express+Mysql服务添加环境变量

1、使用dotenv插件 1)安装插件:npm install dotenv-cli --save-dev 2)在项目根目录下添加对应的 .env 配置文件; // .env配置文件内容 MODEdevelopment, BASE_URLhttp://127.0.0.1:80813) 在启动命令中设置对应的加载文件&#…

springboot158基于springboot的医院资源管理系统

简介 【毕设源码推荐 javaweb 项目】基于springbootvue 的 适用于计算机类毕业设计,课程设计参考与学习用途。仅供学习参考, 不得用于商业或者非法用途,否则,一切后果请用户自负。 看运行截图看 第五章 第四章 获取资料方式 **项…

chisel RegInit/UInt/U

val reg RegInit(0.U(8.W)) //ok val reg RegInit(0.UInt(8.W)) //errU 使用在数字 . 后边50.U UInt 使用在IO(new Bundle val a Input(UInt(8.W)) 或者 def counter(max:UInt, a1:UInt) package emptyimport chisel3._ import chisel3.util._class MyCounter extends …

02-Java抽象工厂模式 ( Abstract Factory Pattern )

抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂 该超级工厂又称为其他工厂的工厂 在抽象工厂模式中,接口是负责创建一个相关对象的工厂,不需要显式指定它们的类 每个生成的工厂都能按照工厂模式提供对象 …

rust开发wasm

首先需要安装wasm-pack cargo install wasm-pack 使用cargo创建工程 cargo new --lib mywasm 编辑Cargo.toml文件,修改lib的类型为cdylib,并且添加依赖wasm-bindgen [package] name "mywasm" version "0.1.0" edition "…

Micro micro controller一览

https://www.microchip.com.cn/, Microchip中文网站 https://www.microchip.com.cn/newcommunity/index.php?mSearch&adosearch&moduleDownload&keyworddsPIC33&p3 Microcontrollers and microProcessors dsPIC33 Digital Signal Controllers (D…

【数据结构和算法】--- 基于c语言排序算法的实现(1)

目录 一、排序的概念及其应用1.1排序的概念1.2 排序的应用1.3 常见的排序算法 二、插入排序2.1直接插入排序2.2 希尔排序2.2.1 预排序2.2.2 缩小gap2.2.3 小结 三、选择排序3.1 直接选择排序3.2 堆排序 一、排序的概念及其应用 1.1排序的概念 排序: 所谓排序&…

【Spring Boot】第一篇 创建简单的Spring Boot项目

导航 一. 简介二. 创建简单的Spring Boot项目1. 工具选择和版本确定2. 创建步骤 三. 部署项目四. 测试验证 一. 简介 Spring Boot是一个用于构建独立的、生产级别的Spring应用程序的框架。它简化了Spring应用程序的创建和配置过程,同时提供了很多开箱即用的功能&am…