[发明专利]并行编程和执行系统与技术有效
申请号: | 201080014539.2 | 申请日: | 2010-03-26 |
公开(公告)号: | CN102378961A | 公开(公告)日: | 2012-03-14 |
发明(设计)人: | 赵伟东;Y.R.塞尔马德维;常城;E.S.克里斯托弗森 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38;G06F9/46 |
代理公司: | 中国专利代理(香港)有限公司 72001 | 代理人: | 刘红;刘鹏 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 并行 编程 执行 系统 技术 | ||
1.一种计算机可读存储介质(804),其利用计算机可执行指令(806)来编码,所述计算机可执行指令当被执行时执行用于执行处理(102)以产生期望的输出数据(108)的方法(600),所述处理包括:
第一数据处理操作(170),
第二数据处理操作(170),
第一和第二数据处理操作之间的至少一个数据依赖性(271),以及
通过基于至少一个数据依赖性将第一数据处理操作与第二数据处理操作相关而形成的处理表示(200),
所述方法包括:
定义(602)包括所述计算机可执行指令的第一部分的第一线程(103),第一线程可操作来执行用于执行第一和第二数据处理操作的计算机程序;
定义(602)包括所述计算机可执行指令的第二部分的第二线程(103),第二线程可操作来与第一线程异步且同时执行用于执行第一和第二数据处理操作的计算机程序;
在所述计算机可执行指令的运行时间,基于所述处理表示来实例化(604)可执行任务图(300),所述任务图包括:
第一任务对象(302),其代表被配置为执行第一数据处理操作的第一计算机实现方法,
第二任务对象(302),其代表被配置为执行第二数据处理操作的第二计算机实现方法,和
数据对象(303),所述数据对象代表被分配用于基于至少一个数据依赖性来存储可用数据的存储器(301)的部分,所述数据对象具有多个状态(350),以促进第一任务对象与第二任务对象之间的通信;
设置(606)所述数据对象的第一状态;
基于第一状态,经由第一任务对象,触发(608)利用第一线程或第二线程的第一计算机实现方法的执行,以便经由所述数据对象而输出可用数据到存储器;
在可用数据已被输出到存储器之后,设置(606)所述数据对象的第二状态;和
基于第二状态,经由第二任务对象,触发(608)利用第一线程或第二线程的第二计算机实现方法的执行,以转换可用数据。
2.根据权利要求1的计算机可读存储介质(804),其中所述处理(102)包括用于包括媒体样本的序列的媒体内容(406)的编码处理(400),所述序列包括多组媒体样本,和其中期望的输出数据包括编码的媒体数据(408),以及其中为每组媒体样本实例化可执行任务图。
3.根据权利要求1的计算机可读存储介质,所述方法进一步包括:
重复地执行以下步骤:设置(606)所述数据对象的第一状态;触发(608)第一计算机实现方法的执行;设置(606)所述数据对象的第二状态;和触发(608)第二计算机实现方法的执行,
利用第一线程或第二线程异步且在单个时钟周期内执行的第一和第二计算机实现方法的执行,直至已产生期望的输出数据。
4.根据权利要求1的计算机可读存储介质(804),
其中从包括以下的组中选择第一和第二计算机实现方法的实现方式:软件实现方式;硬件实现方式;和固件实现方式。
5.根据权利要求4的计算机可读存储介质(804),其中当第一计算机实现方法或第二计算机实现方法或这两者包括软件实现方式时,软件实现方式包括在运行时间实例化一个或多个其它的可执行任务图的一组计算机可执行指令。
6.根据权利要求4的计算机可读存储介质(804),其中当第一和第二计算机实现方法包括软件实现方式时,第一任务对象定义至第一计算机程序的接口,并且第二任务对象定义至第二计算机程序的接口。
7.根据权利要求1的计算机可读存储介质(804),
其中所述数据对象具有从其可接收可用数据的至少一个拥有任务对象,并具有可用数据可提供给其的至少一个依赖任务对象,其中所述至少一个拥有任务对象包括第一任务对象,所述至少一个依赖任务对象包括第二任务对象,以及
其中从包括以下的组中选择所述数据对象的状态:
存储器不可用状态(853),其指示所述存储器的部分未准备好从所述至少一个拥有任务对象接收可用数据;
存储器可用状态(352),其指示所述存储器的部分准备好从所述至少一个拥有任务对象接收可用数据;和
数据可用状态(351),其指示可用数据已从所述至少一个拥有任务对象接收并准备好被提供给所述至少一个依赖任务对象。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201080014539.2/1.html,转载请声明来源钻瓜专利网。