[发明专利]一种用于众核处理器的函数处理方法及系统无效
申请号: | 201210438263.1 | 申请日: | 2012-11-06 |
公开(公告)号: | CN102982009A | 公开(公告)日: | 2013-03-20 |
发明(设计)人: | 金星;尤洪涛;姜小成;孙俊;王淼;张立博;毛智辉 | 申请(专利权)人: | 无锡江南计算技术研究所 |
主分类号: | G06F17/15 | 分类号: | G06F17/15 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 骆苏华 |
地址: | 214083 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 处理器 函数 处理 方法 系统 | ||
技术领域
本发明涉及集成电路领域,特别是涉及一种用于众核处理器的函数处理方法及系统。
背景技术
随着集成电路技术的高速发展,CPU芯片的性能也越来越强大。其中一种主要用于浮点运算和密集运算的CPU芯片称为众核处理器。众核处理器中具有多个协处理器。在运行某段程序时,众核处理器可以将该段程序分割成多个小程序后并行运行。分割出来的每个小程序可以称为核心段函数。每个协处理器可以运行一段核心段函数,多个协处理器可以同时运行多段核心段函数。这样就可以将一段比较大的程序分割成多个小程序后,并行处理,提高CPU芯片对于大程序的处理效率。
众核处理器中的协处理器具有局存。局存具有高速读写能力,但是局存的存储空间较小。在对核心段函数进行处理时,应该尽可能的将核心段函数用到的变量放在局存中运行,这样可以最大程度提高众核处理器的处理效率。
但是,现有技术中,由于编译器或编程语言的限制,协处理器在执行函数时,每个核心段函数的局存变量都会一直存储在局存中,固定在局存的某个位置,占用局存空间,这部分空间只能被一个核心段所使用,其它核心段函数无法使用。当变量过多时,局存空间将无法存储所有核心段函数的全部变量,导致众核处理器对于函数的处理效率无法进一步提高。
发明内容
本发明的目的是提供一种用于众核处理器的函数处理方法及系统,能够避免核心段函数的变量在函数处理过程中,一直占用局存空间,使局存能够被不同的核心段函数所重用,进一步提高众核处理器对于函数的处理效率。
为实现上述目的,本发明提供了如下方案:
一种用于众核处理器的函数处理方法,包括:
获取核心函数中需要放置在所述众核处理器中协处理器的局存中的变量;
将所述变量封装成一个数据结构类型;
声明一个指针变量,所述指针变量的类型与所述数据结构类型相同;
将对局存中的变量的访问修改为对所述指针变量的访问。
可选的,将对局存中的变量的访问修改为对所述指针变量的访问之后,还包括:
获取所述局存中的可用的存储空间首地址;
控制所述指针变量指向所述存储空间首地址。
可选的,所述获取核心函数中需要放置在所述众核处理器中协处理器的局存中的变量,包括:
获取所述核心函数中的所有变量;
确定所述所有变量的大小以及所述局存的可用空间大小;
判断所述所有变量的大小是否小于或等于所述局存的可用空间大小;
如果是,则将所有变量确定为需要放置在所述众核处理器中协处理器的局存中的变量;
否则,根据所述核心函数中对各个变量的访问开销确定需要放置在所述众核处理器中协处理器的局存中的变量。
可选的,所述根据所述核心函数中对各个变量的访问次数确定需要放置在所述众核处理器中协处理器的局存中的变量,包括:
按照访问开销由多到少的顺序,确定需要放置在所述众核处理器中协处理器的局存中的变量,直至已确定的需要放置在所述众核处理器中协处理器的局存中的变量的大小之和达到所述局存的可用存储空间所能存储的最大值。
可选的,所述根据所述核心函数中对各个变量的访问开销确定需要放置在所述众核处理器中协处理器的局存中的变量,包括:
分别判断对于每个变量的访问次数是否达到预设阈值;
将访问次数达到所述预设阈值的变量确定为需要放置在所述众核处理器中协处理器的局存中的变量。
一种用于众核处理器的函数处理系统,包括:
变量获取单元,用于获取核心函数中需要放置在所述众核处理器中协处理器的局存中的变量;
变量封装单元,用于将所述变量封装成一个数据结构类型;
指针变量声明单元,用于声明一个指针变量,所述指针变量的类型与所述数据结构类型相同;
访问类型修改单元,用于将对局存中的变量的访问修改为对所述指针变量的访问。
可选的,还包括:
存储空间首地址获取单元,用于获取所述局存中的可用的存储空间首地址;
指针变量控制单元,用于控制所述指针变量指向所述存储空间首地址。
可选的,所述变量获取单元,包括:
全变量获取子单元,用于获取所述核心函数中的所有变量;
变量空间确定子单元,用于确定所述所有变量的大小以及所述局存的可用空间大小;
第一判断子单元,用于判断所述所有变量的大小是否小于或等于所述局存的可用空间大小;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于无锡江南计算技术研究所,未经无锡江南计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210438263.1/2.html,转载请声明来源钻瓜专利网。