[发明专利]多线程计算有效
| 申请号: | 201380006344.7 | 申请日: | 2013-01-23 |
| 公开(公告)号: | CN104094235B | 公开(公告)日: | 2019-05-28 |
| 发明(设计)人: | 迈克尔·克莱尔·休斯顿;迈克尔·曼特;李·W·豪斯;本尼迪克特·R·盖斯特 | 申请(专利权)人: | 超威半导体公司 |
| 主分类号: | G06F9/54 | 分类号: | G06F9/54 |
| 代理公司: | 上海胜康律师事务所 31263 | 代理人: | 李献忠 |
| 地址: | 美国加利*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 多线程 计算 | ||
1.一种用于执行多线程计算的方法,其包括:
定义生产者内核;
定义消费者内核;
定义在所述生产者内核和所述消费者内核之间的一个或多个通道,其中所述生产者内核被配置成将数据写入所述一个或多个通道,并且其中所述消费者内核被配置成从所述一个或多个通道读取所述数据;
寄存一个或多个通道事件,其中每个通道事件与所述一个或多个通道中的通道关联,并且每个通道事件被寄存以响应于所述关联的通道的通道条件被满足,启动所述消费者内核;
响应于检测到与所述通道事件相关联的所述通道的所述通道条件被满足,从所述消费者内核还没有具现的状态启动所述消费者内核以消费来自与所述一个或多个通道事件的通道事件相关联的所述通道的所述数据,其中仅仅当响应于与所述通道事件相关联的所述通道的所述通道条件被需要以防止所述消费者内核的阻塞和系统资源的使用时,启动所述消费者内核;
在所述消费者内核读取和消费来自于所述通道事件相关联的所述通道的数据;以及
在所述来自与所述通道事件相关联的所述通道的所述数据的读取和消费完成时,终止所述消费者内核以释放系统资源。
2.根据权利要求1所述的方法,其中与所述通道事件相关联的所述通道的所述通道事件相关联的所述通道的所述通道条件在至少一个数据块在所述通道中时被满足。
3.根据权利要求1所述的方法,其中所述通道条件在与所述通道事件相关联的所述通道已满时被满足。
4.根据权利要求1所述的方法,其还包括:
在运行时将所述一个或多个通道分配给处理单元的存储器单元。
5.根据权利要求1所述的方法,其还包括:
执行被配置成观察所述一个或多个通道事件并且触发所述消费者内核的所述启动的硬件调度系统。
6.根据权利要求1所述的方法,其还包括:
当满足所述通道条件时,将所述消费者内核放置在命令队列中,其中所述命令队列被配置成处理所述消费者内核的所述启动。
7.一种非暂时的计算机可读存储装置,其具有存储在其上的用于执行多线程计算的指令,由计算装置执行所述指令使所述计算装置进行包括以下的操作:
定义生产者内核;
定义消费者内核;
定义在所述生产者内核和所述消费者内核之间的一个或多个通道,其中所述生产者内核被配置成将数据写入所述一个或多个通道,并且其中所述消费者内核被配置成从所述一个或多个通道读取所述数据;
寄存一个或多个通道事件,其中每个通道事件与所述一个或多个通道中的通道关联,并且每个通道事件被寄存以响应于所述关联的通道的通道条件被满足,启动所述消费者内核;
响应于检测到与所述通道事件相关联的所述通道的所述通道条件被满足,从所述消费者内核还没有具现的状态启动所述消费者内核以消费来自与所述一个或多个通道事件的通道事件相关联的所述通道的所述数据,其中仅仅当响应于与所述通道事件相关联的所述通道的所述通道条件被需要以防止所述消费者内核的阻塞和系统资源的使用时,启动所述消费者内核;
在所述消费者内核读取和消费来自于所述通道事件相关联的所述通道的数据;以及
在所述来自与所述通道事件相关联的所述通道的所述数据的读取和消费完成时,终止所述消费者内核以释放系统资源。
8.根据权利要求7所述的计算机可读存储装置,其中与所述通道事件相关联的所述通道的所述通道条件在至少一个数据块在所述通道中时被满足。
9.根据权利要求7所述的计算机可读存储装置,其中与所述通道事件相关联的所述通道的所述通道条件在与所述通道事件相关联的所述通道已满时被满足。
10.根据权利要求7所述的计算机可读存储装置,所述操作还包括:
在运行时将所述一个或多个通道分配给处理单元的存储器单元。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于超威半导体公司,未经超威半导体公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201380006344.7/1.html,转载请声明来源钻瓜专利网。





