电磁功能材料优化设计的粗颗粒并行方法及系统

阅读: 评论:0

著录项
  • CN201610413026.8
  • 20160613
  • CN106126878A
  • 20161116
  • 北京唯智佳辰科技发展有限责任公司
  • 王芬
  • G06F19/00
  • G06F19/00

  • 北京市西城区羊皮市胡同乙1号2028室
  • 北京(11)
  • 北京汇信合知识产权代理有限公司
  • 戴凤仪
摘要
本发明涉及功能材料设计和高性能计算领域,尤其涉及电磁功能材料优化设计的粗颗粒并行方法及系统。该方法包括:获得以粗颗粒为独立执行模块的串行版本,并以粗颗粒为基本执行单元,获得并行版本。进一步,采用随机排序的分配策略对多个计算任务进行处理,该随机排序的分配策略能彻底打乱所有计算任务的分配顺序,获取计算任务的新序列。然后,每个计算进程采用先申请先分配策略申请分配新序列下待分配的计算任务,并进行计算,直至所有计算任务完成。最后,统计计算结果并进行目标化处理,将处理结果与预期优化目标进行比较,判断是否达到优化目标。该粗颗粒并行方法有效的解决了现阶段电磁功能材料优化设计中并行计算效率低的问题。
权利要求

1.一种电磁功能材料优化设计的粗颗粒并行方法,其特征在于,包括:

步骤1:根据电磁功能材料的优化目标,以及电磁功能材料频率响应特征曲线连续性的 原理,选取一个以上优化频点,以及选定优化算法;

步骤2:根据所述优化算法生成一个以上初始优化个体;所述初始优化个体为电磁功能 材料的结构;

步骤3:构建执行所述初始优化个体在所有优化频点下的电磁响应及个体目标函数计 算的粗颗粒,并获得包括所述粗颗粒的串行版本;

步骤4:在串行版本的基础上,以粗颗粒为基本执行单元,获得并行版本;

步骤5:利用所述优化算法生成一个以上优化个体,优化个体在每个优化频点下的电磁 响应及优化个体目标函数计算形成粗颗粒执行的计算任务,采用随机排序的分配策略对计 算任务进行处理,获取计算任务的新序列;

步骤6:每个计算进程采用先申请先分配策略申请分配新序列下待分配的计算任务,并 调用粗颗粒进行计算;

步骤7:判断新序列里是否存在待分配的计算任务,若存在,返回步骤6,否则,进行步骤 8;

步骤8:收集所有计算结果,将所有计算结果进行目标化处理,并将处理结果与预期优 化目标进行比较,若没有达到优化目标,进行步骤5,否则,结束。

2.如权利要求1所述的电磁功能材料优化设计的粗颗粒并行方法,其特征在于,在步骤 3之后,步骤4之前,所述粗颗粒并行方法还包括:

调试所述串行版本内粗颗粒能否正常运行;

若能正常运行,进行步骤4;

若不能正常运行,进行步骤3。

3.如权利要求1所述的电磁功能材料优化设计的粗颗粒并行方法,其特征在于,所述步 骤6中,所述先申请先分配策略为:第一计算进程在申请分配第一计算任务时,生成第一状 态文件对第一计算任务进行标记,如果所述第一状态文件存在,则表明第一计算任务已经 被分配,第一计算进程自动申请分配第二计算任务;

所述状态文件的生成方式为:文件锁定与解锁技术。

4.如权利要求3所述的电磁功能材料优化设计的粗颗粒并行方法,其特征在于,所述文 件锁定与解锁技术为:

若状态文件是写加锁状态,则在所述状态文件被解锁之前,所有对所述状态文件加锁 的线程都会被阻塞;

若状态文件在读加锁状态,所有以读模式对所述状态文件进行加锁的线程都可以得到 访问权,以写模式对所述状态文件进行加锁的线程将会被阻塞;

若状态文件在读模式的锁状态,且有另外的线程以写模式对所述状态文件加锁,所述 状态文件会阻塞其他读模式加锁的请求。

5.如权利要求3所述的电磁功能材料优化设计的粗颗粒并行方法,其特征在于,所述步 骤2包括:

根据所述优化算法生成一个以上优化个体;

将优化个体数确定为计算任务数。

6.如权利要求5所述的电磁功能材料优化设计的粗颗粒并行方法,其特征在于,所述步 骤7中判断新序列里是否存在待分配的计算任务包括:

统计文件锁定与解锁技术生成的计算任务状态文件数量;

若计算任务状态文件数量与所述计算任务数相同,则所有计算任务被分配,否则,存在 待分配的计算任务。

7.如权利要求1-6任一项所述的电磁功能材料优化设计的粗颗粒并行方法,其特征在 于,所述电磁功能材料为特定频率范围内具有满足特定要求电磁响应特征的材料,包括:吸 波材料、电磁屏蔽材料、频率选择材料或干扰抑制材料。

8.如权利要求1-6任一项所述的电磁功能材料优化设计的粗颗粒并行方法,其特征在 于,所述优化算法包括差分进化算法、蚁算法或遗传优化算法。

9.一种电磁功能材料优化设计的粗颗粒并行系统,其特征在于,包括:

选定模块,用于根据电磁功能材料的优化目标,以及电磁功能材料频率响应特征曲线 连续性的原理,选取一个以上优化频点,以及选定优化算法;

生成模块,用于根据所述优化算法生成一个以上初始优化个体;所述初始优化个体为 电磁功能材料的结构;

构建模块,用于构建执行所述初始优化个体在所有优化频点下的电磁响应及个体目标 函数计算的粗颗粒,并获得包括所述粗颗粒的串行版本;并且,在串行版本的基础上,以粗 颗粒为基本执行单元,获得并行版本;

优化与排序模块,用于利用所述优化算法生成一个以上优化个体,优化个体在每个优 化频点下的电磁响应计算形成粗颗粒执行的计算任务,采用随机排序的分配策略对计算任 务进行处理,获取计算任务的新序列;

分配模块,用于调度各计算进程采用先申请先分配策略申请分配新序列下待分配的计 算任务,并行版本调用相应的粗颗粒进行计算;

判断模块,用于判断新序列里是否存在待分配的计算任务;

比较模块,用于收集所有计算结果,将所有计算结果进行目标化处理,并将处理结果与 预期优化目标进行比较。

说明书
技术领域

本发明涉及功能材料设计和高性能计算领域,尤其涉及电磁功能材料优化设计的 粗颗粒并行方法及系统。

电磁功能材料由于具备某种特定的电磁响应特征,广泛应用于各种功能元器件, 在信息技术、电磁防护、国防等重点领域发挥着关键作用,对高新技术的发展及新产业的形 成具有重要的意义。为获得电磁功能材料更宽频段、更优异的电磁响应特征,需要根据事先 设定的电磁响应技术指标,从材料介质选材到立体结构等方面进行严格的优化设计。电磁 功能材料优化设计需要针对优化算法给出的每一种介质组合及其形成的立体结构,建立电 磁功能材料个体,计算其在一系列频率下的电磁响应。为实现某个电磁响应技术指标的电 磁功能材料优化设计,需要针对大量不同个体进行大规模电磁场数值计算。这类大规模数 值计算由于不同计算实例具有不同结构,从而生成不同数量的剖分网格,导致不同计算实 例的计算复杂度不对等,对于这类不对等的海量计算,需要高效率并行计算方法设计,充分 考虑不同实例计算复杂度的不对等,尽可能提高并行计算效率。

常规并行计算基本针对单个计算实例并行,也就是说所有进程同时进行一个个体 在某些优化频点下的计算,在大量循环的计算部分实现并行,并行颗粒通常很细,这样导致 不同进程之间存在大量的数据交换,降低并行效率;其次,由于不同进程计算进度不同,不 可避免在需要数据共享和同步时出现大量等待,从而导致整体并行效率很低;再者,由于单 个实例计算中相当部分的计算过程有先后顺序,数据有依赖性,因此针对单个计算实例并 行时,有相当部分的计算无法并行化,这也严重降低整体并行效率。

本发明的目的在于提供一种电磁功能材料优化设计的粗颗粒并行方法及系统,以 解决现阶段电磁功能材料优化设计中并行计算效率低的问题。

本发明提供了一种电磁功能材料优化设计的粗颗粒并行方法,其包括:

步骤1:根据电磁功能材料的优化目标,以及电磁功能材料频率响应特征曲线连续 性的原理,选取一个以上优化频点,以及选定优化算法;

步骤2:根据所述优化算法生成一个以上初始优化个体;所述初始优化个体为电磁 功能材料的结构;

步骤3:构建执行所述初始优化个体在所有优化频点下的电磁响应及个体目标函 数计算的粗颗粒,并获得包括所述粗颗粒的串行版本;

步骤4:在串行版本的基础上,以粗颗粒为基本执行单元,获得多个进程同时计算 多个计算任务的并行版本;

步骤5:利用所述优化算法生成一个以上优化个体,优化个体在每个优化频点下的 电磁响应及优化个体目标函数计算形成粗颗粒执行的计算任务,采用随机排序的分配策略 对粗颗粒执行的计算任务进行处理,获取计算任务的新序列;

步骤6:每个计算进程采用先申请先分配策略申请分配新序列下待分配的计算任 务,并调用相应的粗颗粒进行计算;

步骤7:判断新序列里是否存在待分配的计算任务,若存在,返回步骤6,否则,进行 步骤8;

步骤8:收集所有计算结果,将所有计算结果进行目标化处理,并将处理结果与预 期优化目标进行比较,若没有达到优化目标,进行步骤5,否则,结束。

在一些实施例中,优选为,在步骤3之后,步骤4之前,所述粗颗粒并行方法还包括: 调试所述串行版本内粗颗粒能否正常运行;若能正常运行,进行步骤4;若不能正常运行,进 行步骤3。

所述步骤6中,所述先申请先分配策略为:第一计算进程在申请分配第一计算任务 时,生成第一状态文件对第一计算任务进行标记,如果所述第一状态文件存在,则表明第一 计算任务已经被分配,第一计算进程自动申请分配第二计算任务;所述状态文件的生成方 式为:文件锁定与解锁技术。

所述文件锁定与解锁技术为:

若状态文件是写加锁状态,则在所述状态文件被解锁之前,所有对所述状态文件 加锁的线程都会被阻塞;

若状态文件在读加锁状态,所有以读模式对所述状态文件进行加锁的线程都可以 得到访问权,以写模式对所述状态文件进行加锁的线程将会被阻塞;

若状态文件在读模式的锁状态,且有另外的线程以写模式对所述状态文件加锁, 所述状态文件会阻塞其他读模式加锁的请求。

所述步骤2包括:根据所述优化算法生成一个以上优化个体;将优化个体数确定为 计算任务数。则所述步骤7中判断新序列里是否存在待分配的计算任务包括:统计文件锁定 与解锁技术生成的计算任务状态文件数量;若计算任务状态文件数量与所述计算任务数相 同,则所有计算任务被分配,否则,存在待分配的计算任务。

所述电磁功能材料为特定频率范围内具有满足特定要求的电磁响应特征材料,包 括:吸波材料、电磁屏蔽材料、频率选择材料或干扰抑制材料。所述优化算法包括差分进化 算法、蚁算法或遗传优化算法。

本发明提出一种电磁功能材料优化设计的粗颗粒并行系统,其包括:

选定模块,用于根据电磁功能材料的优化目标,以及电磁功能材料频率响应特征 曲线连续性的原理,选取一个以上优化频点,以及选定优化算法;

生成模块,用于根据所述优化算法生成一个以上初始优化个体;所述初始优化个 体为电磁功能材料的结构;

构建模块,用于构建执行所述初始优化个体在所有优化频点下的电磁响应及个体 目标函数计算的粗颗粒,并获得包括所述粗颗粒的串行版本;并且,在串行版本的基础上, 以粗颗粒为基本执行单元,获得并行版本;

优化与排序模块,用于利用所述优化算法生成一个以上优化个体,优化个体在每 个优化频点下的电磁响应及优化个体目标函数计算形成粗颗粒执行的计算任务,采用随机 排序的分配策略对计算任务进行处理,获取计算任务的新序列;

分配模块,用于调度各计算进程采用先申请先分配策略申请分配新序列下待分配 的计算任务,并调用相应的粗颗粒进行计算;

判断模块,用于判断新序列里是否存在待分配的计算任务;

比较模块,用于收集所有计算结果,将所有计算结果进行目标化处理,并将处理结 果与预期优化目标进行比较。

本发明实施例提供的电磁功能材料优化设计的粗颗粒并行方法及系统,与现有技 术相比,首先获得包含粗颗粒形成的独立模块的串行版本并以粗颗粒为基本执行单元进行 并行,而非现有技术的大量循环的计算部分实现并行,进而提高并行计算效率,其中粗颗粒 执行一个优化个体在所有优化频点下的电磁响应及个体目标函数计算。在此基础上,采用 随机排序的分配策略对粗颗粒执行的计算任务进行处理。该随机排序的分配策略能彻底打 乱所有计算任务的分配顺序,可避免相对复杂的计算任务集中在某些节点上造成大量时间 的硬盘读写,从而实现各计算节点同时计算的任务占用的峰值内存总和由进程数和所有模 型占用峰值内存的平均值而非最高值决定。然后,每个计算进程采用先申请先分配策略申 请分配计算任务,并进行计算,直至所有计算任务完成。该先申请先分配策略根据各个计算 进程的完成情况进行动态计算任务分配,从而避免了不同计算节点、不同计算进程由于计 算速度的快慢造成长时间等待。

由上可知,本发明通过的电磁功能材料优化设计的粗颗粒并行方法,有效的解决 了现阶段电磁功能材料优化设计中并行计算效率低的问题。

图1为本发明一个实施例中电磁功能材料优化设计的粗颗粒并行方法步骤示意 图;

图2为本发明一个实施例中随机分配策略流程示意图;

图3为本发明一个实施例中先申请先分配策略流程示意图;

图4为本发明一个实施例中文件标记技术标记流程示意图。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人 员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

针对现阶段的电磁功能材料优化设计中并行计算效率低的问题,本发明提出了一 种电磁功能材料优化设计的粗颗粒并行方法。如图1所示,其具体包括:

步骤1:根据电磁功能材料的优化目标,以及电磁功能材料频率响应特征曲线连续 性的原理,选取一个以上优化频点,以及选定优化算法;

其中,电磁功能材料为特定频率范围内具有满足特定要求的电磁响应特征材料, 包括:吸波材料、电磁屏蔽材料、频率选择材料或干扰抑制材料,优化算法包括差分进化算 法、蚁算法或遗传优化算法;

步骤2:根据优化算法生成一个以上初始优化个体,优化个体为电磁功能材料的结 构,初始优化个体相当于程序优化所需的初始值;

步骤3:构建执行一个优化个体在所有优化频点下的电磁响应及个体目标函数计 算的粗颗粒,并获得包括所述粗颗粒的串行版本;

其中,粗颗粒是执行一个优化个体在所有选定频点下电磁响应及个体目标函数计 算的程序代码,串行版本不仅仅是包括粗颗粒,还包括优化个体的各个参数,即串行版本可 进行用户参数的读取、判断是否达到优化目标、根据优化算法形成新的优化个体,以及输出 计算结果等;

步骤4:在串行版本的基础上,以粗颗粒为基本执行单元,获得多个进程同时计算 多个计算任务的并行版本,并行的多个进程使用同一个粗颗粒去执行计算任务;

步骤5:利用优化算法生成一个以上的优化个体,优化个体在每个优化频点下的电 磁响应及个体目标函数计算形成粗颗粒执行的计算任务,采用随机排序的分配策略对粗颗 粒执行的计算任务进行处理,获取计算任务的新序列;

随机排序的分配策略为:将计算任务的顺序随机打乱,产生新的随机序列;计算任 务为一个优化个体在所有优化频点上的电磁响应及个体目标函数计算;

步骤6:每个计算进程采用先申请先分配策略申请分配新序列下待分配的计算任 务,并调用相应的粗颗粒进行计算;

先申请先分配策略为:第一计算进程在申请分配第一计算任务时,生成第一状态 文件对第一进行标记,如果第一状态文件存在,则表明第一计算任务已经被分配,第一计算 进程自动申请分配第二计算任务;

步骤7:判断新序列里是否存在待分配的计算任务,若存在,返回步骤6,否则,进行 步骤8;

步骤8:收集所有计算结果,将所有计算结果进行目标化处理,并将处理结果与预 期优化目标进行比较,若没有达到优化目标,进行步骤5,否则,结束。

在上述步骤2中,优化个体为电磁功能材料的结构,其中,电磁功能材料的结构不 仅仅是指电磁功能材料的组合材料结构,还包括每个组合材料的空间结构、不同介质复合 结构、介质构成等。假设优化10层的复合结构吸波材料,则10层材料,每层厚度、每层选材等 等会形成无数种可能,每种可能都是一种复合吸波材料的结构。

在步骤3之后,步骤4之前,所述粗颗粒并行方法还包括:调试所述串行版本内粗颗 粒能否正常运行;若能正常运行,进行步骤4;若不能正常运行,进行步骤3。判断串行版本内 所有粗颗粒是否能并行,是为了确定所得到的串行版本可以进行并行优化,即可以进行步 骤3以下的步骤。否则,只能再次修改粗颗粒模块代码,以保证执行计算任务的代码实现。

在步骤5中,先申请先分配策略通过文件标记技术实现的,并且状态文件的生成方 式为:文件锁定与解锁技术。

如图4所示,文件锁定与解锁技术通过文件读写锁保证一次只能一个技术进程读 或写同一计算任务;并具有以下特征:

若状态文件是写加锁状态,则在状态文件被解锁之前,所有对状态文件加锁的线 程都会被阻塞;

若状态文件在读加锁状态,所有以读模式对状态文件进行加锁的线程都可以得到 访问权,以写模式对状态文件进行加锁的线程将会被阻塞;

若状态文件在读模式的锁状态,且有另外的线程以写模式对状态文件加锁,状态 文件会阻塞其他读模式加锁的请求。

并且,步骤2包括:根据优化算法生成一个以上优化个体,并确定计算任务数,计算 任务数为优化个体数。

则在步骤7中判断所有粗颗粒执行的计算任务是否完成包括:通过文件锁定与解 锁技术生成的计算任务状态文件数量与计算任务数相同,则所有计算任务完成,否则,没有 完成。并且,可定义并行计算中多个进程中的一个进程为主进程,主进程负责将所有计算任 务分配到各进程,负责收集各进程的计算结果(目标函数值)并根据目标函数完成优化算法 的各步骤。主进程还将根据收集的计算结果判定计算任务是否完成。

在上述步骤中,电磁响应计算是指为了获得一个优化个体在频率下的响应(针对 不同优化目的,这里的响应可以是材料的吸波效能、屏蔽效能、干扰抑制效能等)而进行的 计算,包括根据个体的结构特征进行建模、再利用数值计算获得描述响应特征的量。在程序 编写过程中,将每个频率下每个优化个体(特定的复合结构电磁功能材料)的电磁响应及个 体目标函数计算作为一个独立的程序模块编写,便于后续并行过程中每个进程内的串行计 算。并且,以独立的程序模块(一个优化个体在所有选定频点下的计算程序模块)作为并行 的基本单元就称为粗颗粒并行,而不是独立程序模块里面更细的循环作为并行基本单元。

同时,在优化个体计算过程中,为了形成描述电磁功能材料在优化频段内响应特 征的曲线而进行离散频率点的计算,为了形成反映响应特征的光滑曲线,需要计算比典型 优化频点多得多的频点,如计算1GHz~18GHz范围内的吸波效能,采用步长0.1GHz的采样频 点,需要计算181个点,计算完成后,将181个点的吸波效能绘图(横坐标为频率、纵坐标为计 算的吸波效能),形成吸波效能曲线。

随机排序的分配策略和先申请先分配策略合称为随机动态分配计算任务策略,其 中“随机”是指随机分配策略,“动态”分配是指先申请先分配策略。随机排序的分配策略是 针对计算任务而言,如图2所示,假设有100个计算任务,编号为1,2,...,100,随机分配是指 不按编号1,2,3,...依次分配,而是按随机的顺序分配。这样做的目的是避免复杂计算集中 在某些计算节点上,譬如100个计算任务,前50个计算模型复杂,需要20GB内存,后50个计算 模型简单,只需要10GB内存。这100个计算任务由2个都有32GB内存的计算节点完成,如果按 顺序分配,每个节点分配两个计算任务,则有相当部分的时间是两个复杂任务同时计算,峰 值内存为40GB,造成大量时间的硬盘读写,随机排序的分配策略则能很大程度的减少或避 免这种问题。先申请先分配策略则是针对计算节点而言,与先申请先分配对应的是预先分 配,通常根据计算任务的多少和计算进程的多少预先给各计算进程进行分配,分配完成后, 后面的并行计算过程中不可更改。如图3所示,先申请先分配策略不是一次性分配完,而是 根据不同进程的计算进度实现动态分配,在某个进程计算完一个模型,动态分配下一个计 算模型之前,需要检查计算任务是否已经被分配,只有计算任务没有被分配才从未被分配 的任务中分配下一个任务给该进程。譬如100个计算任务,10个进程,如果预先分配,则是每 个进程分配10个计算任务(无论是顺序分配还是随机分配),计算过程中无论出现什么情况 各进程的计算任务都不会改变,而先申请先分配则是根据各进程计算任务的完成情况进行 的动态分配,这样可以避免不同计算节点、不同进程由于计算速度的快慢造成长时间等待, 这种等待可能因为不同节点由于硬件配置不同导致的计算能力不同,最终导致计算相同数 量的任务所需的CPU时间不同,也可能因为不同计算模型的复杂程度不同导致相同配置节 点计算不同模型的CPU时间不同。

例如,利用差分进化算法优化一种带频率选择表面的3~10层复合结构吸波材料, 计算模型表明,同一类型计算由于优化个体计算模型结构和复杂度不同,导致网格剖分产 生的单元数量有较大差异,从而不同优化个体计算需要的内存也有较大差异。统计结果表 明,如果采用二阶有限元计算,相同网格剖分参数设置情况下,优化算法产生的3层复合结 构,带有1层频率选择表面,厚度5mm的模型,计算所需内存峰值最小,约为8GB;优化算法产 生的10层复合结构,带有6层频率选择表面,厚度5mm的模型,计算所需内存峰值最大,超过 20GB。如果一个集每个节点内存为48GB,利用该集采用二阶有限元并行计算,最简单的 模型可以同时开启6个进程,最复杂的模型则只能同时开启2个进程,否则系统会将部分硬 盘空间作为虚拟内存供程序使用。目前常用的硬盘驱动器HDD硬盘读写速度在80MB/s左右, 而物理内存的读写速度有百倍以上的提高,例如,对于DDR3 1333MHz的服务器内存,其数据 传输速率达到10.6GB/s。这一比较结果说明,如果并行计算开启的进程过多,导致计算过程 中部分硬盘存储空间被当作虚拟内存读取,将使得程序运行速度降低百倍以上。为避免计 算过程中部分硬盘存储空间被当作虚拟内存读取的现象,在开启进程时,需要考虑每个进 程运行时可能需要的最大内存,以此为依据确定每个节点能开启的最大进程数。如果采用 普通方法粗颗粒并行计算,则每节点最多能开启2个进程。实验结果表明,采用本发明的随 机动态分配计算任务策略,每节点开启4个进程,且内存使用率长期在80%以上,基本做到 了内存使用峰值平均化和内存峰值出现时间上的错位。

采用C++实现的文件锁定与解锁技术的典型代码如下所示:

1)创建标识文件并加锁,其他进程不能读/写该文件:

out.open(filename,_SH_DENYRW);

2)读标识文件并加锁,其他进程不能写该文件:

ifstream in(filename,ios::in,_SH_DENYWR);

3)写标识文件并加锁,其他进程不能读/写该文件:

out.open(filename,ios::app,_SH_DENYRW);

在一些程序中存在读者写者问题,也就是说,对某些资源的访问会存在两种可能 的情况,一种是访问必须是排它行的,就是独占的意思,这称作写操作;另一种情况就是访 问方式可以是共享的,就是说可以有多个线程同时去访问某个资源,这种就称作读操作。这 个问题模型是从对文件的读写操作中引申出来的。

读写锁和互斥量(mutex)同为线程同步常用的机制,读写锁比起mutex具有更高的 适用性,具有更高的并行性,可以有多个线程同时占用读模式的读写锁,但是只能有一个线 程占用写模式的读写锁,读写锁的三种状态:

1.当读写锁是写加锁状态时,在这个锁被解锁之前,所有试图对这个锁加锁的线 程都会被阻塞

2.当读写锁在读加锁状态时,所有试图以读模式对它进行加锁的线程都可以得到 访问权,但是以写模式对它进行加锁的线程将会被阻塞

3.当读写锁在读模式的锁状态时,如果有另外的线程试图以写模式加锁,读写锁 通常会阻塞随后的读模式锁的请求,这样可以避免读模式锁长期占用,而等待的写模式锁 请求则长期阻塞。

针对上述电磁功能材料优化设计的粗颗粒并行方法,本发明还公开了一种电磁功 能材料优化设计的粗颗粒并行系统,其包括:

选定模块,用于根据电磁功能材料的优化目标,以及电磁功能材料频率响应特征 曲线连续性的原理,选取一个以上优化频点,以及选定优化算法;

生成模块,用于根据优化算法生成一个以上初始优化个体;优化个体为电磁功能 材料的结构;

构建模块,用于构建执行初始优化个体在所有优化频点下的电磁响应及个体目标 函数计算的粗颗粒,并获得包括所述粗颗粒的串行版本;并且,在串行版本的基础上,以粗 颗粒为基本执行单元,获得并行版本;

优化与排序模块,用于利用所述优化算法生成一个以上优化个体,优化个体在每 个优化频点下的电磁响应及优化个体目标函数计算形成粗颗粒执行的计算任务,采用随机 排序的分配策略对计算任务进行处理,获取计算任务的新序列;

分配模块,用于调度各计算进程采用先申请先分配策略申请分配新序列下待分配 的计算任务,并调用相应的粗颗粒进行计算;

判断模块,用于判断新序列里是否存在待分配的计算任务;

比较模块,用于收集所有计算结果,将所有计算结果进行目标化处理,并将处理结 果与预期优化目标进行比较。

以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人 员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、 等同替换、改进等,均应包含在本发明的保护范围之内。

本文发布于:2023-04-15 00:50:45,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/3/86956.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图