【技术实现步骤摘要】
一种隐藏异构并行编程中的多线程的关联结构及其映射方法
[0001]本专利技术涉及多线程领域,特别涉及一种隐藏异构并行编程中的多线程的关联结构及其映射方法。
技术介绍
[0002]最开始,线程只是用于分配单个处理器的处理时间的一种工具。但假如操作系统本身支持多个处理器,那么每个线程都可分配给一个不同的处理器,真正进入“并行运算”状态,从程序设计语言的角度看,多线程操作最有价值的特性之一就是程序员不必关心到底使用了多少个处理器,程序在逻辑意义上被分割为数个线程,假如机器本身安装了多个处理器,那么程序会运行得更快,无需作出任何特殊的调校,如果有多个线程同时运行,而且它们试图访问相同的资源。
[0003]但是对个线程同时运行会遇到一个问题,两个线程不能将信息同时发送给一台设备,为解决这个问题,对那些可共享的资源来说,它们在使用期间必须进入锁定状态,所以一个线程可将资源锁定,不便于对两个交互的线程进行合并运行。
技术实现思路
[0004]本专利技术的目的在于提供一种隐藏异构并行编程中的多线程的关联结构及其映射方 ...
【技术保护点】
【技术特征摘要】
1.一种隐藏异构并行编程中的多线程的关联结构,包括多线程关联系统(1),其特征在于,所述多线程关联系统(1)包括多线程控制系统(11)、多线程任务系统(12)、多线程线池系统(13)和多线路实体系统(14);所述多线程任务系统(12)包括父线任务模块(121)、子线任务模块(122)、交汇处理模块(123)、并联运行模块(124)、串联运动模块(125)和线程列队模块(126);所述串联运动模块(125)包括子线选入模块(1251)、运行方向模块(1252)、子线插入模块(1253)、位置插入模块(1254)和计算规划模块(1254)。2.根据权利要求1所述的一种隐藏异构并行编程中的多线程的关联结构,其特征在于,所述父线任务模块(121)和子线任务模块(122)分别用于确定多线程中的主线任务和子线任务;所述交汇处理模块(123)用于对具有交汇的主线任务和子线任务信息提出,以便于对其后续的同步运行处理;所述并联运行模块(124)和串联运动模块(125)用于确定具有交汇的主线任务和子线任务运行方式。3.根据权利要求1所述的一种隐藏异构并行编程中的多线程的关联结构,其特征在于,所述子线选入模块(1251)用于选入与父线任务具有交汇的子线任务,以便于后续父线任务与子线任务交汇运行;所述运行方向模块(1252)用于确定具有交汇任务的父线任务与子线任务运行的方向;所述子线插入模块(1253)和位置插入模块(1254)用于确定子线任务与父线任务交汇运行时的位置以及将子线任务插入父线任务运行时指定步骤之中;所述计算规划模块(1254)用于确定父线任务与子线任务运行时的步骤和方法。4.根据权利要求1所述的一种隐藏异构并行编程中的多线程的关联结构,其特征在于,所述多线程控制系统(11)包括子线程模块(111)、属性分级模块(112)、属性输出模块(113)、属性输入模块(114)、ID赋值模块(115)和线程监控模块(116)。5.根据权利要求4所述的一种隐藏异构并行编程中的多线程的关联结构,其特征在于,所述子线程模块(111)用于建设多个任务线程,以便于编程中的任务运行;所述属性分级模块(112)用于将数据分化为输入属性和输出属性,计算过程中被修改或作为计算结果的数据都被指定为输出属性,被计算过程读取而不进行修改的数据为输入属性;所述属性输出模块(113)和属性输入模块(114)用于将数据输出和输入;所述ID赋值模块(115)用于线程运行的任务位置ID进行赋值;所述线程监控模块(116)用于对多线程程序运行进行监测,以保证程序的正常运行。6.根据权利要求1所述的一种隐藏异构并行编程中的多线程的关联结构,其特征在于,所述多线程线池系统(13)包括线程创建模...
【专利技术属性】
技术研发人员:董贇,艾徐华,蒙琦,银源,刘凯杰,张丽媛,杨崇富,
申请(专利权)人:广西电网有限责任公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。