[发明专利]使用用户级控制机制进行剖析无效

专利信息
申请号: 200680036157.3 申请日: 2006-10-02
公开(公告)号: CN101278265A 公开(公告)日: 2008-10-01
发明(设计)人: C·纽伯恩;H·王;X·邹;R·奈特;A·切尔诺夫;R·杰瓦 申请(专利权)人: 英特尔公司
主分类号: G06F11/34 分类号: G06F11/34;G06F9/38;G06F9/46
代理公司: 永新专利商标代理有限公司 代理人: 王英
地址: 美国加*** 国省代码: 美国;US
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 使用 用户 控制 机制 进行 剖析
【说明书】:

背景技术

发明的实施例涉及计算机系统,更具体地,涉及对这种系统的资源的有效利用。

计算机系统使用该系统的不同硬件资源执行各种软件程序,所述硬件资源包括:处理器、存储器和其它这样的组件。处理器本身包括各种资源,包括:一个或多个执行核心、高速缓冲存储器、硬件寄存器等等。某些处理器还包括硬件性能计数器,其用于对在程序执行期间发生的事件或动作进行计数。例如,某些处理器包括用于对存储器访问、高速缓存缺失、执行的指令等等进行计数的计数器。另外,在软件中还可以存在性能监视器,以监视一个或多个软件程序的性能。

总之,能够根据不同使用模型来使用这样的计数器和监视器。例如,它们可以在编译或者其它优化活动期间使用,以便基于在程序执行期间所获得的剖析信息(profile information)来改善代码执行。近几年,随着大量新软件都在用可管理的语言(managed language)进行编写,收集剖析信息以用于反馈式(feedback-directed)动态优化,这种操作变得非常重要。传统的反馈式优化技术依赖于:提供用来收集剖析信息的程序,要求进行编译以便插入钩子来收集该数据,以很高的开销来运行该程序,然后利用剖析信息进行重新编译来获得产品二进制码。插装代码(instrumentation code)不能收集与其不能直接观察到的行为(例如,硬件存储器高速缓存行为)相关的信息。在另一种使用模型中,一旦在程序执行期间在计数器或者监视器中有事件发生,就可以调用一个或多个辅助线程(helper thread)。这种辅助线程是软件例程,它们由调用程序进行调用来改善执行,例如,从存储器预取数据或者执行另一活动以改善程序执行。

经常,这些资源的使用是很低效的,并且在不同使用模型中对这样的资源的使用可能发生冲突。因此,就需要有改进的方式来在这些不同的使用模型中获得并使用监视器和性能信息。

附图说明

图1是根据本发明的一个实施例的处理器的框图。

图2是根据本发明的一个实施例,多个通道(channel)的硬件实现的框图。

图3是根据本发明的一个实施例,系统中的硬件/软件交互的框图。

图4是根据本发明的一个实施例的方法的流程图。

图5是根据本发明的一个实施例,用于使用编程的通道的方法的流程图。

图6是根据本发明的一个实施例,用于执行服务例程的方法的流程图。

图7是根据本发明的一个实施例的多处理器系统的框图。

具体实施方式

现在参考图1,示出了根据本发明的一个实施例的处理器的框图。在一些实施例中,处理器10可以是单芯片多处理器(CMP)或者另一种多处理器单元。如图1所示,第一核心20和第二核心30可以用于执行各种软件线程的指令。在图1中还示出,第一核心20包括监视器40,该监视器可以用于管理资源并控制该核心的多个通道50a-50d。第一核心20还可以包括执行资源22,所述执行资源例如可以包括由该核心和其它执行单元构成的流水线。第一核心20还可以包括耦合到执行资源22的多个性能计数器45,所述性能计数器可以用于对这些资源内的各种动作或者事件进行计数。由此,性能计数器45可以检测特定的条件和/或计数值,并对各种架构和/或者微架构事件进行和监视,然后这些事件被发送到例如监视器40。

监视器40可以包括各种可编程逻辑、软件和/或者固件,用来跟踪在性能计数器45和通道50a-50d中的活动。在一个实施例中,通道50a-50d可以是基于寄存器的存储介质。一个通道是一个架构状态,其包括针对一个场景(scenario)的详细说明和发生信息,在下面将要进行讨论。在各种实施例中,一个核心可以包括一个或多个通道。每个软件线程可以对应一个或多个通道,并且对于每个软件线程,所述通道可以被虚拟化。监视器40可以对通道50a-50d进行编程以针对各种使用模型,包括性能导向优化(PGO)或者与通过使用辅助线程等而改善的程序性能有关。

虽然在图1的实施例中示出了包括4个这样的通道,但是在其它实施例中可以存在更多或者更少这样的通道。此外,虽然为了易于图示而仅仅在第一核心20中示出了通道,但是在多个处理器核心中都可以存在通道。让步(yield)指示器52可以与通道50a-50d相关联。在各种实施例中,让步指示器52可以担当一个锁,以便在让步指示器52处于设定状态(例如)时防止发生一个或多个让步事件(以下要进行讨论)。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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