CN101593132B - 基于线程构造模块的多核并行模拟退火方法 - Google Patents
基于线程构造模块的多核并行模拟退火方法 Download PDFInfo
- Publication number
- CN101593132B CN101593132B CN2009100874796A CN200910087479A CN101593132B CN 101593132 B CN101593132 B CN 101593132B CN 2009100874796 A CN2009100874796 A CN 2009100874796A CN 200910087479 A CN200910087479 A CN 200910087479A CN 101593132 B CN101593132 B CN 101593132B
- Authority
- CN
- China
- Prior art keywords
- parallel
- module
- state
- tbb
- simulated annealing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于线程构造模块的多核并行模拟退火方法,主要解决模拟退火算法在大规模工程应用中的运行效率问题和对计算机多核资源的利用问题。利用线程构造模块支持多核处理器并行计算和支持扩展的线程嵌套并行的优点,并在原有的串行模拟退火算法基础上引入多种群群体优化机制构造并行算法。首先设置环境变量,然后构造并行模块,接着设定初始参数,再进行各个初始状态独立寻优,然后获取当前最优状态和最优结果,接着执行降温过程,最后获得最优状态和最优结果。本发明设计过程简单灵活,易于扩展,符合计算机朝着多处理器及多核架构的发展趋势,是一种方便快速、实用性强的并行模拟退火设计方法。
Description
技术领域
本发明属于计算机仿真与智能优化领域,具体涉及一种基于线程构造模块的多核并行模拟退火方法。
背景技术
离散系统的组合优化问题是实际生产中经常遇到的问题,比如任务分配、作业调度、路径规划、网络路由、数据挖掘、生命科学计算等问题,这些问题随着规模的扩大,往往造成计算规模的迅速增加,被称为多项式复杂程度的非确定性问题(Non-deterministicPolynomia,简称为NP复杂问题)。
早在1953年,Metropolis等人就提出了最初的模拟退火,但是并没有引起反响,直到1983年,Kirkpatrick等人提出了现代模拟退火,它是基于Mente Carlo迭代求解策略的一种随机寻优方法。其出发点是基于物理固体物质的退火过程和一般组合优化问题之间的相似性。模拟退火在一个给定的初始高温下,利用具有概率突跳特性的Metropolis抽样策略在解空间中进行随机搜索,伴随温度的下降重复抽样过程,最终得到问题的全局最优解。模拟退火成功地解决了大规模的组合优化问题。由于现代模拟退火具有能够有效地解决NP复杂问题、能够避免陷入局部最优、能够克服初值依赖性等优点,目前已在工程中得到广泛应用。
模拟退火由于其固有的密集计算特性,存在的主要问题是运行时间长和计算内存大,这是大型数据库求解的主要瓶颈。随着问题规模不断扩大,基于单核的串行模拟退火所消耗的时间迅速增长,往往不能满足人们的实时处理数据要求,模拟退火的并行实现技术能大幅度地提高其性能,能从本质上减少处理数据的时间。
随着计算机技术向着多处理器及多核架构的发展,使单机上的多核并行处理数据成为可能,以刚刚推出的线程构造模块(Threading Building Blocks,简称为TBB)开发库为代表的多核处理器并行处理平台引起工程人员的重视。TBB与其他并行编程模型相比,编程难度较低、自动调度效率高,有丰富的函数库,还有良好的扩展功能,可以和消息传递接口(Message Passing Interface,简称MPI)、OpenMP等结合,是一种简单高效的并行技术。但是目前TBB技术和智能优化领域的结合仍然很少,TBB并行处理平台和模拟退火的结合更是空白。
发明内容
本发明的目的是利用现有的并行技术,实现模拟退火的并行处理,使其能在实际的生产和科研领域中快速有效地执行,提高运行效率,更快更好地解决组合优化和NP复杂问题。
在本发明中,对模拟退火进行了改进。因为在一定温度下,模拟退火基于Metropolis准则进行随机搜索,最终达到一种平衡状态。为保证能够达到平衡状态,内循环次数要足够大。其中Metropolis准则是指用概率来接受新状态,经过大量的概率接受过程,系统将趋于能量最低的平衡状态。最常见的方法就是将内循环次数设为一个较大的常数,这是模拟退火最耗时的地方。为此可以考虑增加初始状态个数,并且彼此相互独立寻优,同时相应减小内循环次数,这种改进的方法可以采用并行处理。该发明利用了改进模拟退火可以构造并行结构的优势,结合线程构造模块TBB并行处理平台设计了一种简单适用的并行模拟退火。
线程构造模块TBB是基于运行时的C++线程并行模型,用于支持多核处理器的并行处理,具有成熟的数据结构,支持可扩展的线程嵌套并行,支持可扩展内存分配以及不需要编译器支持。使用TBB的具体步骤主要包括:TBB并行处理平台的安装和环境设置;根据实际问题选择可以使用的TBB并行模板,如parallel_for、parallel_reduce模板,编写并行处理模板;TBB任务调度的初始化;调用并行处理模板;结束TBB的任务调度。
由于TBB定义了任务的概念,在初始化TBB任务调度时,由任务调度器对象task_scheduler_init实现多任务的分配和并行,支持对多线程的划分。在调用并行模块时,由模块参数指定循环处理的数值范围以及任务粒度参数。任务粒度参数决定了任务划分的粒度,如果粒度太大,不能充分提高运行效率;如果粒度太小,过度的并行化任务分配造成的开销反而降低了运行效率。在无法获得合适任务粒度情况下可以使用TBB提供的自动分配函数auto_partitioner()帮助用户设置合适的任务粒度参数。
本发明利用TBB技术根据需要选择不同的并行处理模板,将可以并行处理的各个循环改写为符合TBB调用的规范类,并且将每组初始状态分配到不同的线程,这是提高系统运行效率的一种简单有效的方法。
通过利用TBB设计的并行模拟退火和现有模拟退火相比,具有明显的两个优点:
(1)提高了模拟退火的运行效率,减少了运行时间,为大规模组合优化工程问题的实时处理提供了可能性;
(2)并行优化过程简单灵活,易于操作,而且符合计算机技术向着多处理器及多核架构的发展趋势。
附图说明
图1是本发明提出的基于TBB并行模拟退火方法的流程图;
图2是本发明提出的改进模拟退火解决旅行商问题的方法流程图;
图3是本发明提出的改进模拟退火解决旅行商问题的示意图;
图4是本发明方法的基于TBB并行模拟退火解决旅行商问题的方法流程图;
图5是现有模拟退火与本发明提出的基于TBB并行模拟退火的运行时间对比曲线;
图6是现有模拟退火串行实现的计算机中央处理单元CPU使用记录图;
图7是本发明TBB并行模拟退火实现的计算机中央处理单元CPU使用记录图。
具体实施方式
下面将结合附图和实例对本发明作进一步的详细说明。
图1展示了基于TBB并行模拟退火的具体步骤:
步骤一:设置环境变量。
TBB并行数据处理平台的安装与环境设置,在计算机里置入TBB的文件包,并在VisualC++即VC目录中添加TBB的包含文件.include、库文件.lib及可执行文件.bin。
步骤二:构造并行模块。
首先,确定并行处理模块,改进的模拟退火中初始温度的确定、各个初始状态寻优和更新最优结果的过程都是可以并行处理的,再结合实际问题,找到实际问题中有些可以并行处理的部分;然后,根据TBB并行模板规范类构造并行模块。
步骤三:设定初始参数。
设置问题规模,即初始状态个数、内循环长度、温度收敛系数、目标函数。调用计算初始温度的parallel_for并行模块,并设置初始状态及对应的目标函数值,从初始状态对应的目标函数值中选出最小值作为最优结果,并得到对应的最优状态。
步骤四:各个初始状态独立寻优。
调用parallel_for设计的各个初始状态搜寻路径模块,该模块可以实现各个初始状态在一次内循环中的并行寻优。具体寻优过程是,每个初始状态随机生成候选状态,根据Metropolis接受准则,判断是否接受候选状态,接受则作为下次循环的初始状态,并得到初始目标函数值。否则初始状态不变。其中Metropolis接受准则是指随机生成一个位于0到1之间的随机数ε∈u(0,1),若exp(-Δf/T)<ε,则接受候选状态,否则不接受,Δf表示候选状态的目标值与初始状态的目标值的差值,T表示当前温度,ε是一个位于0到1之间的随机数。这一步是限制模拟退火运行效率的主要部分,因此这一步采用TBB进行并行设计对提高效率至关重要;
步骤五:获取当前最优状态和最优结果。
调用parallel_reduce并行模块,将最优结果和各个初始状态对应的目标函数值比较,如果目标函数值中的最小值小于最优结果,则将该最小值及对应的状态赋给最优结果和最优状态,否则最优结果和最优状态不变。
步骤六:执行降温过程。
降低温度,判断温度是否到达最低温度,若温度已到达最低温度,则执行步骤七,否则执行步骤四;
步骤七:获得最优状态和最优结果。
结束,最终寻到实际间题中的最优状态及最优结果。
步骤二中利用TBB并行平台技术构造并行模板有如下三部分:
(1)初始温度T0的确定;
(2)各个初始状态在内循环中的寻优过程;
(3)获得当前最优状态和最优结果。
在实际问题中,有些数据的处理不存在通信,可以独立进行时,也可以采用TBB并行模块构造并行模板,进行并行处理。
为了证实改进模拟退火不影响寻优结果,下面以解决大规模旅行商问题(TravellingSalesman Problem,简称TSP问题)为例证实该方法的可行性。其中TSP问题描述:给定n个城市,遍历每个城市且仅遍历一次的最短封闭路径。本发明提出的改进模拟退火解决TSP问题的步骤描述如图2所示:
步骤一:确定初始温度T0。随机生成多种路径,得到各个路程和最长路程max、最短路程min,利用公式T0=(min-max)/lg(0.9)确定初始温度;
步骤二:确定M组初始路径。在确定初始温度T0时生成的路径中,min对应的路径赋给其中一组初始路径,再随机选(M-1)组作为其余的初始路径,在此过程中max对应的路径排除在外,同时得到最短路程fval_best是min,最优路径是min对应的路径;
步骤三:判断当前温度T是否大于最低温度,如果当前温度T大于最低温度Tf,则执行步骤四,否则结束,得到最短路程fval_best及其对应的最优路径;
步骤四:每组初始路径随机生成一组候选路径,在该问题中,采用随机交换两城市的访问次序,生成候选路径;
步骤五:判断每组候选路径是否满足Metropolis接受准则,如果满足接受准则,则将该候选路径赋给初始路径,作为下次循环的初始路径,并转向执行步骤六,否则直接转向步骤六。
步骤六:在温度一定的情况下,判断候选路径生成的次数是否到达内循环次数L,如果候选路径生成的次数已经到达内循环次数L,则转向执行步骤七,否则执行步骤四;
步骤七:更新最短路程和最优路径。将最短路程fval_best与各组初始路径对应的路程进行比较,若其中最短路程小于fval_best,,则将该最短路程赋给fval_best,并得到当前历史最优路径,若fval_best小于任何一组路程,则保留原值;
步骤八:执行降温过程,T=T*alpha,其中alpha是温度收敛系数,再转去执行步骤三。
图3所示的本发明提出的改进模拟退火中,初始状态个数是M,内循环次数是Lm。M组初始路径经过一次内循环寻到各自的最优路径,并将其对应的路程与最短距离f0比较,得到新的最短路程f1及对应的最优路径。然后将M组最优路径作为下次内循环的初始路径,继续寻优,最后得到最终的最短路程f及其对应的最优路径。由图3可知,在一次内循环中,初始路径展开的寻优过程相互独立,不存在数据的交换和通信,因此可以将各初始路径寻找最优路径过程分配到不同的计算机中央处理单元(Central Processing Unit,简称CPU)中。为了证实改进模拟退火的可行性,实验了在不同初始路径个数和内循环次数情况下访问50所城市的最短路程,如表1所示。
表1不同初始设置下的寻优结果
表1记录的时间是模拟退火串行操作运行时间,寻到的最短路程是实验10次得到的平均值。如表1中所示,当内循环次数×初始路径个数一定,10组、20组、25组初始路径寻到的最短路程小于1组初始路径寻到的最短距离。由此可知:在多个初始状态的情况下,虽然每个初始状态的寻优次数比只有一个初始状态情况下的寻优次数要少很多,但是寻优结果却比一个初始状态寻到的结果更优,多个初始状态的串行运行时间也只是比一个初始状态的串行运行时间略微增加,这就证实了改进模拟退火的可行性。
其中内循环次数对寻优结果有重要影响,内循环次数过小难以寻到最优结果,过大将影响运行效率,所以可以采用实验的方式来确定内循环次数。经多次实验,根据实验结果确定内循环次数在什么范围之内可以寻到较优的解,而且运行时间不会过长。
在上述改进模拟退火中利用TBB技术设计的模拟退火并行处理模板主要包括以下几部分:
(1)任意两个城市间的距离;
(2)初始温度T0的确定;
(3)各个初始路径在内循环中的寻优过程;
(4)各个初始路径寻到的最短路程和当前最短路程的比较。
本发明提出的利用TBB平台技术实现并行模拟退火解决TSP问题的具体实施方法的流程如图4所示,实现步骤如下:
步骤一:设置环境变量。
TBB并行数据处理平台的安装与环境设置,在计算机里置入TBB的文件包,并在VisualC++即VC目录中添加TBB的包含文件.include、库文件.lib及可执行文件.bin。
步骤二:构造并行模块。
首先,确定并行处理模块,改进的模拟退火中初始温度的确定、各个初始状态寻优和更新最优结果的过程都是可以并行处理的,再结合实际问题即TSP问题,找到实际问题中有些可以并行处理的部分;模拟退火解决TSP问题可以并行处理的部分如前文提及的四个部分。
然后,根据TBB并行模板规范类构造并行模块。
城市间距离、初始温度、各个初始路径在内循环中的循环都采用parallel_for模块,构造相应的并行模块;各个初始路径寻到的最短路程和历史最优解的比较采用parallel_reduce模块,构造相应的并行模块。
步骤三:设定初始参数。
设置问题规模,即城市的数目、初始路径个数、内循环长度、温度收敛系数。调用城市间距离和初始温度的parallel_for并行模块,并设置初始路径、初始路程、历史最优路径、历史最短路程;
步骤四:各个初始路径独立寻优。
调用parallel_for设计的各个初始路径搜寻路径模块,该模块可以实现各个初始路径的并行寻优。具体寻优过程是,每个初始路径随机生成候选路径,根据Metropolis接受准则,判断是否接受候选路径,接受则作为下次循环的初始路径,对应的候选路程作为下次循环的初始路程。否则初始路径及初始路程不变。这一步是限制模拟退火运行效率的主要部分,因此这一步采用TBB进行并行设计对提高效率至关重要;
步骤五:获取当前最短距离和最优路径。
调用parallel_reduce并行模块,将最短路程和各个初始路程比较,如果初始路程中的最小值小于最短路程,则将该最小值及其对应的路径赋给最短路程和最优路径,若初始路程中的最小值大于最短路程,则保留最短路程和最优路径不变。
步骤六:执行降温过程。
降低温度,判断温度是否到达最低温度,若温度已到达最低温度,则执行步骤七,否则执行步骤四;
步骤七:获得最优路径和最短路程。
结束,最终寻到遍历所有城市的最优路径及最短路程。
以parallel_for设计的各个初始路径寻优并行模块为例,详细说明TBB设计并行模拟退火的实现过程:
首先将此过程用parallel_for模板编写类SA,类SA必须包括的接口为operator和构造函数。其中operator接口是并行处理的主要部分,主要功能是进行并行循环优化,将循环的参数修改成TBB定义的blocked_range模块,使之能够支持循环体内任务的并行划分。
然后在operator接口中,各个初始路径进行寻优,寻优次数是L次;构造函数主要实现参数的初始化以及从整个任务空间中分离并构建子任务,其中主要参数是并行模板数,在该实例中是初始路径的个数M。
在完成并行模块的编写之后,初始化TBB任务调度器,调用上述编写的并行模板,返回结果,最后结束TBB任务调度。
表2不同问题规模下的运行时间和最终结果
城市数目 | 初始路径个数 | 串行模拟退火所用时间(ms) | 基于TBB并行模拟退火所用时间(ms) | 加速比 | 串行所得结果 | 并行所得结果 |
10 | 10 | 125 | 78 | 1.602 | 22.213 | 22.213 |
30 | 10 | 829.7 | 447 | 1.856 | 366.784 | 365.361 |
50 | 10 | 1793.6 | 879.6 | 2.039 | 431.999 | 428.308 |
75 | 10 | 3762.5 | 1804.2 | 2.085 | 540.356 | 538.906 |
105 | 10 | 6929.8 | 3365.2 | 2.059 | 764.128 | 759.651 |
155 | 10 | 14542.1 | 6658 | 2.184 | 876.261 | 875.315 |
表2中的数据是运行10次记录结果的平均值。表2中记录了对串行模拟退火和本发明提出的TBB多核并行设计的并行模拟退火进行仿真的结果,通过对运行时间和最终结果的比较,从表2和图5可以得出:在城市规模为10的情况下,基于TBB并行模拟退火的加速比是1.602,表明该方法即使在问题规模不大的情况下也有很高的加速比。当城市规模变成105、155时,加速比分别为2.059、2.184,表明随着问题规模的增大,基于TBB并行的运算速度是串行的两倍多,这大大缩减了解决大规模问题的时间。
通过对两种方法处理同样规模问题的CPU利用情况的比较,从图6和图7中可以得出:串行模拟退火不能充分调度两个处理核心的资源,CPU的使用率在48%左右,造成了资源的浪费,并没有体现出计算机双核的优势,而TBB设计的并行模拟退火,充分调度了两个处理核心资源,使CPU的使用率能达到100%,这正是运行效率提高的原因。
Claims (1)
1.一种基于线程构造模块的多核并行模拟退火方法,其特征在于,该方法包括如下步骤:
步骤一:设置环境变量;
线程构造模块TBB并行数据处理平台的安装与环境设置,在计算机里置入线程构造模块TBB的文件包,并在Visual C++即VC目录中添加线程构造模块TBB的包含文件.include、库文件.lib及可执行文件.bin;
步骤二:构造并行模块;
首先,确定并行处理模块,改进的模拟退火中初始温度的确定、各个初始状态寻优和更新最优结果的过程都是并行处理的,再结合实际问题,找到实际问题中能够并行处理的部分;然后,根据线程构造模块TBB并行模板规范类构造并行模块;在完成并行模块的编写之后,初始化TBB任务调度,调用上述编写的并行模块,在初始化TBB任务调度时,由任务调度器对象task_scheduler_init实现多任务的分配和并行,支持对多线程的划分,在调用并行模块时,由模块参数指定循环处理的数值范围以及任务粒度参数,在无法获得合适任务粒度情况下使用TBB提供的自动分配函数auto_partitioner()帮助用户设置合适的任务粒度参数;所述的实际问题中能够并行处理的部分包括如下三个部分:
(1)初始温度T0的确定;
(2)各个初始状态在内循环中的寻优过程;
(3)获得当前最优状态和最优结果;
在实际问题中,当数据的处理不存在通信,能够独立进行时,也采用线程构造模块TBB并行模板构造并行模块,进行并行处理;
步骤三:设定初始参数;
设置问题规模,即初始状态个数、内循环长度、温度收敛系数、目标函数;调用计算初始温度的parallel_for并行模块,并设置初始状态及对应的目标函数值,从初始状态对应的目标函数值中选出最小值作为最优结果,并得到对应的最优状态;
步骤四:各个初始状态独立寻优;
调用parallel_for设计的各个初始状态搜寻路径模块,该模块能够实现各个初始状态在一次内循环中的并行寻优;
具体寻优过程是:每个初始状态随机生成候选状态,根据Metropolis接受准则,判断是否接受候选状态,接受则作为下次循环的初始状态,并得到初始目标函数值;否则初始状态不变;其中Metropolis接受准则是指随机生成一个位于0到1之间的随机数ε∈(0,1),若exp(-Δf/T)<ε,则接受候选状态,否则不接受,Δf表示候选状态的目标值与初始状态的目标值的差值,T表示当前温度,ε是一个位于0到1之间的随机数;
步骤五:获取当前最优状态和最优结果;
调用parallel_reduce并行模块,将最优结果和各个初始状态对应的目标函数值比较,如果目标函数值中的最小值小于最优结果,则将该最小值及对应的状态赋给最优结果和最优状态,否则最优结果和最优状态不变;
步骤六:执行降温过程;
降低温度,判断温度是否到达最低温度,若温度已到达最低温度,则执行步骤七,否则执行步骤四;
步骤七:获得最优状态和最优结果;
结束,最终寻到实际问题中的最优状态及最优结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100874796A CN101593132B (zh) | 2009-06-25 | 2009-06-25 | 基于线程构造模块的多核并行模拟退火方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100874796A CN101593132B (zh) | 2009-06-25 | 2009-06-25 | 基于线程构造模块的多核并行模拟退火方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101593132A CN101593132A (zh) | 2009-12-02 |
CN101593132B true CN101593132B (zh) | 2012-01-11 |
Family
ID=41407801
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100874796A Expired - Fee Related CN101593132B (zh) | 2009-06-25 | 2009-06-25 | 基于线程构造模块的多核并行模拟退火方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101593132B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101826167B (zh) * | 2010-03-31 | 2012-09-05 | 北京航空航天大学 | 基于云控制器的自适应多核并行模拟退火遗传方法 |
CN102156666B (zh) * | 2011-04-20 | 2012-11-28 | 上海交通大学 | 用于粗粒度可重构阵列处理器资源调度的温度优化方法 |
CN103039100B (zh) * | 2011-08-03 | 2015-11-25 | 华为技术有限公司 | 基于模拟退火算法的频率优化方法和装置 |
CN104536831B (zh) * | 2015-01-12 | 2017-12-08 | 北京神舟航天软件技术有限公司 | 一种基于多目标优化的多核SoC软件映射方法 |
CN109521997B (zh) * | 2018-11-16 | 2020-10-30 | 中国人民解放军战略支援部队信息工程大学 | 用于共享存储多线程并行执行的随机数生成方法及装置 |
CN110278108B (zh) * | 2019-05-21 | 2021-10-29 | 杭州电子科技大学 | 一种基于模拟退火算法的多自主体网络容侵能力评估方法 |
CN111552553B (zh) * | 2020-04-29 | 2023-03-10 | 电子科技大学 | 一种基于模拟退火的多任务快速调度方法 |
CN113253989B (zh) * | 2021-07-05 | 2021-10-08 | 南京信息工程大学 | 基于嵌入式系统的软硬件协同一体化集成架构方法 |
CN115034950B (zh) * | 2022-06-30 | 2023-10-24 | 格兰菲智能科技有限公司 | 线程构造方法及其装置 |
CN115858444B (zh) * | 2022-11-22 | 2023-12-12 | 格兰菲智能科技有限公司 | 用于通用计算的数据访问方法、装置和系统 |
-
2009
- 2009-06-25 CN CN2009100874796A patent/CN101593132B/zh not_active Expired - Fee Related
Non-Patent Citations (2)
Title |
---|
阮宏玮,李文.模拟退火算法的并行分析与应用.《2006年全国高性能计算学术会议(HPC 2006)论文集 》.2006,第3部分. * |
高齐圣等.参数设计的模拟退火并行计算法.《系统工程理论与实践》.2000,(第08期), * |
Also Published As
Publication number | Publication date |
---|---|
CN101593132A (zh) | 2009-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101593132B (zh) | 基于线程构造模块的多核并行模拟退火方法 | |
CN110231986B (zh) | 基于多fpga的动态可重配置的多任务调度和放置方法 | |
CN101826167B (zh) | 基于云控制器的自适应多核并行模拟退火遗传方法 | |
CN103970602B (zh) | 一种面向x86多核处理器的数据流程序调度方法 | |
CN101464965B (zh) | 一种基于tbb的多核并行蚁群设计方法 | |
CN106339351B (zh) | 一种sgd算法优化系统及方法 | |
Lim et al. | Zico: Efficient {GPU} memory sharing for concurrent {DNN} training | |
CN105117286A (zh) | MapReduce中任务的调度方法和流水化执行方法 | |
US9400680B2 (en) | Transportation network micro-simulation with pre-emptive decomposition | |
CN103164190A (zh) | 一种全分布式流域生态水文模型的快速并行化方法 | |
CN105468439A (zh) | 在cpu-gpu异构框架下遍历固定半径内邻居的自适应并行算法 | |
CN107831740A (zh) | 一种应用于笔记本零件的分布式生产制造过程中的优化调度方法 | |
CN106371924A (zh) | 一种最小化MapReduce集群能耗的任务调度方法 | |
Wei et al. | Multi-core-, multi-thread-based optimization algorithm for large-scale traveling salesman problem | |
CN105005503A (zh) | 基于元胞自动机的云计算负载均衡任务调度方法 | |
Liu et al. | Scheduling optimization of task allocation in integrated manufacturing system based on task decomposition | |
CN110689174A (zh) | 基于公共交通的人员路线规划方法及装置 | |
CN102222274A (zh) | 基于调度编码的免疫克隆选择作业车间调度方法 | |
CN106155799B (zh) | 基于遗传算法的Codelet调度方法 | |
Dong et al. | Deep reinforcement learning for dynamic workflow scheduling in cloud environment | |
Al Maruf et al. | Optimizing DNNs Model Partitioning for Enhanced Performance on Edge Devices. | |
Li et al. | DBEFT: a dependency-ratio bundling earliest finish time algorithm for heterogeneous computing | |
Weidong et al. | Parallel performance of an ant colony optimization algorithm for TSP | |
CN113031522B (zh) | 适用于开放式数控系统周期性依赖任务的低功耗调度方法 | |
Bibal et al. | An auto-scaling framework for heterogeneous Hadoop systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120111 Termination date: 20130625 |