多线程处理器、编译器装置及操作系统装置制造方法及图纸

技术编号:9765578 阅读:86 留言:0更新日期:2014-03-15 09:22
一种并行执行多个线程的命令的多线程处理器(1),具有:由分别执行命令的多个运算器构成的运算器组(119);第1命令分组部(108)~第3命令分组部(110),按照每个线程,将该线程所包含的命令分组为由能够由上述多个运算器同时执行的命令构成的组;线程选择部(114),通过控制多个线程的命令的执行频度,从而按照多线程处理器(1)的每个执行周期,从多个线程中选择含有对多个运算器发行的命令的线程;以及命令发行部(115),按照多线程处理器(1)的每个执行周期,对多个运算器发行由线程选择部(114)选择的线程所包含的命令中、被分组后的组的命令。

【技术实现步骤摘要】
多线程处理器、编译器装置及操作系统装置本申请是2010年3月18日提交的申请号为201080009472.3、专利技术名称为“多线程处理器、编译器装置及操作系统装置”的中国专利申请的分案申请。
本专利技术涉及并行执行多个线程(thread)的多线程处理器等,尤其涉及通过控制各个线程所包含的命令的执行定时来提高各个线程的执行效率的多线程处理器等。
技术介绍
近年来,在AV (Audio/Visual)处理的领域中,连续发表了新的编解码器(codec)或新规格等,基于软件的AV处理的需求日益提高。因此,在AV系统等中要求的处理器性能也飞跃性提高。并且,对应于所执行的软件的多任务化,开发了许多采用同时执行多个线程的多线程技术的多线程处理器。在现有的多线程处理器中,公知有以下技术,即:按照处理器的每个执行周期来切换执行的线程的细粒度多线程(Fine-Grained Multithreading)(例如,参照专利文献I),或者以Intel公司的超线程技术为代表的、在执行周期内同时执行多个线程的同步多线程(Simultaneous Multithreading:SMT)(例如,参照非专利文献 I)等。现有技术文献专利文献专利文献1:日本特开2008 - 123045号公报(图6等)非专利文献非专利文献1:1ntel社(平成21年2月16 日检索)、网址< URL:http://www.1ntel.com/jp/technology/hyperthread/ >专利技术概要专利技术要解决的问题但是,在现有的多线程处理器中,当在线程之间竞争运算资源的情况下,用户指定或处理器实施方面的线程的优先度中处于劣势的其它线程的执行效率存在局部明显下降的情况。并且,在各个线程的命令数与运算器资源数的平衡较差的情况下,有可能不能得到在多线程动作中期待的那样的执行效率。例如,针对具有能够同时执行4个命令的运算器资源的处理器、想要连续发行分别包含在两个线程中的2个命令和3个命令时,两个线程的合计命令数是5。因此,不能同时执行这两个线程而只执行某一个线程的命令。因此,导致一个或两个运算器资源不被使用而造成浪费,存在线程的执行效率降低的问题。
技术实现思路
本专利技术是为了解决上述问题而提出的,其目的在于,提供线程的执行效率高的多线程处理器、以及适合于该多重处理器的编译器装置和操作系统装置。用于解决问题的手段本专利技术的某个方面的多线程处理器,并行执行多个线程的命令,具有:分别执行命令的多个运算器;分组部,按照每个线程,将该线程所包含的命令分组为由能够由上述多个运算器同时执行的命令构成的组;线程选择部,通过控制上述多个线程的命令的执行频度,从而按照上述多线程处理器的每个执行周期,从上述多个线程中选择含有对上述多个运算器发行的命令的线程;以及命令发行部,按照上述多线程处理器的每个执行周期,对上述多个运算器发行如下命令,即:由上述线程选择部选择的上述线程所包含的命令中、由上述分组部进行分组而得到的组的命令。根据这种结构,通过控制多个线程的执行频度,能够防止在用户指定或处理器实施方面的线程之间的优先度中处于劣势的线程的执行效率局部明显下降。此外,能够控制多个线程的执行频度以使得运算器资源能够有效利用,能够获得各个线程的命令数和运算器资源数的平衡,高效率地使用运算器资源。由此,能够提供线程的执行效率高的多线程处理器。优选为,上述多线程处理器还具有命令数指定部,该命令数指定部按照每个线程来指定由上述分组部进行分组的上述组所包含的命令的最大个数,上述分组部以不超过由上述命令数指定部指定的上述命令的最大个数的方式对命令进行分组。根据这种结构,能够获得各个线程的命令数和运算器资源数的平衡,高效率地使用运算器资源。另外,优选为,上述命令数指定部按照在寄存器中设定的值来指定上述最大个数。根据这种结构,通过在维持命令集体系的状态下利用程序来更新寄存器的设定值,能够按程序的每个任意的范围来控制上述最大个数,优化执行效率。并且,也可以是,上述命令数指定部按照上述多个线程所包含的用于指定上述最大个数的命令来指定上述最大个数。根据这种结构,与按照在寄存器中设定的值来指定最大个数的情况相比,能够与能够削减的地址设定和存储器访问相应地更高速地变更设定。此外,能够不必在意开销损耗而与能够高速地变更设定相应地按程序的更详细的每个任意的范围来控制上述最大个数,优化执行效率。另外,优选为,上述线程选择部具有执行间隔指定部,该执行间隔指定部对上述多个线程分别指定在上述多个运算器中的命令的执行周期间隔,上述线程选择部按照由上述执行间隔指定部指定的执行周期间隔来选择上述线程。根据这种结构,能够抑制优先度较高的线程长时间占用资源,能够防止优先度较低的线程的执行局部停止。另外,优选为,上述执行间隔指定部按照在寄存器中设定的值来指定上述执行周期间隔。根据这种结构,通过在维持命令集体系的状态下利用程序来更新寄存器的设定值,能够按程序的每个任意的范围来抑制资源占用,提高其它线程的执行效率。并且,也可以是,上述执行间隔指定部按照上述多个线程所包含的用于指定上述执行周期间隔的命令来指定上述执行周期间隔。根据这种结构,与按照在寄存器中设定的值来指定执行周期间隔的情况相比,能够与能够削减的地址设定、存储器访问相应地更高速地变更设定。此外,能够不必在意开销损耗而与能够高速地变更设定相应地按程序的更详细的每个任意的范围来抑制资源占用,提闻其它线程的执行效率。另外,优选为,上述线程选择部具有发行间隔抑制部,该发行间隔抑制部针对发行了在多个线程之间引起运算器竞争的命令的线程来进行抑制,以使得引起上述竞争的命令在固定的执行周期数内无法执行。根据这种结构,与唯一地抑制执行周期的方法不同,能够只对最小必要限度的命令进行抑制。因此,能够不降低执行效率并高效率地向其它线程让出资源。本专利技术的另一个方面的编译器装置,将源程序转换为可执行代码,适合于将多个线程的命令并行执行的多线程处理器,该编译器装置具有:指示取得部,取得与多线程控制相关的编程员的指示;以及控制代码生成部,根据上述指示来生成对处理器的执行模式进行控制的代码。根据这种结构,能够按照与多线程控制相关的编程员的指示来控制处理器的执行模式。因此,能够生成适合于线程执行效率高的多线程处理器的代码。本专利技术的另一个方面的操作系统装置,适合于将多个线程的命令并行执行的多线程处理器,该操作系统装置具有系统代码处理部,该系统代码处理部根据与多线程控制相关的编程员的指示来处理系统调用,该系统调用使得处理器的执行模式能够控制。根据这种结构,能够按照与多线程控制相关的编程员的指示来控制处理器的执行模式。因此,能够处理适合于线程执行效率高的多线程处理器的系统调用。另外,本专利技术不仅能够实现为这样的具有特征性的处理部的多线程处理器,而且也能够实现为将多线程处理器所包含的特征性的处理部作为步骤的信息处理方法。此外,还能够实现为使计算机执行信息处理方法所包含的特征性步骤的程序。并且,这种程序当然能够通过⑶一 ROM (Compact Disc 一 Read Only Memory)等非易失性记录介质、因特网等通信网络而进行流通。专利技术效果根据本专利技术的多线程处理器等,即使是在线程之间竞争运本文档来自技高网
...

【技术保护点】
一种编译器装置,将源程序转换为可执行代码,适合于将多个线程的命令并行执行的多线程处理器,该编译器装置具有:指示取得部,取得与多线程控制相关的编程员的指示;以及控制代码生成部,根据上述指示来生成对处理器的执行模式进行控制的代码。

【技术特征摘要】
2009.05.28 JP 2009-1296071.一种编译器装置,将源程序转换为可执行代码,适合于将多个线程的命令并行执行的多线程处理器, 该编译器装置具有: 指示取得部,取得与多线程控制相关的编程员的指示;以及 控制代码生成部,根据上述指示来生成对处理器的执行模式进行控制的代码。2.根据权利要求1所述的编译器装置,其中, 上述指示取得部取得对并行执行进行关注的指示。3.根据权利要求1所述的编译器装置,其中, 上述指示取得部取得不对并行执行进行关注的指示。4.根据权利要求2或3所述的编译器装置,其中, 上述控制代码生成部根据上述指示来生成使运算器数增减的代码。5.根据权利要求1所述的编译器装置,其中, 上述指示取得部取得关于命令并行度的指示, 上述控制代码生成部生成按上述命令并行度来执行线程的代码。6.根据权利要求1所述的编译器装置,其中, 上述指示取得部取得关于线程的执行数的指示。7.根据权利要求6所述的编译器装置,其中, 上述指示取得部取得关于单线程执行的指示。8.根据权利要求6或7所述的编译器装置,其中, 上述控制代码生成部根据上述指示来生成对线程的执行数进行控制的代码。9.根据权利要求1所述的编译器装置,其中, 上述指示取得部取得与线程的响应性的确保相关的指示。10.根据权利要求1所述的编译器装置,其中, 上述指示取得部取得与产生停顿周期的频度相关的指示。11.根据权利要求1所述的编译器装置,其中, 上述指示取得部取得与运算器资源的释放相关的指示。12.根据权利要求9~11中任意一项所述的编译器装置,其中, 上述控制代码生成部根据上述指示来生成按固定频度插入停顿周期的代码。13.根据权利要求9~11中任意一项所述的编译器装置,其中, 上述控制代码生成部根据上述指示来生成按固定频度释放运算器资源的代码。14.根据权利要求1~...

【专利技术属性】
技术研发人员:古贺义宏瓶子岳人
申请(专利权)人:松下电器产业株式会社
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1