CN105654120B - 一种基于SOM和K-means两阶段聚类的软件负载特征提取方法 - Google Patents

一种基于SOM和K-means两阶段聚类的软件负载特征提取方法 Download PDF

Info

Publication number
CN105654120B
CN105654120B CN201510996261.8A CN201510996261A CN105654120B CN 105654120 B CN105654120 B CN 105654120B CN 201510996261 A CN201510996261 A CN 201510996261A CN 105654120 B CN105654120 B CN 105654120B
Authority
CN
China
Prior art keywords
cluster
characteristic
software
som
segment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510996261.8A
Other languages
English (en)
Other versions
CN105654120A (zh
Inventor
沙江
陈苗苗
张阳
时龙兴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Institute, Southeast University
Original Assignee
Suzhou Institute Southeast University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Institute Southeast University filed Critical Suzhou Institute Southeast University
Priority to CN201510996261.8A priority Critical patent/CN105654120B/zh
Publication of CN105654120A publication Critical patent/CN105654120A/zh
Application granted granted Critical
Publication of CN105654120B publication Critical patent/CN105654120B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3452Performance evaluation by statistical analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Quality & Reliability (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于SOM和K‑means两阶段聚类的软件负载特征提取方法,包括以下步骤:(1)从软件执行过程中的动态指令流中提取负载特征:首先将软件执行过程划分为若干个片段,然后对每个程序片段统计特征参数,每个软件会输出多组特征参数,构成一个由多维特征参数组成的矩阵;(2)从特征参数矩阵中提取典型程序片段:利用SOM聚类算法从众多程序片段中找出软件负载特征不同的特征片段簇,再利用K‑means聚类算法从同类型的特征片段簇中找出最能代表这个簇特征的片段。本方法同时弥补了SOM收敛时间过长和K‑means算法对初始点过于敏感、容易陷入局部最优解的缺陷。

Description

一种基于SOM和K-means两阶段聚类的软件负载特征提取方法
技术领域
本发明属于处理器体系结构领域,特别涉及一种基于SOM和K-means两阶段聚类的软件负载特征提取方法。
背景技术
随着移动互联网时代的到来,我们的生活越来越离不开移动智能终端。丰富的应用要求高性能的移动智能终端SoC(System on Chip)提供支持,以满足用户需求。SoC的整体性能很大程度上取决于微处理的性能,也就是SoC的通用处理性能。随着SoC性能的不断提高,微处理器的设计复杂度也大大提高。为了降低设计成本和设计风险,在芯片前端设计阶段,设计人员需要评估架构设计方案,分析影响系统性能的相关因素,根据分析结果与性能指标,确定系统最初的设计方案是否能满足系统需求和规格说明。唯一稳定、可靠的性能度量是实际应用的执行时间。然而实际应用的数量无穷尽,只能选择有限个数的应用程序作为测试程序。
由于程序数量巨大,且负载特征参数也有数十项之多,依靠人工分析测试程序相似性、提取代表性方案,难以获得有效结果。因此,研究人员通常依赖数据处理方法,研究测试程序负载特性的相似性。常用的数据处理方法包括聚类分析、主成分分析等。有文献比较了几种主流的用于提取测试集子集的数据处理方法,包括基于聚类算法的子集提取方法、基于Plackett and Burman设计的子集提取方法、基于指令占比的子集提取方法、基于性能限制因素的子集提取方法、基于程序语言的子集提取方法以及随机提取方法。实验结果表明,基于聚类算法的子集提取方法可以获得代表性较高的子集。有文献也使用k-means聚类算法进行数据处理。
然而,K-means聚类算法的结果受初值的影响较大,容易陷入局部最优,而且对于聚类样本数量较大的情况尤为明显,同时K-means聚类算法对噪声数据(离群点)敏感,会造成所得聚类中心与实际中心位置偏差过大。因此,传统的数据处理方法难以用来从巨量实际应用中提取最典型的负载特征,也就难以构造出代表性最优的测试集,因此,本发明提出了更加有效的方法,结合SOM(Self Organizing Map)和K-means两种聚类算法来做软件负载特征提取。
发明内容
针对上述现有技术存在的软件负载特征多且不易提取的问题,本发明的目的是提供一种基于SOM和K-means两阶段聚类的软件负载特征提取方法。
为实现上述目的,本发明采用以下技术方案:
一种基于SOM和K-means两阶段聚类的软件负载特征提取方法,包括以下步骤:
(1)从软件执行过程中的动态指令流中提取负载特征:首先将软件执行过程划分为若干个片段,然后对每个程序片段统计特征参数,每个软件会输出多组特征参数,构成一个由多维特征参数组成的矩阵;
(2)从特征参数矩阵中提取典型程序片段:利用SOM聚类算法从众多程序片段中找出软件负载特征不同的特征片段簇,再利用K-means聚类算法从同类型的特征片段簇中找出最能代表这个簇特征的片段。
进一步的,步骤(1)中所述的负载特征包括:指令混合比、关键路径长度、寄存器传输特性、工作集容量、访存时间局部性、访存空间局部性、分支行为特性、串行指令、指令空间局部性。从而,每个程序片段会得到一组特征向量,而整个软件就转换为多组特征向量构成的参数矩阵。
进一步的,步骤(1)中,通过CPU模拟器根据进程切换把软件执行过程切分为若干个程序片段。
进一步的,软件在执行时,会产生大量的动态指令流,如果单纯地分析指令之间的整体关系与平均特征,会导致不能很好地发现软件的内在的动态特征。所以,需要选择合适的软件切分粒度。考虑到程序在执行的过程中,存在大量的进程切换,不同的进程之间的软件特征是截然不同的,同时,同一个进程在不同的执行阶段的软件特征也是大不相同的。因此,步骤(1)中,将软件执行过程划分为若干个片段时,选择每两次进程切换之间的程序片段作为软件切分粒度。
进一步的,步骤(2)中,聚类过程中先用SOM聚类算法做粗粒度的聚类,将若干程序片段分为多个类,再利用K-means算法对每一类片段进行细粒度聚类,找出距离质心最近的程序片段来代表整个簇的负载特征。
SOM聚类算法是种映射技术,可以把复杂的、非线性和高维度数据转变为简单的、几何的和低维度的数据,且聚类结果相对稳定,但聚类样本较大时收敛速度较慢。因此在SOM的基础上再进行K-means聚类,在一定程度上限制了K-means初始点对聚类结果的负面影响,相对于SOM也加快了聚类速度。
进一步的,由于不同负载特征之间可能具有相关性,导致不同特征维度的权重不同,影响聚类效果,因此在聚类之前先进行主成分分析,去除特征维度之间的相关性,再进行聚类操作。
本发明的有益效果是:与现有技术相比,本发明所提供的基于SOM和K-means两阶段聚类的软件负载特征提取方法具有以下优势:提取的负载特征为微架构无关特征参数,反映程序内在特征,不随微架构改变,所以可以有效描述不同程序之间本质差异;将SOM算法和K-means算法结合,对庞大的软件负载特征矩阵进行聚类,同时弥补了SOM收敛时间过长和K-means算法对初始点过于敏感、容易陷入局部最优解的缺陷。
附图说明
图1为本发明的方法整体流程示意图;
图2为动态指令流切片过程示意图;
图3为程序片段的特征参数提取过程示意图;
图4为程序片段的第一阶段聚类示意图;
图5为程序片段的第二阶段聚类示意图。
具体实施方式
下面结合附图对本发明作更进一步的说明。
如图1所示,本发明通过CPU模拟器根据进程切换把软件执行过程切分为若干个程序片段,然后对每个程序片段统计特征参数,这样每个软件会输出多组特征参数,构成一个由多维特征参数组成的矩阵。从特征参数矩阵中提取典型程序片段,利用SOM聚类算法从众多程序片段中找出软件负载特征包含多少个不同类型的特征片段簇,再利用K-means聚类算法从同类型的特征片段簇中找出最能代表这个簇特征的程序片段。
图2所示为动态指令流切片过程。通过模拟器根据进程切换把软件执行过程切分为若干个程序片段。程序在执行的过程中,存在大量的进程切换,不同的进程之间的软件特征是截然不同的,同时,同一个进程在不同的执行阶段的软件特征也是大不相同的。所以,以进程切换的粒度对执行中的程序做划分是比较合理的。
图3所示为程序片段的特征参数提取过程。为了获取每个程序片段的特征参数,需要通过CPU模拟器提取特征参数。从程序执行的动态指令流中,识别并计算负载特征参数,然后对相应的变量做累加,直到这个程序执行完成。
从软件执行过程中的动态指令流中提取的负载特征:
指令混合比:每种类型指令所占的比例,包括整数运算、浮点运算、分支指令、访存指令、串行指令及其它;
关键路径长度:特定指令窗口大小内,具有数据依赖关系的最长的一条指令流长度分布,用以表征理想指令并行度;
寄存器传输特性:包括寄存器平均使用度和寄存器依赖距离分布;
工作集容量:软件运行过程中要占用的内存大小;
访存时间局部性:在两次访问同一地址块的访存操作之间,访问其它特定地址范围内的访存操作的次数;
访存空间局部性:时间上连续的两次访存地址的跨度;
分支行为特性:包括基本块大小、分支平均跳转率和平均变换率;
串行指令:串行指令的时间局部性,用分布表示;
指令空间局部性:时间上连续的两次取指地址的跨度。
图4所示为程序片段的第一阶段聚类。将图2所得到的片段特征矩阵做SOM聚类分析。通过设置多组不同的SOM聚类参数,使得聚类结果中每个簇中的片段特征比较类似。这一步主要是做粗粒度的聚类,将若干程序片段分为多个簇,得到相对稳定的聚类结果,再进行第二阶段的细粒度聚类。
图5所示为程序片段的第二阶段聚类。对图3所得到的片段特征矩阵做K-means聚类分析。进一步将每一大类划分为若干个小簇,找出每个簇的中心点,也就是特征值离质心欧式距离最小的片段。用这个片段的负载特征代表整个簇的特征,最终得到多个片段的负载特征,称为该软件的典型负载特征。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (3)

1.一种基于SOM和K-means两阶段聚类的软件负载特征提取方法,其特征在于:包括以下步骤:
(1)从软件执行过程中的动态指令流中提取负载特征:首先通过CPU模拟器根据进程切换把软件执行过程切分为若干个程序片段,选择每两次进程切换之间的程序片段作为软件切分粒度;然后对每个程序片段统计特征参数,每个软件会输出多组特征参数,构成一个由多维特征参数组成的矩阵;所述的负载特征包括:指令混合比、关键路径长度、寄存器传输特性、工作集容量、访存时间局部性、访存空间局部性、分支行为特性、串行指令、指令空间局部性;
(2)从特征参数矩阵中提取典型程序片段:利用SOM聚类算法从众多程序片段中找出软件负载特征不同的特征片段簇,再利用K-means聚类算法从同类型的特征片段簇中找出最能代表这个簇特征的片段。
2.根据权利要求1所述的基于SOM和K-means两阶段聚类的软件负载特征提取方法,其特征在于:步骤(2)中,聚类过程中先用SOM聚类算法做粗粒度的聚类,将若干程序片段分为多个类,再利用K-means算法对每一类片段进行细粒度聚类,找出距离质心最近的程序片段来代表整个簇的负载特征。
3.根据权利要求2所述的基于SOM和K-means两阶段聚类的软件负载特征提取方法,其特征在于:在聚类之前先进行主成分分析,去除特征维度之间的相关性,再进行聚类操作。
CN201510996261.8A 2015-12-25 2015-12-25 一种基于SOM和K-means两阶段聚类的软件负载特征提取方法 Active CN105654120B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510996261.8A CN105654120B (zh) 2015-12-25 2015-12-25 一种基于SOM和K-means两阶段聚类的软件负载特征提取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510996261.8A CN105654120B (zh) 2015-12-25 2015-12-25 一种基于SOM和K-means两阶段聚类的软件负载特征提取方法

Publications (2)

Publication Number Publication Date
CN105654120A CN105654120A (zh) 2016-06-08
CN105654120B true CN105654120B (zh) 2019-06-21

Family

ID=56477791

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510996261.8A Active CN105654120B (zh) 2015-12-25 2015-12-25 一种基于SOM和K-means两阶段聚类的软件负载特征提取方法

Country Status (1)

Country Link
CN (1) CN105654120B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108008999B (zh) * 2016-11-02 2021-07-20 华为技术有限公司 指标评估方法及装置
CN108628731B (zh) * 2017-03-16 2020-12-22 华为技术有限公司 一种选择测试指令的方法及处理设备
CN110178123B (zh) * 2017-07-12 2020-12-01 华为技术有限公司 性能指标评估方法及装置
CN115543719B (zh) * 2022-11-24 2023-04-07 飞腾信息技术有限公司 基于芯片设计的组件优化方法、装置、计算机设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102567206A (zh) * 2012-01-06 2012-07-11 华中科技大学 一种剖析cuda程序行为的方法
CN103136757A (zh) * 2013-04-02 2013-06-05 西安电子科技大学 基于流形距离的两阶段聚类算法的sar图像分割方法
CN104881688A (zh) * 2015-06-11 2015-09-02 电子科技大学 一种两阶段的基于差分进化和模糊c-均值的聚类算法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102567206A (zh) * 2012-01-06 2012-07-11 华中科技大学 一种剖析cuda程序行为的方法
CN103136757A (zh) * 2013-04-02 2013-06-05 西安电子科技大学 基于流形距离的两阶段聚类算法的sar图像分割方法
CN104881688A (zh) * 2015-06-11 2015-09-02 电子科技大学 一种两阶段的基于差分进化和模糊c-均值的聚类算法

Also Published As

Publication number Publication date
CN105654120A (zh) 2016-06-08

Similar Documents

Publication Publication Date Title
CN105654120B (zh) 一种基于SOM和K-means两阶段聚类的软件负载特征提取方法
US8843422B2 (en) Cloud anomaly detection using normalization, binning and entropy determination
EP2880566B1 (en) A method for pre-processing and processing query operation on multiple data chunk on vector enabled architecture
CN109871949A (zh) 卷积神经网络加速器及加速方法
US20150378861A1 (en) Identification of software phases using machine learning
CN108846851A (zh) 运动目标跟踪方法及终端设备
CN105389471A (zh) 一种机器学习训练集缩减方法
CN105320764A (zh) 一种基于增量慢特征的3d模型检索方法及其检索装置
CN104391879A (zh) 层次聚类的方法及装置
CN106610977B (zh) 一种数据聚类方法和装置
US11042403B2 (en) Platform auto-configuration and tuning
CN112215268A (zh) 一种灾害天气卫星云图分类方法和装置
Wang Analysis on the construction of computer data processing mode based on era of big data
CN104050189B (zh) 页面共享处理方法及装置
Liang et al. VStore: in-storage graph based vector search accelerator
CN113297249A (zh) 慢查询语句的识别和分析、查询语句的统计方法及装置
Kim et al. Image recognition accelerator design using in-memory processing
CN102346830B (zh) 基于梯度直方图的病毒检测方法
CN111797899A (zh) 一种低压台区kmeans聚类方法及系统
CN116453209A (zh) 模型训练方法、行为分类方法、电子设备及存储介质
He et al. A HK clustering algorithm based on ensemble learning
CN113327227B (zh) 一种基于MobilenetV3的小麦头快速检测方法
CN103744899A (zh) 一种基于分布式环境的海量数据快速分类方法
Lin et al. Object detection in RGB-D images via anchor box with multi-reduced region proposal network and multi-pooling
Luo et al. Research on the anonymous customer segmentation model of telecom

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Inventor after: Sha Jiang

Inventor after: Chen Miaomiao

Inventor after: Zhang Yang

Inventor after: Shi Longxing

Inventor before: Sha Jiang

Inventor before: Chen Miaomiao

Inventor before: Zhang Yang

COR Change of bibliographic data
TA01 Transfer of patent application right

Effective date of registration: 20190325

Address after: 215123 Linquan Street 399, Dushu Lake Higher Education District, Suzhou Industrial Park, Jiangsu Province

Applicant after: Suzhou Institute, Southeast University

Address before: 214135 No. 99 Linghu Avenue, Wuxi New District, Wuxi City, Jiangsu Province

Applicant before: SOUTHEAST UNIVERSITY - WUXI INSTITUTE OF TECHNOLOGY INTEGRATED CIRCUITS

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant