CN114564282A - 一种基于分布式资源共享的仿真平台及其资源分配方法 - Google Patents
一种基于分布式资源共享的仿真平台及其资源分配方法 Download PDFInfo
- Publication number
- CN114564282A CN114564282A CN202210189424.1A CN202210189424A CN114564282A CN 114564282 A CN114564282 A CN 114564282A CN 202210189424 A CN202210189424 A CN 202210189424A CN 114564282 A CN114564282 A CN 114564282A
- Authority
- CN
- China
- Prior art keywords
- task
- resource
- current
- list
- server
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45508—Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及一种基于分布式资源共享的仿真平台及其资源分配方法。仿真平台包括:多个客户端、一个服务端;通过客户端的任务计算模块根据仿真实验的参数将仿真实验划分为多个任务,得到任务列表,由数据传输模块将任务列表传输至服务端,由客户端的资源采集模块获取本机计算速率和闲置资源率,并传输至服务端,通过服务端的数据采集模块采集服务端数据传输模块接收到的各个客户端的任务列表和资源信息,并根据资源信息生成资源列表,其中资源列表中的资源按照速率费用比从高到低排列,由服务端任务调度模块根据任务列表和资源列表对任务进行分配,在满足用户预期执行时间和执行费用的前提下,选取费用时间比最高的计算机组完成仿真实验。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种基于分布式资源共享的仿真平台及其资源分配方法。
背景技术
在使用仿真平台进行仿真实验的过程中,由于计算所涉及的任务量大,数据多样,算法复杂,对象繁多,往往需要大量的计算资源来完成仿真,但是若在部署过多的计算资源,就容易造成资源浪费,但是部署的资源太少,又会造成无法满足计算量大的仿真任务。目前的仿真平台在资源共享方面,一般采用云平台的方式,通过云服务的方式提供计算资源给用户使用,但是费用高昂,且用户自己的计算资源没有利用,造成浪费。因此,现有技术存在资源利用率低、适应性不佳的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高资源利用率,减少资源浪费的基于分布式资源共享的仿真平台及其资源分配方法。
一种基于分布式资源共享的仿真平台,其特征在于,所述仿真平台包括:多个客户端、一个服务端;
所述客户端包括任务计算模块,资源采集模块和数据传输模块;
所述服务端包括数据传输模块、数据采集模块和任务调度模块;
所述客户端的任务计算模块用于根据仿真实验的参数将仿真实验划分为多个任务,得到任务列表,通过客户端的数据传输模块将所述任务列表传输至服务端;
所述客户端的资源采集模块用于获取本机计算速率和闲置资源率,通过客户端的数据传输模块将资源信息传输至服务端;
所述服务端的数据采集模块用于采集服务端数据传输模块接收到的各个客户端的任务列表和资源信息,并根据所述资源信息生成资源列表;所述资源列表中的资源按照速率费用比从高到低排列;
所述服务端的任务调度模块用于根据所述任务列表和所述资源列表对任务进行分配,在满足用户预期执行时间和执行费用的前提下,选取费用时间比最高的计算机组完成仿真实验。
在其中一个实施例中,所述客户端的数据传输模块还用于:在客户端完成仿真实验后,将本机仿真结果传输至服务端。
在其中一个实施例中,所述客户端还包括显示模块,所述服务端还用于:将各个客户端上传的仿真结果汇总后,将汇总的仿真结果回传至客户端显示模块进行显示。
一种基于分布式资源共享的仿真平台的资源分配方法,所述方法包括:
通过服务端获取仿真平台的资源列表;所述资源列表是将各个客户端的计算资源按照速率费用比从高到低排列;
通过服务端获取任务列表,以及执行任务的预期执行时间和预期执行费用;
从所述任务列表中按顺序取任务,对每一项任务,从所述资源列表中按顺序取资源,若在当前资源已有任务的基础上将当前任务分配给当前资源,通过当前资源执行当前任务所需的时间和费用均不超过预期时,则将当前任务分配给当前资源;
对所述任务列表中的任务进行依次分配,直到分配完全部任务,得到最优计算机组;
通过服务端将任务列表中的任务分配到最优计算机组执行仿真处理。
在其中一个实施例中,还包括:从所述任务列表中按顺序取任务,对每一项任务,从所述资源列表中按顺序取资源,若在当前资源已有任务的基础上将当前任务分配给当前资源,通过当前资源执行当前任务所需的时间和费用均不超过预期时,则将当前任务分配给当前资源;
若资源列表循环结束仍未为当前任务分配到资源,判断若是拟分配资源方案费用未达到预期,返回失败;若是拟分配资源方案时间未达到预期,删除资源列表中处理速率小于等于所述拟分配资源的所有资源,从更新后的资源列表重新循环。
在其中一个实施例中,还包括:若在当前资源已有任务的基础上将当前任务分配给当前资源,通过当前资源执行当前任务所需的时间和费用均不超过预期时,则将当前任务分配给当前资源之后,将当前任务加入当前任务的已有任务列表。
在其中一个实施例中,还包括:若在当前资源已有任务的基础上将当前任务分配给当前资源;
计算通过当前资源执行当前任务所需的时间为:在当前资源上执行当前任务本身所需的时间、任务执行完成所需延时时间以及当前资源上已有任务的累计执行时间三者之和;
计算通过当前资源执行当前任务所需的费用为:在当前资源上执行当前任务本身所需的费用以及当前资源上已有任务的累计执行费用两者之和;
若通过当前资源执行当前任务所需的时间和费用均不超过预期时,则将当前任务分配给当前资源。
在其中一个实施例中,还包括:在通过服务端将任务列表中的任务分配到最优计算机组执行仿真处理之和,将所述最优计算机组中每个客户端的仿真结果传输至服务端进行汇总;再通过服务端将汇总后的仿真结果回传至客户端的显示模块进行显示。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
通过服务端获取仿真平台的资源列表;所述资源列表是将各个客户端的计算资源按照速率费用比从高到低排列;
通过服务端获取任务列表,以及执行任务的预期执行时间和预期执行费用;
从所述任务列表中按顺序取任务,对每一项任务,从所述资源列表中按顺序取资源,若在当前资源已有任务的基础上将当前任务分配给当前资源,通过当前资源执行当前任务所需的时间和费用均不超过预期时,则将当前任务分配给当前资源;
对所述任务列表中的任务进行依次分配,直到分配完全部任务,得到最优计算机组;
通过服务端将任务列表中的任务分配到最优计算机组执行仿真处理。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
通过服务端获取仿真平台的资源列表;所述资源列表是将各个客户端的计算资源按照速率费用比从高到低排列;
通过服务端获取任务列表,以及执行任务的预期执行时间和预期执行费用;
从所述任务列表中按顺序取任务,对每一项任务,从所述资源列表中按顺序取资源,若在当前资源已有任务的基础上将当前任务分配给当前资源,通过当前资源执行当前任务所需的时间和费用均不超过预期时,则将当前任务分配给当前资源;
对所述任务列表中的任务进行依次分配,直到分配完全部任务,得到最优计算机组;
通过服务端将任务列表中的任务分配到最优计算机组执行仿真处理。
上述基于分布式资源共享的仿真平台及其资源分配方法,仿真平台包括:多个客户端、一个服务端;通过客户端的任务计算模块根据仿真实验的参数将仿真实验划分为多个任务,得到任务列表,由数据传输模块将任务列表传输至服务端,由客户端的资源采集模块获取本机计算速率和闲置资源率,并传输至服务端,通过服务端的数据采集模块采集服务端数据传输模块接收到的各个客户端的任务列表和资源信息,并根据资源信息生成资源列表,其中资源列表中的资源按照速率费用比从高到低排列,由服务端任务调度模块根据任务列表和资源列表对任务进行分配,在满足用户预期执行时间和执行费用的前提下,选取费用时间比最高的计算机组完成仿真实验。
附图说明
图1为一个实施例中基于分布式资源共享的仿真平台的结构框图;
图2为一个实施例中基于分布式资源共享的仿真平台的资源分配方法的流程示意图;
图3为另一个实施例中基于分布式资源共享的仿真平台的资源分配方法的流程示意图;
图4为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供了一种基于分布式资源共享的仿真平台,包括:
客户端、服务端;
客户端包括任务计算模块,资源采集模块和数据传输模块;
服务端包括数据传输模块、数据采集模块和任务调度模块;
客户端的任务计算模块用于根据仿真实验的参数将仿真实验划分为多个任务,得到任务列表,通过客户端的数据传输模块将任务列表传输至服务端;
客户端的资源采集模块用于获取本机计算速率和闲置资源率,通过客户端的数据传输模块将资源信息传输至服务端;
服务端的数据采集模块用于采集服务端数据传输模块接收到的各个客户端的任务列表和资源信息,并根据资源信息生成资源列表;资源列表中的资源按照速率费用比从高到低排列;
服务端的任务调度模块用于根据任务列表和资源列表对任务进行分配,在满足用户预期执行时间和执行费用的前提下,选取费用时间比最高的计算机组完成仿真实验。
在本实施例中,根据任务列表和资源列表对任务进行分配,在满足用户预期执行时间和执行费用的前提下,选取费用时间比最高的计算机组完成仿真实验的具体过程为:
(1)设置执行任务的预期执行时间Pre(Time)和预期执行费用Pre(Cost);
(2)设当前有M台计算机,每台计算机的处理速率为Vm,计算费用为Cm;
(3)设每台机器网络延时为Dm,每个任务执行完成所需延时为DRnm;
(4)设每个任务在每台计算机执行的时间为TimeRm,每个任务的计算费用为CostRm;
(5)根据Vm/Cm值的大小对计算机组M进行排序,得到资源列表Zm;
(6)从任务列表中按顺序取任务Rn,到最后一个任务计算完成结束;
(7)从资源列表中按顺序取资源Zm,则当前任务在此资源上计算所需时间为TimeRnm,所需费用为CostRnm,设此资源之前所分配任务累计需计算时间为Timem,费用为Costm,则当Timem+TimeRnm+DRnm<Pre(Time)
且Costm+CostRnm<Pre(Cost)时,将任务分配到该机器上并返回步骤(6),Timem=Timem+TimeRnm+DRnm,Costm=Costm+CostRnm,反之则返回步骤(7),如果资源列表循环结束仍未分配到资源,如果费用未达到预期,返回失败,如果时间未达到预期,删除资源列表中处理速率小于等于拟分配资源的所有资源,返回步骤(7)重新计算。
通过本发明的设计,利用多用户的闲置资源,采用分布式任务调度算法,综合考虑各计算节点的网络延迟、计算速度、资源闲置程度,选择优质资源,将仿真任务分发到各计算节点上完成仿真实验,然后返回结果进行显示。以此达到计算共享,提高资源利用率,减少资源浪费。
在其中一个实施例中,客户端的数据传输模块还用于:在客户端完成仿真实验后,将本机仿真结果传输至服务端。
在其中一个实施例中,客户端还包括显示模块,服务端还用于:将各个客户端上传的仿真结果汇总后,将汇总的仿真结果回传至客户端显示模块进行显示。
在一个实施例中,如图2所示,提供了一种基于分布式资源共享的仿真平台的资源分配方法,包括以下步骤:
步骤202,通过服务端获取仿真平台的资源列表。
资源列表是将各个客户端的计算资源按照速率费用比从高到低排列。
速率费用比高的资源在费用相同的情况下处理速率更高,效率更好,或者在相同处理速率的情况下费用更低,经济效率更好,因此速率费用比高的资源优先分配。
步骤204,通过服务端获取任务列表,以及执行任务的预期执行时间和预期执行费用。
步骤206,从任务列表中按顺序取任务,对每一项任务,从资源列表中按顺序取资源,若在当前资源已有任务的基础上将当前任务分配给当前资源,通过当前资源执行当前任务所需的时间和费用均不超过预期时,则将当前任务分配给当前资源。
步骤208,对任务列表中的任务进行依次分配,直到分配完全部任务,得到最优计算机组。
本实施例中采用贪心算法,考虑因素包括任务资源网络延时、执行时间以及执行费用,在满足用户预期执行时间和执行费用的前提下,选取费用时间比最高的计算机组完成仿真实验。
步骤210,通过服务端将任务列表中的任务分配到最优计算机组执行仿真处理。
上述基于分布式资源共享的仿真平台的资源分配方法中,仿真平台包括:多个客户端、一个服务端;通过客户端的任务计算模块根据仿真实验的参数将仿真实验划分为多个任务,得到任务列表,由数据传输模块将任务列表传输至服务端,由客户端的资源采集模块获取本机计算速率和闲置资源率,并传输至服务端,通过服务端的数据采集模块采集服务端数据传输模块接收到的各个客户端的任务列表和资源信息,并根据资源信息生成资源列表,其中资源列表中的资源按照速率费用比从高到低排列,由服务端任务调度模块根据任务列表和资源列表对任务进行分配,在满足用户预期执行时间和执行费用的前提下,选取费用时间比最高的计算机组完成仿真实验。
在其中一个实施例中,还包括:从任务列表中按顺序取任务,对每一项任务,从资源列表中按顺序取资源,若在当前资源已有任务的基础上将当前任务分配给当前资源,通过当前资源执行当前任务所需的时间和费用均不超过预期时,则将当前任务分配给当前资源;若资源列表循环结束仍未为当前任务分配到资源,判断若是拟分配资源方案费用未达到预期,返回失败;若是拟分配资源方案时间未达到预期,删除资源列表中处理速率小于等于拟分配资源的所有资源,从更新后的资源列表重新循环。
在其中一个实施例中,还包括:若在当前资源已有任务的基础上将当前任务分配给当前资源,通过当前资源执行当前任务所需的时间和费用均不超过预期时,则将当前任务分配给当前资源之后,将当前任务加入当前任务的已有任务列表。
在其中一个实施例中,还包括:若在当前资源已有任务的基础上将当前任务分配给当前资源;计算通过当前资源执行当前任务所需的时间为:在当前资源上执行当前任务本身所需的时间、任务执行完成所需延时时间以及当前资源上已有任务的累计执行时间三者之和;计算通过当前资源执行当前任务所需的费用为:在当前资源上执行当前任务本身所需的费用以及当前资源上已有任务的累计执行费用两者之和;若通过当前资源执行当前任务所需的时间和费用均不超过预期时,则将当前任务分配给当前资源。
本发明通过各用户计算资源的共享,综合考虑任务量大小,各计算节点的网络延迟、计算速度、资源闲置率、费用等参数,使得资源分配更加合理。
在其中一个实施例中,如图3所示,提供一种基于分布式资源共享的仿真平台的资源分配方法,包括:资源采集模块采集资源信息、上传资源信息至服务端、生成任务列表、设置预期计算时间及其费用、上传任务列表至服务端、通过资源列表以及任务列表根据设置参数计算最优计算机组、下发任务至计算机组、完成计算并返回结果、通过显示模块显示结果。
在一个具体实施例中,通过本发明分布式资源共享平台进行实验仿真的实现过程如下:
1.设一次仿真实验有3个参数,每个参数有两个值,进行排列组合后,该实验分解成6个任务;
2.设实验有一千万个数据需要计算,每个数据运算次数为1000次,则每个任务计算次数为一百亿次,则该仿真实验总计算次数为6百亿次;
3.设现有计算机三台,计算机A计算速率为10亿次每秒,费用为1/秒,计算机B
速率为25亿次每秒,费用为4/秒,计算机C速率为40亿次每秒,费用为10/秒;4.设计算机A网络延迟为0.5秒,计算机B网络延迟0.2秒,计算机C网络延迟0.1秒;5.设预期计算时间为10秒,预期费用为120;
6.根据算法步骤得到以下结果:
(1)计算机A速率费用比为10,计算机B速率费用比为6.25,计算机C速率费用比为4,所以计算机排序为A,B,C;
(2)任务一:计算机A计算时间10秒,费用10,延迟0.5秒;
将任务一分配给计算机A,计算机A分配任务计算总时间为10.5秒,总费用10;
任务二:计算机A计算时间10秒,费用10,延迟0.5秒;
时间超出预期,取出计算机B进行计算;
将任务二分配给计算机B,B分配任务计算总时间为4.2秒,
总费用16;
任务三:计算机A计算时间10秒,费用10,延迟0.5秒;
时间超出预期,取出计算机B进行计算;
计算机B计算时间4秒,费用16,延迟0.2秒;
将任务三分配给计算机B,B分配任务计算总时间为8.4秒,总费用32;
任务四:计算机A计算时间10秒,费用10,延迟0.5秒;
时间超出预期,取出计算机B进行计算;
计算机B计算时间4秒,费用16,延迟0.2秒;
时间超出预期,取出计算机C进行计算;
计算机C计算时间2.5秒,费用25,延迟0.1秒;
将任务四分配给计算机C,C分配任务计算总时间为2.51秒,总费用25;
任务五:计算机A计算时间10秒,费用10,延迟0.5秒;
时间超出预期,取出计算机B进行计算;
计算机B计算时间4秒,费用16,延迟0.2秒;
时间超出预期,取出计算机C进行计算;
计算机C计算时间2.5秒,费用25,延迟0.1秒;
将任务四分配给计算机C,C分配任务计算总时间为5.0秒,总费用50;
任务六:计算机A计算时间10秒,费用10,延迟0.5秒;
时间超出预期,取出计算机B进行计算;
计算机B计算时间4秒,费用16,延迟0.2秒;
时间超出预期,取出计算机C进行计算;
计算机C计算时间2.5秒,费用25,延迟0.1秒;
将任务六分配给计算机C,C分配任务计算总时间为7.53秒,总费用75;
(3)得到最优计算机组为A分配一个任务,B分配2个任务,C分配3个任务,总时间为10.5秒,总费用为117,时间与费用均达到预期,则选择此组进行计算。
应该理解的是,虽然图2-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图4所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于分布式资源共享的仿真平台的资源分配方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现上述方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于分布式资源共享的仿真平台,其特征在于,所述仿真平台包括:多个客户端、一个服务端;
所述客户端包括任务计算模块,资源采集模块和数据传输模块;
所述服务端包括数据传输模块、数据采集模块和任务调度模块;
所述客户端的任务计算模块用于根据仿真实验的参数将仿真实验划分为多个任务,得到任务列表,通过客户端的数据传输模块将所述任务列表传输至服务端;
所述客户端的资源采集模块用于获取本机计算速率和闲置资源率,通过客户端的数据传输模块将资源信息传输至服务端;
所述服务端的数据采集模块用于采集服务端数据传输模块接收到的各个客户端的任务列表和资源信息,并根据所述资源信息生成资源列表;所述资源列表中的资源按照速率费用比从高到低排列;
所述服务端的任务调度模块用于根据所述任务列表和所述资源列表对任务进行分配,在满足用户预期执行时间和执行费用的前提下,选取费用时间比最高的计算机组完成仿真实验。
2.根据权利要求1所述的方法,其特征在于,所述客户端的数据传输模块还用于:
在客户端完成仿真实验后,将本机仿真结果传输至服务端。
3.根据权利要求2所述的方法,其特征在于,所述客户端还包括显示模块,所述服务端还用于:
将各个客户端上传的仿真结果汇总后,将汇总的仿真结果回传至客户端显示模块进行显示。
4.一种基于分布式资源共享的仿真平台的资源分配方法,其特征在于,所述方法包括:
通过服务端获取仿真平台的资源列表;所述资源列表是将各个客户端的计算资源按照速率费用比从高到低排列;
通过服务端获取任务列表,以及执行任务的预期执行时间和预期执行费用;
从所述任务列表中按顺序取任务,对每一项任务,从所述资源列表中按顺序取资源,若在当前资源已有任务的基础上将当前任务分配给当前资源,通过当前资源执行当前任务所需的时间和费用均不超过预期时,则将当前任务分配给当前资源;
对所述任务列表中的任务进行依次分配,直到分配完全部任务,得到最优计算机组;
通过服务端将任务列表中的任务分配到最优计算机组执行仿真处理。
5.根据权利要求4所述的方法,其特征在于,从所述任务列表中按顺序取任务,对每一项任务,从所述资源列表中按顺序取资源,若在当前资源已有任务的基础上将当前任务分配给当前资源,通过当前资源执行当前任务所需的时间和费用均不超过预期时,则将当前任务分配给当前资源,包括:
从所述任务列表中按顺序取任务,对每一项任务,从所述资源列表中按顺序取资源,若在当前资源已有任务的基础上将当前任务分配给当前资源,通过当前资源执行当前任务所需的时间和费用均不超过预期时,则将当前任务分配给当前资源;
若资源列表循环结束仍未为当前任务分配到资源,判断若是拟分配资源方案费用未达到预期,返回失败;若是拟分配资源方案时间未达到预期,删除资源列表中处理速率小于等于所述拟分配资源的所有资源,从更新后的资源列表重新循环。
6.根据权利要求5所述的方法,其特征在于,若在当前资源已有任务的基础上将当前任务分配给当前资源,通过当前资源执行当前任务所需的时间和费用均不超过预期时,则将当前任务分配给当前资源之后,还包括:
将当前任务加入当前任务的已有任务列表。
7.根据权利要求6所述的方法,其特征在于,若在当前资源已有任务的基础上将当前任务分配给当前资源,通过当前资源执行当前任务所需的时间和费用均不超过预期时,则将当前任务分配给当前资源,包括:
若在当前资源已有任务的基础上将当前任务分配给当前资源;
计算通过当前资源执行当前任务所需的时间为:在当前资源上执行当前任务本身所需的时间、任务执行完成所需延时时间以及当前资源上已有任务的累计执行时间三者之和;
计算通过当前资源执行当前任务所需的费用为:在当前资源上执行当前任务本身所需的费用以及当前资源上已有任务的累计执行费用两者之和;
若通过当前资源执行当前任务所需的时间和费用均不超过预期时,则将当前任务分配给当前资源。
8.根据权利要求7所述的方法,其特征在于,在通过服务端将任务列表中的任务分配到最优计算机组执行仿真处理之和,还包括:
将所述最优计算机组中每个客户端的仿真结果传输至服务端进行汇总;
再通过服务端将汇总后的仿真结果回传至客户端的显示模块进行显示。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求4至8中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求4至8中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210189424.1A CN114564282A (zh) | 2022-02-28 | 2022-02-28 | 一种基于分布式资源共享的仿真平台及其资源分配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210189424.1A CN114564282A (zh) | 2022-02-28 | 2022-02-28 | 一种基于分布式资源共享的仿真平台及其资源分配方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114564282A true CN114564282A (zh) | 2022-05-31 |
Family
ID=81715732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210189424.1A Pending CN114564282A (zh) | 2022-02-28 | 2022-02-28 | 一种基于分布式资源共享的仿真平台及其资源分配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114564282A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116149794A (zh) * | 2023-03-07 | 2023-05-23 | 北京创奇视界科技有限公司 | 一种基于容器架构的云仿真方法 |
CN116521363A (zh) * | 2023-04-06 | 2023-08-01 | 中保车服科技服务股份有限公司 | 一种代码打包方法、计算机设备及存储介质 |
-
2022
- 2022-02-28 CN CN202210189424.1A patent/CN114564282A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116149794A (zh) * | 2023-03-07 | 2023-05-23 | 北京创奇视界科技有限公司 | 一种基于容器架构的云仿真方法 |
CN116149794B (zh) * | 2023-03-07 | 2023-09-08 | 北京创奇视界科技有限公司 | 一种基于容器架构的云仿真方法 |
CN116521363A (zh) * | 2023-04-06 | 2023-08-01 | 中保车服科技服务股份有限公司 | 一种代码打包方法、计算机设备及存储介质 |
CN116521363B (zh) * | 2023-04-06 | 2024-01-30 | 中保车服科技服务股份有限公司 | 一种代码打包方法、计算机设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cai et al. | A delay-based dynamic scheduling algorithm for bag-of-task workflows with stochastic task execution times in clouds | |
CN114564282A (zh) | 一种基于分布式资源共享的仿真平台及其资源分配方法 | |
US20200364608A1 (en) | Communicating in a federated learning environment | |
WO2021088207A1 (zh) | 云计算集群混部作业调度方法、装置、服务器及存储装置 | |
CN107958349B (zh) | 任务分配方法、装置、计算机设备和存储介质 | |
CN109597965B (zh) | 基于深度神经网络的数据处理方法、***、终端及介质 | |
CN111225050B (zh) | 云计算资源分配方法及装置 | |
CN104317749B (zh) | 信息写入方法和装置 | |
CN113656179B (zh) | 云计算资源的调度方法及装置、电子设备和存储介质 | |
CN110390679B (zh) | 图像处理方法、计算机设备和可读存储介质 | |
CN109587220B (zh) | 负载均衡方法、装置、计算机设备和存储介质 | |
CN111708627A (zh) | 基于分布式调度框架的任务调度方法以及装置 | |
Farahabady et al. | Non-clairvoyant assignment of bag-of-tasks applications across multiple clouds | |
CN105740085A (zh) | 容错处理方法及装置 | |
CN112232594A (zh) | 一种多星应急观测任务规划方法、装置和计算机设备 | |
CN111126537A (zh) | 标识码id的生成方法及相关产品 | |
CN111949411B (zh) | 资源分配方法、装置、计算机设备及计算机可读存储介质 | |
CN115221156A (zh) | 数据库集群扩容方法、装置、计算机设备和存储介质 | |
CN115129481B (zh) | 一种计算资源分配方法、装置及电子设备 | |
CN111078415A (zh) | 数据处理方法、装置、服务器及计算机可读存储介质 | |
Cui et al. | A scheduling algorithm for multi-tenants instance-intensive workflows | |
CN113159657B (zh) | 工序的执行资源分配方法、装置和存储介质 | |
CN104933110A (zh) | 一种基于MapReduce的数据预取方法 | |
CN115633034A (zh) | 一种跨集群的资源调度方法、装置、设备及存储介质 | |
Meena et al. | Optimal resource reservation for offloaded tasks in mobile cloud computing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |