[发明专利]计算密集型并行任务的异常检测方法及系统有效

专利信息
申请号: 201310590574.4 申请日: 2013-11-20
公开(公告)号: CN103645961A 公开(公告)日: 2014-03-19
发明(设计)人: 武永卫;郑纬民;陈康;郭维超 申请(专利权)人: 清华大学
主分类号: G06F11/07 分类号: G06F11/07;G06F9/38
代理公司: 北京清亦华知识产权代理事务所(普通合伙) 11201 代理人: 张大威
地址: 100084 北京*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 计算 密集型 并行 任务 异常 检测 方法 系统
【说明书】:

技术领域

发明涉及分布式、并行计算领域,尤其涉及一种计算密集型并行任务的异常检测方法及系统。

背景技术

云计算的发展为用户提供了丰富的计算资源,一个数据中心通常有数千台服务器用于处理海量并行任务以支持用户应用(如信息检索、统计分析以及科学计算等)。目前,传统的服务器集群规模也得到进一步扩大,一般有数千个CPU核心。在如此大规模的架构下,有效和稳定的计算模型和框架尤为关键。

在面向SPMD(单程序多数据)并行处理计算框架中,用户通过提交作业的方式使用计算资源。每个作业被切分为计算规模相同的多个任务在各个计算节点上执行,多达数千的计算节点中会有极少数的异常节点出现。在数据中心和集群环境中,物理节点通常是被众多用户共享的,异常节点的产生通常有许多不可预期的因素,例如,不均匀的任务分配、硬件/软件问题、网络拥塞等。异常节点的存在极大地拖慢了整个作业的完成时间,对海量任务处理的性能影响十分严重。

为了检测异常节点,一些计算框架采用“投机执行”的任务调度方式。“投机执行”通过识别异常节点、在其他健康节点同时执行该任务,在获取执行结果后终止未完成的任务。以典型的MapReduce计算框架为例,通常使用数据的读入量估计任务进度来发现异常节点。但是此框架的实现存在一个前提,即任务进度和数据读入是线性相关的。这类计算框架对于数据密集型任务的异常节点的检测(如Word Count)是合理的,但不适用于计算密集型任务。

发明内容

本发明旨在至少解决上述技术问题之一。

为此,本发明的第一个目的在于提出一种计算密集型并行任务的异常检测方法。

本发明的第二个目的在于提出一种计算密集型并行任务的异常检测系统。

为了实现上述目的,本发明第一方面的实施例提出了一种计算密集型并行任务的异常检测方法,包括以下步骤:对程序机器码进行分析以获取所述程序机器码的函数覆盖信息;根据所述函数覆盖信息选择任务进度跟踪函数,并对所述任务进度跟踪函数的入口进行插桩,以获取插桩后的程序机器码;分别由多个计算节点通过插桩后的所述程序机器码执行作业的多个任务;获取所述多个计算节点的多个跟踪信息;对所述多个跟踪信息进行聚类分析;根据所述聚类结果判断所述多个计算节点中的异常节点;以及判断执行的所述多个任务是否全部完成,若全部完成,则结束所述异常节点的检测。

根据本发明实施例的计算密集型并行任务的异常检测方法,解决了计算密集型任务没有进度信息的问题,并通过对一个作业同时执行的多个任务的跟踪信息进行聚类分析,可以高效、准确地检测出异常节点。

在一些示例中,所述函数覆盖信息包括所述程序机器码中各个函数在采样执行中的函数调用次数信息。

在一些示例中,通过如下方法对所述多个跟踪信息进行聚类:二类K均值聚类算法。

在一些示例中,所述根据聚类结果得到所述多个计算节点中的异常节点,具体包括:将所述聚类结果与预设阈值进行比较;根据比较结果判断所述聚类结果中是否包括异常的聚类群;如果是,则判定所述异常的聚类群对应的计算节点为所述异常节点。

在一些示例中,还包括:对所述预设阈值进行动态调整,并根据动态调整后的预设阈值判定所述多个计算节点中的异常节点。

本发明第二方面的实施例提出了一种计算密集型并行任务的异常检测系统,包括:插桩点选择器,用于对程序机器码进行分析以得到所述程序机器码的函数覆盖信息;程序插桩器,用于对任务进度跟踪函数的入口进行插桩,以获取插桩后的程序机器码,其中,插桩代码内容为对程序进度计数器加1;多个计算节点,用于分别通过插桩后的所述程序机器码执行作业的多个任务;收集装置,用于获取所述多个计算节点的多个跟踪信息;聚类分析器,用于对所述多个跟踪信息进行聚类分析,并根据所述聚类结果判断所述多个计算节点中的异常节点。

根据本发明实施例的计算密集型并行任务的异常检测系统,解决了计算密集型任务没有进度信息的问题,并通过对一个作业同时执行的多个任务的跟踪信息进行聚类分析,可以高效准确地检测出异常节点,可用于生产环境的针对海量计算密集型任务的异常节点的检测。

在一些示例中,所述函数覆盖信息包括所述程序机器码中各个函数在采样执行中的函数调用次数信息。

在一些示例中,所述聚类分析器用于利用二类K均值聚类算法对所述多个跟踪信息进行聚类分析。

在一些示例中,所述聚类分析器用于:将所述聚类结果与预设阈值进行比较;根据比较结果判断所述聚类结果中是否包括异常的聚类群;如果是,则判定所述异常的聚类群对应的计算节点为所述异常节点。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201310590574.4/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top