A-Tune 让系统调优更智能

ywz888
发布于 2022-8-2 17:14
浏览
0收藏

A-Tune 是 openEuler 开源项目中的一个子项目。是一款基于 openEuler 的自动化和智能化性能调优引擎。它利用人工智能技术,对运行在操作系统上的业务,进行精准建模,感知并推理业务特征,根据业务特征及负载情况,给出最佳的参数配置组合,从而使业务处于最佳系统性能状态。

 

本篇文章不涉及具体系统调优方法,仅说明我们团队对于系统调优问题的思考。

 

 为什么叫  A-Tune?

 


让我们先从名字来认识下 A-Tune 吧。“Tune” 代表了性能调优;“A”则承载了 Tune 的愿景与定位,其蕴含了3层寓意:

Aware:自感知,自动感知负载和业务模型。

Adaptive:自适应,动态监测负载特征变化,适时调整资源。

Auto:自调节,通过感知负载模型,自动匹配优化库。

 

 


为什么要开发 A-Tune?

 


系统调优是一个门槛高的系统性工程,非常依赖工程师的技能和经验。

 

一个简单的应用,影响其性能的因素除了自身代码外,还有支撑它运行的环境,如硬件平台、操作系统、数据库等。如何在众多因素中找到性能瓶颈?需要工程师们熟悉大量参数的含义、配置方法和业务场景,并不断积累经验,才能对系统进行快速精准调优。

A-Tune 让系统调优更智能-鸿蒙开发者社区

但随着各行各业数字化智能化转型,新应用、新技术、新计算架构层出不穷,工程师的技能和经验远远无法满足系统调优的需求,传统系统调优更是面临着新的问题。

 

问题一


涉及上万的能力组合,挑战人工调优极限:运行在操作系统上的业务类型成百上千,形态千差万别,从硬件到操作系统,到中间件再到上层应用,涉及的调优参数组合上万+。随着业务复杂度和调优对象的增加,调优组合和调优所需成本指数级增长,大大超过了工程师的能力范围。

 

问题二

 

应用场景剧增,实验室测试无法穷举:实际业务场景成千上万,计算、网络、存储等硬件配置层出不穷,实验室无法遍历所有的应用和业务场景,不可能完全模拟动态负载,无法对不同的场景组合进行穷举测试。

 

为了解决上面的问题,A-Tune 应运而生。

 

 


A-Tune 的优势

 


A-Tune 利用大数据和人工智能技术,通过对各种类型的业务进行大数据分析,建立精准业务模型,并制定相应的调优策略。具体来说,A-Tune 优势有以下三点:

 

简化系统调优:A-Tune 屏蔽了硬件和操作系统底层细节,工程师无需感知底层细节,就可以快速上手调优。降低了对工程师的技能要求,简化了系统调优过程。

 

提升调优效率:A-Tune 利用大数据和人工智能技术,从 CPU、IO、网络、内存等多个维度抽象刻画不同业务类型系统的行为特征,并对收集的结果进行大数据分析和机器学习,识别有效的调优参数,快速匹配多种配置组合,找到最佳配置。对于业务复杂、配置项多的业务系统,能够大大提升调优效率。

 

持续积累调优经验:A-Tune 能够利用人工智能技术自动分析业务特征,寻找优化配置,建立优化模型库。针对具体的业务场景,训练并持续优化业务模型,积累和优化模型库,满足多业务多场景下的调优需求。

 

 


A-Tune 架构

 

A-Tune 分层架构主要包括智能决策层、系统画像层、交互系统层以及优化模式库四部分,分层架构如下图所示:

A-Tune 让系统调优更智能-鸿蒙开发者社区

 

智能决策层包含感知系统和决策系统。感知系统用于获取环境资源使用数据,利用人工智能技术推理判断业务类型,决策系统根据感知子系统获得的数据进行调优决策。

 


系统画像层包含数据平台、标注系统和学习系统。数据平台用于存放软硬件数据,标注系统用于业务环境数据采集和业务模型的聚类,学习系统用于业务模型的学习和分类。

 


交互系统层用于各类系统资源的监控和配置,执行调优策略。

 

优化模式库构建并积累各种业务模型对应的优化能力和配置。

 

A-Tune 应用场景

 


关于 A-Tune 的应用场景,我们使用以下应用做了测试:

A-Tune 让系统调优更智能-鸿蒙开发者社区

测试结果:

A-Tune 让系统调优更智能-鸿蒙开发者社区

要注意本测试结果为实验室数据,结果在不同环境存在偏差。

 

关注 A-Tune

 

 

 

A-Tune 还在不断的开发和完善当中,如你对 A-Tune 感兴趣,欢迎关注 A-Tune 项目。

 

项目地址:https://gitee.com/openeuler/A-Tune

 

 

文章转载自公众号:openEuler

分类
标签
已于2022-8-2 17:14:30修改
收藏
回复
举报
回复
    相关推荐