[发明专利]多核多中央处理器的执行线程分配方法有效
申请号: | 200610111801.0 | 申请日: | 2006-08-21 |
公开(公告)号: | CN101131652A | 公开(公告)日: | 2008-02-27 |
发明(设计)人: | 段秋月;陈镇;陈玄同;刘文涵 | 申请(专利权)人: | 英业达股份有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46 |
代理公司: | 北京律诚同业知识产权代理有限公司 | 代理人: | 梁挥;徐金国 |
地址: | 中国台*** | 国省代码: | 中国台湾;71 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 多核 中央处理器 执行 线程 分配 方法 | ||
技术领域
本发明涉及处理器的执行线程调度处理方法,特别是涉及一种在多核多中央处理器(Central processing unit,CPU)的架构下所提出的执行线程分配方法。
背景技术
目前,面对快速增长的串流媒体信息和网络应用的全球化趋势,企业和消费者要求计算机处理器提供更多的便利、更明显的优势,因此采用多核中央处理器(Central processing unit,CPU)的各种服务器应运而生。多核中央处理器是指在单一中央处理器的基板上拥有两个以上处理器核心的中央处理器,为主要针对专业用户或家庭多媒体用户的新一代计算机中央处理单元。并且,随着科技的发展还出现了具有两个或以上多核中央处理器的多核多中央处理器系统。由于多核中央处理器将一个任务分为几个较小部分,并由多个处理器核心同时处理,即充分利用多个核心中的所有可执行单元,让可执行单元的执行线程被同时平行调度执行。因此,多核处理技术能够在多媒体应用、多任务应用方面发挥优势,大幅提高计算机运行速度及处理器的性能。
然而由于目前的并行处理技术不够完善,因此在公知技术的计算机多核多执行线程运行的情况下可能会导致以下错误:例如多核中央处理器中的两个执行线程潜在的以不可预知的顺序请求同一存储器地址,即资源竞争、一个执行线程等待不能发生的事件、执行线程掌握使用权但却异常终止、或者是陷入混乱的执行线程运行等等。
在上述问题中,“资源竞争”问题尤为经常发生。如果应用程序中的所有执行线程都需要使用到相同的资源,那么对此资源的竞争可能会使得其它未获得资源的执行线程花费其大部份时间在作休眠等待。而且“资源竞争”还可能导致发生过多的上下文转换,进而会引起应用程序占用系统核心中相当比例的处理时间,或者甚至根本没有运行代码。如果是在多核中央处理器的系统上,这些问题会尤其糟糕,额外的处理器可能会结束当前闲置,等待共享数据。有时使用者会发现软件在双核系统上运行的应用实际上速度更慢,这就是由上述问题造成的。
这种情况在一些多核多中央处理器的计算机上进行软硬件设备的执行线程运行测试时,公知技术的测试(Diagnostic)项目采用平台调度测试项执行线程的方式进行测试,因此会出现一些在单核中央处理器下不会出现的问题。这些问题是由于单一执行线程在运行时由不同中央处理器轮流调度其时间片不能同步或不能按设计的思路顺序调用而造成的。
在测试中,公知测试(Diagnostic)平台提供了将整个进程指定到某单一中央处理器去运行的功能,但这样的处理只能尽量减少资源竞争等问题的发生,而且这样的处理会导致测试时其它中央处理器没有承受压力,因此并不是一种好的解决方案。
特别是在一些应用场合中,如:测试(Diagnostic),通常因为测试项目的特性或者是硬设备的特性,使得在同一时间仅允许一个测试执行线程对特定硬设备或者同一资源进行使用,这个时候就会容易发生多个执行线程等待请求的情况了。不仅多核多中央处理器的压力测试中存在以上问题,在正常的多核多中央处理器的计算机系统软件调用上也同样存在。
发明内容
本发明的目的在于提供一种多核多中央处理器的执行线程分配方法,应用于多个多核中央处理器的执行线程调用中,此方法不仅能够避免多核多中央处理器的软件层的并行处理中存在资源冲突隐忧,还可以平均分配各个中央处理器的压力,进而提高各个多核中央处理器调用的工作效率,加快多核中央处理器系统的运行的速度。
为了实现上述目的,本发明提供了一种多核多中央处理器的执行线程分配方法,应用于多个多核中央处理器的执行线程调用中,此方法包含以下步骤:建立各个执行项与其原始码的对应关系列表,以反映各执行项在一软件层的潜在资源竞争;在启动各执行项的执行线程的过程中,生成各执行项与其执行线程识别码的对应关系列表;依据执行项与其原始码的对应关系列表及执行项与其执行线程识别码的对应关系列表,以分配执行线程为多个分组;以及依次指定执行线程的多个分组至多个多核中央处理器的单一执行核心来运行,以平均分配多个多核中央处理器的执行线程调用。
其中依次指定执行线程的多个分组至多个多核中央处理器的单一执行核心的步骤还包含有下列步骤:依次指定多个分组中属于同一执行线程分组的执行线程至多个多核中央处理器的同一个中央处理器的单一执行核心中;以及依照多个多核中央处理器的执行核心的压力平均,灵活分配多个分组中仅包含单一执行线程的分组至多个多核中央处理器的单一执行核心中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英业达股份有限公司,未经英业达股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200610111801.0/2.html,转载请声明来源钻瓜专利网。