发明名称 并行编程和执行系统与技术
摘要 在这里论述并行编程和执行系统与技术。根据一种技术,平行编程模型用于将复杂的处理分解为具有利用数据对象作为接口设置的适当依赖性的并行化的任务。另一种技术以调度机制为特征,其中调度机制以可伸缩方式在诸如CPUS/CPU核心、GPU/GPU核心和/或硬件线程之类的一类处理单元之间提供线程关联度和自动负载平衡管理。这些模型和技术以示例方式被应用于数字媒体编码处理。
申请公布号 CN102378961A 申请公布日期 2012.03.14
申请号 CN201080014539.2 申请日期 2010.03.26
申请人 微软公司 发明人 赵伟东;Y. R.塞尔马德维;常城;E. S.克里斯托弗森
分类号 G06F9/38(2006.01)I;G06F9/46(2006.01)I 主分类号 G06F9/38(2006.01)I
代理机构 中国专利代理(香港)有限公司 72001 代理人 刘红;刘鹏
主权项 一种计算机可读存储介质(804),其利用计算机可执行指令(806)来编码,所述计算机可执行指令当被执行时执行用于执行处理(102)以产生期望的输出数据(108)的方法(600),所述处理包括:第一数据处理操作(170),第二数据处理操作(170),第一和第二数据处理操作之间的至少一个数据依赖性(271),以及通过基于至少一个数据依赖性将第一数据处理操作与第二数据处理操作相关而形成的处理表示(200),所述方法包括:定义(602)包括所述计算机可执行指令的第一部分的第一线程(103),第一线程可操作来执行用于执行第一和第二数据处理操作的计算机程序;定义(602)包括所述计算机可执行指令的第二部分的第二线程(103),第二线程可操作来与第一线程异步且同时执行用于执行第一和第二数据处理操作的计算机程序;在所述计算机可执行指令的运行时间,基于所述处理表示来实例化(604)可执行任务图(300),所述任务图包括:第一任务对象(302),其代表被配置为执行第一数据处理操作的第一计算机实现方法,第二任务对象(302),其代表被配置为执行第二数据处理操作的第二计算机实现方法,和数据对象(303),所述数据对象代表被分配用于基于至少一个数据依赖性来存储可用数据的存储器(301)的部分,所述数据对象具有多个状态(350),以促进第一任务对象与第二任务对象之间的通信;设置(606)所述数据对象的第一状态;基于第一状态,经由第一任务对象,触发(608)利用第一线程或第二线程的第一计算机实现方法的执行,以便经由所述数据对象而输出可用数据到存储器;在可用数据已被输出到存储器之后,设置(606)所述数据对象的第二状态;和基于第二状态,经由第二任务对象,触发(608)利用第一线程或第二线程的第二计算机实现方法的执行,以转换可用数据。
地址 美国华盛顿州