[发明专利]多处理器上的数据并行计算有效
申请号: | 200880011829.4 | 申请日: | 2008-04-09 |
公开(公告)号: | CN101657795A | 公开(公告)日: | 2010-02-24 |
发明(设计)人: | 阿夫泰伯·穆恩史;杰里米·萨德梅尔 | 申请(专利权)人: | 苹果公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京东方亿思知识产权代理有限责任公司 | 代理人: | 宋 鹤;南 霆 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 处理器 数据 并行 计算 | ||
1.一种计算机实现的方法,包括:
在应用程序的运行时,通过所述应用程序的源代码中指定的API请求 的自变量来接收性能需求,以用于由一个或多个物理计算装置来执行所述 应用程序的一个或多个线程;以及
响应于所述API请求,在所述运行时生成一个或多个计算标识符以由 所述一个或多个线程使用,所述一个或多个计算标识符中的至少一个计算 标识符指定根据所述性能需求能够执行所述线程的所述物理计算装置。
2.根据权利要求1所述的方法,其中所述物理计算装置包括一个或多 个中央处理单元或图形处理单元。
3.根据权利要求1所述的方法,其中所述性能需求是经过所述应用程 序所调用的API请求而传递的配置令牌,并且其中,所述一个或多个计算 标识符被经过另一API传递到所述应用程序。
4.根据权利要求1所述的方法,其中所述生成包括:
将所述性能需求与包括所述一个或多个物理计算装置的多个物理计算 装置的装置性能中的至少一个装置性能进行匹配;以及
根据所述匹配来确定一个或多个匹配的物理计算装置。
5.根据权利要求4所述的方法,其中所述性能需求包括与专用纹理硬 件支持、双精度浮点运算性能、专用本地存储器、流变量缓存、流图像缓 存或同步原语相关联的一个或多个属性。
6.根据权利要求5所述的方法,还包括:生成数据仓库,所述数据仓 库包括所述多个物理计算装置中的至少一个物理计算装置的装置性能。
7.根据权利要求5所述的方法,其中所述匹配是基于所述多个物理计 算装置中的所述至少一个物理计算装置的匹配数目的,所述匹配数目指示 所述性能需求与对应于所述多个物理计算装置中的所述至少一个物理计算 装置的所述装置性能之间的匹配水平。
8.根据权利要求7所述的方法,其中所述匹配数目与所述多个物理计 算装置中的所述至少一个物理计算装置所满足的一个或多个属性的数目关 联。
9.根据权利要求5所述的方法,其中所述装置性能包括处理单元的数 目、线程块中的同时线程的数目、同时流的数目、流的大小、流的宽度或 流的高度。
10.根据权利要求4所述的方法,其中所述生成包括:
检测所述一个或多个匹配的物理计算装置的执行状况;以及
基于所检测到的执行状况来从所述一个或多个匹配的物理计算装置中 选择所述一个或多个物理计算装置。
11.根据权利要求10所述的方法,其中所述执行状况包括运行线程的 数目、本地存储器利用水平或处理器利用水平。
12.根据权利要求11所述的方法,其中所述一个或多个物理计算装置 被进行负载均衡。
13.一种计算机实现的方法,包括:
从应用程序在运行时通过所述应用程序的源代码中指定的API请求的 自变量来发送性能需求,以用于由一个或多个物理计算装置来执行所述应 用程序的一个或多个线程;以及
在所述运行时接收一个或多个计算标识符以由所述一个或多个线程使 用,所述一个或多个计算标识符指定根据所述性能需求能够执行所述线程 的所述物理计算装置。
14.根据权利要求13所述的方法,其中所述一个或多个物理计算装置 包括CPU或GPU。
15.根据权利要求13所述的方法,其中所述应用程序在与所述一个或 多个物理计算装置耦合的主处理器上运行。
16.根据权利要求15所述的方法,其中所述一个或多个线程与在所述 主处理器上运行的应用并发地在所述一个或多个物理计算装置中执行。
17.根据权利要求13所述的方法,其中所述发送包括:
通过调用API来查询所述一个或多个物理计算装置的处理配置,所述 处理配置与所述一个或多个物理计算装置的装置性能相关联,其中所述数 据是基于所查询到的处理配置的。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苹果公司,未经苹果公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200880011829.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:冷熔成型运动头盔
- 下一篇:可交联的聚合物分散体,其生产的方法及其用途
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置