[发明专利]并行编程和执行系统与技术有效
申请号: | 201080014539.2 | 申请日: | 2010-03-26 |
公开(公告)号: | CN102378961A | 公开(公告)日: | 2012-03-14 |
发明(设计)人: | 赵伟东;Y.R.塞尔马德维;常城;E.S.克里斯托弗森 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38;G06F9/46 |
代理公司: | 中国专利代理(香港)有限公司 72001 | 代理人: | 刘红;刘鹏 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 在这里论述并行编程和执行系统与技术。根据一种技术,平行编程模型用于将复杂的处理分解为具有利用数据对象作为接口设置的适当依赖性的并行化的任务。另一种技术以调度机制为特征,其中调度机制以可伸缩方式在诸如CPUS/CPU核心、GPU/GPU核心和/或硬件线程之类的一类处理单元之间提供线程关联度和自动负载平衡管理。这些模型和技术以示例方式被应用于数字媒体编码处理。 | ||
搜索关键词: | 并行 编程 执行 系统 技术 | ||
【主权项】:
一种计算机可读存储介质(804),其利用计算机可执行指令(806)来编码,所述计算机可执行指令当被执行时执行用于执行处理(102)以产生期望的输出数据(108)的方法(600),所述处理包括:第一数据处理操作(170),第二数据处理操作(170),第一和第二数据处理操作之间的至少一个数据依赖性(271),以及通过基于至少一个数据依赖性将第一数据处理操作与第二数据处理操作相关而形成的处理表示(200),所述方法包括:定义(602)包括所述计算机可执行指令的第一部分的第一线程(103),第一线程可操作来执行用于执行第一和第二数据处理操作的计算机程序;定义(602)包括所述计算机可执行指令的第二部分的第二线程(103),第二线程可操作来与第一线程异步且同时执行用于执行第一和第二数据处理操作的计算机程序;在所述计算机可执行指令的运行时间,基于所述处理表示来实例化(604)可执行任务图(300),所述任务图包括:第一任务对象(302),其代表被配置为执行第一数据处理操作的第一计算机实现方法,第二任务对象(302),其代表被配置为执行第二数据处理操作的第二计算机实现方法,和数据对象(303),所述数据对象代表被分配用于基于至少一个数据依赖性来存储可用数据的存储器(301)的部分,所述数据对象具有多个状态(350),以促进第一任务对象与第二任务对象之间的通信;设置(606)所述数据对象的第一状态;基于第一状态,经由第一任务对象,触发(608)利用第一线程或第二线程的第一计算机实现方法的执行,以便经由所述数据对象而输出可用数据到存储器;在可用数据已被输出到存储器之后,设置(606)所述数据对象的第二状态;和基于第二状态,经由第二任务对象,触发(608)利用第一线程或第二线程的第二计算机实现方法的执行,以转换可用数据。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201080014539.2/,转载请声明来源钻瓜专利网。