[发明专利]关闭关键执行路径的任务信令有效
申请号: | 201680060072.2 | 申请日: | 2016-09-14 |
公开(公告)号: | CN108139932B | 公开(公告)日: | 2021-08-24 |
发明(设计)人: | A·拉曼;P·蒙特西诺斯奥尔特戈 | 申请(专利权)人: | 高通股份有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 永新专利商标代理有限公司 72002 | 代理人: | 张立达;王英 |
地址: | 美国加*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 关闭 关键 执行 路径 任务 | ||
实施例包括用于计算设备上的任务信令的计算设备、系统和方法。可以中断关键执行路径上的起始线程对任务的执行,以由起始线程创建至少一个并行任务,其中所述至少一个并行任务可以与起始线程执行的任务并行执行。起始线程可以发送用于向中继线程指示所述至少一个并行任务的创建的起始信号。在获取所述至少一个并行任务之前,可以恢复起始线程对任务的执行。
背景技术
构建响应性、高性能和高效的应用程序对于提供满意的用户体验来说是至关重要的。为了提高性能和功效,程序的并行部分可以由运行在一个或多个计算内核上、中央处理单元(CPU)、图形处理单元(GPU)或者其它并行硬件上的一个或多个线程来执行。通常,称为“主线程”的一个线程进入并行部分,创建帮助任务,通知其它线程帮助执行该并行部分。
尽管任务创建通常不昂贵,但通知其它线程可能相对非常昂贵,这是因为它通常涉及操作系统调用。例如,在顶级四核智能手机中,等待条件变量的信号线程的延迟可能高达40微秒(大约90,000个CPU周期)。代码的几个并行部分中的每一部分可能需要40微秒才能执行,使得这种高信令成本对于并行执行来说是不可接受的。在关键执行路径上的信令期间,并行部分的执行不会在关键执行路径上或者该信令发起的另一个线程上开始,直到该信令完成为止。因此,并行化不是在关键执行路径上加速原始代码段,而是将关键执行路径上的执行速度放慢了将近两倍。当其它线程与关键执行路径上的任务并行执行任务时,可以恢复该延迟中的某些。
发明内容
各个实施例的方法和装置提供了用于计算设备上的任务信令的电路和方法。各个实施例可以包括:由关键执行路径上的起始线程中断任务的执行;由起始线程创建至少一个并行任务,所述至少一个并行任务可以与起始线程执行的任务并行执行;发送用于由起始线程向中继线程指示所述至少一个并行任务的创建的起始信号;在获取所述至少一个并行任务之前,恢复起始线程对任务的执行。
此外,一些实施例还可以包括:由所述中继线程接收所述起始信号;当所述中继线程处于等待状态时,响应于接收到所述起始信号,将所述中继线程改变成活动状态。
在一些实施例中,所述起始信号可以是直接起始信号,由所述中继线程接收所述起始信号可以包括:经由与所述起始线程的连接来接收所述直接起始信号。
在一些实施例中,所述起始信号可以是间接起始信号,所述实施例还可以包括:修改存储器设备的一个位置处的用于指示所述至少一个并行任务的所述创建的数据,其中,由所述中继线程接收所述起始信号可以包括:从所述存储器设备的所述位置获取所修改的数据。
一些实施例还可以包括:向至少一个工作线程发送用于指示所述至少一个并行任务的所述创建的中继信号。
此外,一些实施例还可以包括:由所述至少一个工作线程接收所述中继信号;当所述至少一个工作线程处于等待状态时,响应于接收到所述中继信号,将所述至少一个工作线程改变成活动状态;由所述至少一个工作线程获取所述至少一个并行任务;由所述至少一个工作线程与所述起始线程执行所述任务并行地执行所述至少一个并行任务。
此外,一些实施例还可以包括:判断所述中继线程是否保留另一个并行任务;由所述中继线程获取所述另一个并行任务;由所述中继线程与所述起始线程执行所述任务并行地执行所述另一个并行任务。
此外,一些实施例还可以包括:判断是否超过用于所述中继线程的状态改变门限;响应于确定超过用于所述中继线程的所述状态改变门限,将所述中继线程的状态从活动状态改变成等待状态,或者从所述等待状态的一个级别改变成所述等待状态的更低级别。
各个实施例可以包括被配置为用于任务信令的计算设备。该计算设备可以包括彼此之间通信连接的多个处理器核心,其中,所述多个处理器核心包括被配置为执行起始线程的第一处理器核心、被配置为执行中继线程的第二处理器核心、以及被配置为执行工作线程的第三处理器核心,其中所述处理器核心被配置为执行上面所描述的一个或多个实施例方法的操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于高通股份有限公司,未经高通股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201680060072.2/2.html,转载请声明来源钻瓜专利网。