CN112379981A - 面向分布式实时仿真任务的无锁同步方法 - Google Patents
面向分布式实时仿真任务的无锁同步方法 Download PDFInfo
- Publication number
- CN112379981A CN112379981A CN202011260181.3A CN202011260181A CN112379981A CN 112379981 A CN112379981 A CN 112379981A CN 202011260181 A CN202011260181 A CN 202011260181A CN 112379981 A CN112379981 A CN 112379981A
- Authority
- CN
- China
- Prior art keywords
- task
- slave
- signal
- tasks
- time
- 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
- 238000004088 simulation Methods 0.000 title claims abstract description 90
- 238000000034 method Methods 0.000 title claims abstract description 34
- 230000008569 process Effects 0.000 claims description 8
- 230000005059 dormancy Effects 0.000 claims description 3
- 230000008859 change Effects 0.000 claims description 2
- 230000001360 synchronised effect Effects 0.000 claims description 2
- 230000007547 defect Effects 0.000 abstract description 2
- 238000004364 calculation method Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000007958 sleep Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Debugging And Monitoring (AREA)
- Multi Processors (AREA)
Abstract
本发明提供了一种面向分布式实时仿真任务的无锁同步方法,其特征在于包括以下步骤:主任务和其对应的每个从任务分别组成一对主从任务;主任务通过访问高精度时钟源获取精确时间以控制仿真步长;初始化所有主任务和从任务;启动所有任务,所有主从任务在开始时间进入循环同步,每一对主从任务中的主任务和从任务同步执行。本发明的目的就是针对现有技术的缺陷,提供一种面向分布式实时仿真任务的无锁同步方法,解决目前高性能实时仿真***中仿真任务同步资源开销大和仿真步长大等问题。
Description
技术领域
本发明涉及计算机仿真技术领域,具体涉及一种面向分布式实时仿真任务的无锁同步方法。
背景技术
实时仿真技术是一种仿真时间和真实时间完全一致的仿真方法,即真实时间流逝了△T时间段,实时仿真***也运行了△T时间段。与实时仿真相对应的是超实时仿真(仿真时间小于真实时间)和欠实时仿真(仿真时间大于真实时间)。
实时仿真其仿真时间与真实时间一比一的关系,使得其既可以应用于离线仿真,也可以应用于在线仿真。结合实际装置,实时仿真技术在半实物仿真***中能够最贴切地模拟真实***的各种运行状态。通过实时仿真,一方面为设计人员优化设计和验证功能仿真了较为真实的***环境,一方面规避了在真实***测试或试验时发生严重故障或操作失误所导致的巨大风险。因此,实时仿真在电力***、航空航天和汽车等领域得到了广泛应用。
实时仿真***按照固定步长一步一步地运行仿真任务,每个步长内仿真任务进行***的仿真运算,仿真任务通过保证每个仿真步长和真实时间一致来保证其实时性。一般来说,仿真步长越小,仿真精度越高,对真实***的模拟也更加细致,从而与真实***的误差也越小。
将仿真内容划分为各个单独的任务,并将它们分配至不同计算节点上分布式运行,可以解决单个计算节点算力不足的问题。分布式实时仿真一般要解决多任务之间的同步问题:1)每个任务的仿真时间须和真实时间一致,满足实时性;2)所有任务须统一开始和结束,满足数据一致性。
一方面,分布式仿真要求计算分配至不同节点,增加整体计算性能,为保证任务之间的一致性,会增加任务之间的同步开销(延迟);另一方面,现有的分布式仿真任务同步一般采用操作***所提供的定时器和消息通信机制(如信号量、管道和套接字等),这些定时器和通信方法并不是专门为高实时性的仿真任务准备的,实时性较差。比如,一些定时或通信方法会阻塞CPU或锁定资源,使得CPU切换执行其他任务或休眠,或增加任务切换时间,或增加响应延迟。
忙等(程序通过持续地轮询时钟或变量占用CPU)可有效降低应用响应延迟,增强实时性,但具有计算资源开销大的问题,长时间的忙等会使得CPU降频或进入省电模式,从而降低计算资源使用率。
在分布式仿真中,仿真任务的同步方法影响仿真步长的大小和计算资源的利用率,如何实现小仿真步长和资源占用率少的同步方法,是分布式实时仿真的关键技术。
发明内容
本发明的目的就是针对现有技术的缺陷,提供一种面向分布式实时仿真任务的无锁同步方法,解决目前高性能实时仿真***中仿真任务同步资源开销大和仿真步长大等问题。
本发明提供了一种面向分布式实时仿真任务的无锁同步方法,其特征在于包括以下步骤:
A.主任务和其对应的每个从任务分别组成一对主从任务;主从任务是计算机中具有不同功能角色的进程或线程,独立地运行在一个计算单元中;
B.主任务通过访问操作***提供的高精度时钟源获取精确时间以控制仿真步长,主从任务共享一致的高精度时钟;
C.初始化所有主任务和从任务;
D.启动所有任务,所有主从任务在开始时间进入循环同步,每一对主从任务中的主任务和从任务同步执行;
E.任何主从任务超时,即运行时间超过预期,则主从任务的忙等至超时的任务完成。
上述技术方案中,每个任务都持有等待信号和继续信号;只有任务所持有的等待信号和继续信号满足继续条件时该任务才会继续运行,否则一直等待该继续条件满足;每个任务只修改自己的等待信号和其他任务的继续信号,或者只修改自己的继续信号和其他任务的等待信号。
上述技术方案中,每对主从任务分别执行于不同的独立计算单元,不同的独立计算单元在同一时间并行执行各对主从任务。本发明将多个CPU或多个CPU核心视为多个计算单元。或者同一台主机上的多个FPGA板卡共同参与计算。
上述技术方案中,所述步骤B具体包括以下步骤:
初始化每个任务的等待信号和继续信号,分别为等待信号和继续信号赋以初值。
上述技术方案中,步骤D中,主任务循环同步包括下述步骤:
(1.1)更新主任务的等待信号和所有从任务的继续信号;
(1.2)执行主任务内容;
(1.3)任务等待至时间点Ts+i*△T,等待方式为休眠或持续获取时间判断;其中,Ts为开始时间,i是任务循环次数,△T是仿真步长;
(1.4)主任务通过对本任务的等待信号和继续信号的数值判断是否满足任务继续执行条件,如果满足继续执行,否则任务持续判断;
(1.5)跳转至步骤1.1。
上述技术方案中,所述步骤D中,从任务循环同步包括下述步骤:
(2.1)从任务通过对等待信号和继续信号的数值判断是否满足任务继续执行条件,如果满足继续执行,否则任务持续判断;
(2.2)执行从任务内容;
(2.3)更新从任务等待信号和主任务继续信号;
(2.4)跳转至步骤2.1。
上述技术方案中,所述步骤D中,如果从任务循环同步执行过程被外部中断,则销毁所有任务并释放等待信号和继续信号所占据的存储空间,直接退出仿真任务。
上述技术方案中,所述等待信号和继续信号是主任务和从任务之间共享的存储变量;主任务和从任务通过“读者-写者”模式实现无锁同步,主任务和从任务在某一时刻对任意信号变量只有存在一个写者。
上述技术方案中,所述步骤E中,任务超时同步包括下述步骤:
(3.1)至时间点Ts+i*△T,主任务或从任务发现自己的等待信号和继续信号的不满足任务继续执行条件,则视为一次超时;
(3.2)一旦超时,任务则忙等轮询等待信号和继续信号的数值,直至任务继续执行条件满足;
其中,任务超时与否并不改变仿真步长和下一次同步时间(无论第i个仿真步长是否超时,第i+1次同步时间点为Ts+(i+1)*△T)。
本发明提供一种面向分布式实时仿真任务的无锁同步方法和装置,主从任务实现两阶段同步,第一阶段通过高精度休眠实现粗粒度的任务间同步,第二阶段再利用CPU开销较大忙等实现完全同步,因为第二节点时间非常小,因此资源开销远小于忙等,而实时性又优于基于操作***提供的定时和通信机制。总之,该方法通过高精度时钟的运用可实现低至微秒级的小步长实时仿真,同时解决了目前高性能实时仿真***中仿真任务同步资源开销大和仿真步长大等问题。
附图说明
图1为本发明的主任务和从任务示意图;
图2为本发明的主任务和从任务循环同步步骤流程示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步的详细说明,便于清楚地了解本发明,但它们不对本发明构成限定。
如图1所示,本发明提供了一种面向分布式实时仿真任务的无锁同步方法,其特征在于包括以下步骤:
A.主任务和其对应的每个从任务分别组成一对主从任务;
B.主任务通过访问高精度时钟源获取精确时间以控制仿真步长;
C.初始化所有主任务和从任务;
D.启动所有任务,所有主从任务在开始时间进入循环同步,每一对主从任务中的主任务和从任务同步执行;
E.任何主从任务超时,即运行时间超过预期,则主从任务的忙等至超时的任务完成。
本发明的高精度时钟源是由操作***的软件提供的(其底层也对应着一个硬件时钟),而不是直接使用由硬件时钟产生时钟信号;主从任务的高精度时钟经过了时钟同步,本发明可视为主从任务共享一致的时钟;任务的同步基础是时钟的同步,但时钟的同步并不保证任务同步,任务运行时间会由于环境变化而发生抖动。本发明的主从任务是运行在独立计算单元上的线程或进程,不能通过直接调用的方式实现通知和同步。
本发明应用的高精度的时钟需要硬件和操作***共同支持:一方面计算机内部存在生成高精度时间的物理高频时钟(如TSC时钟和HPET时钟);另一方面需要操作***的软件支持这些高精度时钟并保证实时性。应用层可以使用高精度时钟,从而获取与真实时间偏移量较小的精确时间。而一般的时钟由于频率低、精度差和操作***实时性不强,只能给上层应用提供较低的时间精度。
本发明的主从任务分配到不同的独立计算单元:例如将不同的进程(线程)分配到多核CPU的不同CPU核心上分别计算。分配到独立计算核心,一方面是分布式仿真需要,即将计算分配到多个节点以减少计算时间,一方面可以使一个任务独立占用CPU核心,减少任务切换时间,增强任务实时性。
所述实时仿真任务包括运行在独立计算单元上的多个任务,包含1个主任务和n个其他任务(n≥1),主任务和每个其他任务组成一对主从任务,其中一组主从任务为Tm和Ts,仿真步长10微秒(△T=10us)。如图1所示,主任务可以通过访问高精度时钟源获取精确时间。每个任务(主任务或从任务)都持有一对信号,即等待信号和继续信号,只有任务所持有的等待信号和继续信号满足继续条件时该任务才会继续运行,否则一直等待该继续条件满足。每个任务只修改自己的等待信号和其他任务的继续信号(或者只修改自己的继续信号和其他任务的等待信号)。
所述独立计算单元是具有运算能力的通用或专用处理器单元,如CPU核心、CPU超线程、FPGA和GPU核心等,可以将多个CPU或多个CPU核心视为多个计算单元。或者同一台主机上的多个FPGA板卡共同参与计算。不同独立计算单元可在同一时间并行地执行程序。
所述任务(对等任务、主任务和从任务)指的是可独立运行的程序,如操作***上的进程、线程或一段可独立运行的程序代码。主任务控制仿真步长,并通过等待和继续信号控制从任务的执行和等待。
所述高精度时钟源是具较高时间精度和准度、较低时间抖动的数字时钟,可为运行在计算单元上的任务提供计时和定时功能,如X86处理器的TSC时钟和HPET时钟、FPGA的频率时钟等。高精度时钟源的精准度与抖动大小与仿真步长大小相适应。步长越小,时钟源精度越高。操作***一般根据硬件和软件限制有个仿真步长极小值,实际情况中,会根据模型大小和任务需求人工设置仿真步长大小(部分地凭借经验)。一旦选定某固定步长大小,任务将恒定地以该固定步长进行模型地仿真(由高精度时钟和应用程序保证)。人工选择固定仿真步长的标准是:1)大于仿真步长极小值;2)该固定仿真步长内可完成所需的仿真运算。
所述信号(等待信号和继续信号)是任务之间共享的存储变量,如易失的(volatile)共享内存变量等。
主任务和从任务通过“读者-写者”模式实现无锁同步,主任务和从任务在某一时刻对任意信号变量只有存在一个写者,从而保证了对关键数据的无锁访问。
初始化步骤,包括下述子步骤:
初始化主任务Tm等待信号Tm.wait=0和继续信号Tm.continue=1,初始化从任务等待信号Ts.wait=0和继续信号Ts.continue=1;
启动所有对等任务,并在开始时间Ts时刻进入循环同步,执行步骤2;
(2.1)主任务循环同步包括下述步骤:
(2.1.1)主任务等待信号加1,即++Tm.wait;从任务继续信号加1,即++Ts.continue;
(2.1.2)执行主任务内容,即运行主任务中仿真程序代码;
(2.1.3)在第i次循环中,执行休眠函数clock_nanosleep()至时间点Ts+△T*i,即Ts+10i。
(2.1.4)主任务判断是否满足任务的继续执行条件,继续执行条件为如下不等式
Tm.continue>Tm.wait
如果满足继续执行,否则任务超时,进入任务超时同步步骤,超时步骤中持续判断该执行条件是否满足;
(2.1.5)跳转至步骤2.1.1。
(2.2)从任务循环同步包括下述步骤:
(2.2.1)从任务判断是否满足任务继续执行条件,继续执行条件为如下不等式
Ts.continue>Ts.wait
如果满足继续执行,否则任务持续判断该继续执行条件是否满足;
(2.2.2)执行从任务内容,即运行从任务中仿真程序代码;
(2.2.3)从任务等待信号加1,即++Ts.wait,主任务继续信号加1,即++Tm.continue;
(2.2.4)跳转至步骤2.2.1。
其中任务超时同步包括下述步骤:
(3.1)至时间点Ts+i*△T,主任务或从任务判定其自己的等待信号和继续信号的不满足任务继续执行条件,则视为一次超时;
(3.2)一旦超时,任务则忙等轮询等待信号和继续信号的数值,直至任务继续执行条件满足;
其中,任务超时与否并不改变仿真步长和下一次同步时间;无论第i个仿真步长是否超时,第i+1次同步时间点为Ts+(i+1)*△T。
(3)结束步骤,当步骤2执行过程被外部中断后,执行本步骤,销毁任务Ts和任务Tm,并释放等待信号Tm.wait和Ts.wait和继续信号Tm.continue和Ts.continue所占据的存储空间。
本说明书未作详细描述的内容属于本领域专业技术人员公知的现有技术。
Claims (9)
1.一种面向分布式实时仿真任务的无锁同步方法,其特征在于包括以下步骤:
A.主任务和其对应的每个从任务分别组成一对主从任务;主从任务是计算机中具有不同功能角色的进程或线程,独立地运行在一个计算单元中;
B.主任务通过访问操作***提供的高精度时钟源获取精确时间以控制仿真步长,主从任务共享一致的高精度时钟;
C.初始化所有主任务和从任务;
D.启动所有任务,所有主从任务在开始时间进入循环同步,每一对主从任务中的主任务和从任务同步执行;
E.任何主从任务超时,即运行时间超过预期,则主从任务的忙等至超时的任务完成。
2.根据权利要求1所述的面向分布式实时仿真任务的无锁同步方法,其特征在于每个任务都持有等待信号和继续信号;只有任务所持有的等待信号和继续信号满足继续条件时该任务才会继续运行,否则一直等待该继续条件满足;每个任务只修改自己的等待信号和其他任务的继续信号,或者只修改自己的继续信号和其他任务的等待信号。
3.根据权利要求1所述的面向分布式实时仿真任务的无锁同步方法,其特征在于每对主从任务分别执行于不同的独立计算单元,不同的独立计算单元在同一时间并行执行各对主从任务。
4.根据权利要求2所述的面向分布式实时仿真任务的无锁同步方法,其特征在于所述步骤B具体包括以下步骤:
初始化每个任务的等待信号和继续信号,分别为等待信号和继续信号赋以初值。
5.根据权利要求4所述的面向分布式实时仿真任务的无锁同步方法,其特征在于步骤D中,主任务循环同步包括下述步骤:
(1.1)更新主任务的等待信号和所有从任务的继续信号;
(1.2)执行主任务内容;
(1.3)任务等待至时间点Ts+i*△T,等待方式为休眠或持续获取时间判断;其中,Ts为开始时间,i是任务循环次数,△T是仿真步长;
(1.4)主任务通过对本任务的等待信号和继续信号的数值判断是否满足任务继续执行条件,如果满足继续执行,否则任务超时;其中继续执行条件为主任务的继续信号数值大于主任务的等待信号数值;
(1.5)跳转至步骤1.1。
6.根据权利要求5所述的面向分布式实时仿真任务的无锁同步方法,其特征在于所述步骤D中,从任务循环同步包括下述步骤:
(2.1)从任务通过对等待信号和继续信号的数值判断是否满足任务继续执行条件,如果满足继续执行,否则任务持续判断;其中继续执行条件为从任务的继续信号数值大于从任务的等待信号数值;
(2.2)执行从任务内容;
(2.3)更新从任务等待信号和主任务继续信号;
(2.4)跳转至步骤2.1。
7.根据权利要求6所述的面向分布式实时仿真任务的无锁同步方法,其特征在于所述步骤D中,如果从任务循环同步执行过程被外部中断,则销毁所有任务并释放等待信号和继续信号所占据的存储空间,直接退出仿真任务。
8.根据权利要求7所述的面向分布式实时仿真任务的无锁同步方法,其特征在于所述等待信号和继续信号是主任务和从任务之间共享的存储变量;主任务和从任务通过“读者-写者”模式实现无锁同步,主任务和从任务在某一时刻对任意信号变量只有存在一个写者。
9.根据权利要求5所述的面向分布式实时仿真任务的无锁同步方法,其特征在于所述步骤E中,任务超时同步包括下述步骤:
(3.1)至时间点Ts+i*△T,主任务或从任务判定其自己的等待信号和继续信号的不满足任务继续执行条件,则视为一次超时;
(3.2)一旦超时,任务则忙等轮询等待信号和继续信号的数值,直至任务继续执行条件满足;
其中,任务超时与否并不改变仿真步长和下一次同步时间;无论第i个仿真步长是否超时,第i+1次同步时间点为Ts+(i+1)*△T。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011260181.3A CN112379981A (zh) | 2020-11-12 | 2020-11-12 | 面向分布式实时仿真任务的无锁同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011260181.3A CN112379981A (zh) | 2020-11-12 | 2020-11-12 | 面向分布式实时仿真任务的无锁同步方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112379981A true CN112379981A (zh) | 2021-02-19 |
Family
ID=74583054
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011260181.3A Pending CN112379981A (zh) | 2020-11-12 | 2020-11-12 | 面向分布式实时仿真任务的无锁同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112379981A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113746931A (zh) * | 2021-09-10 | 2021-12-03 | 联想(北京)有限公司 | 数据同步方法及装置 |
CN114779878A (zh) * | 2022-04-25 | 2022-07-22 | 南方电网科学研究院有限责任公司 | 一种电力***仿真步长时间的计算***及方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5361277A (en) * | 1988-04-27 | 1994-11-01 | Alberta Telecommunications Research Centre | Method and apparatus for clock distribution and for distributed clock synchronization |
US5448732A (en) * | 1989-10-26 | 1995-09-05 | International Business Machines Corporation | Multiprocessor system and process synchronization method therefor |
CN102257572A (zh) * | 2009-01-12 | 2011-11-23 | 拉姆伯斯公司 | 具有内核时钟同步的均步信号传输*** |
CN102467586A (zh) * | 2010-11-08 | 2012-05-23 | 复旦大学 | 用于集成电路设计的分布式并行最小代价流方法及装置 |
CN106909732A (zh) * | 2017-02-22 | 2017-06-30 | 天津大学 | 一种基于多fpga的有源配电网实时仿真器同步机制设计方法 |
US20180307534A1 (en) * | 2017-04-25 | 2018-10-25 | Red Hat, Inc. | Balancing a recurring task between multiple worker processes |
CN111459626A (zh) * | 2020-03-11 | 2020-07-28 | 完美世界(北京)软件科技发展有限公司 | 一种用于实现不分线无缝游戏世界的方法和装置 |
CN111708296A (zh) * | 2020-06-16 | 2020-09-25 | 山东省计算中心(国家超级计算济南中心) | 一种基于双通道安全plc的同步控制及数据表决方法 |
-
2020
- 2020-11-12 CN CN202011260181.3A patent/CN112379981A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5361277A (en) * | 1988-04-27 | 1994-11-01 | Alberta Telecommunications Research Centre | Method and apparatus for clock distribution and for distributed clock synchronization |
US5448732A (en) * | 1989-10-26 | 1995-09-05 | International Business Machines Corporation | Multiprocessor system and process synchronization method therefor |
CN102257572A (zh) * | 2009-01-12 | 2011-11-23 | 拉姆伯斯公司 | 具有内核时钟同步的均步信号传输*** |
CN102467586A (zh) * | 2010-11-08 | 2012-05-23 | 复旦大学 | 用于集成电路设计的分布式并行最小代价流方法及装置 |
CN106909732A (zh) * | 2017-02-22 | 2017-06-30 | 天津大学 | 一种基于多fpga的有源配电网实时仿真器同步机制设计方法 |
US20180307534A1 (en) * | 2017-04-25 | 2018-10-25 | Red Hat, Inc. | Balancing a recurring task between multiple worker processes |
CN111459626A (zh) * | 2020-03-11 | 2020-07-28 | 完美世界(北京)软件科技发展有限公司 | 一种用于实现不分线无缝游戏世界的方法和装置 |
CN111708296A (zh) * | 2020-06-16 | 2020-09-25 | 山东省计算中心(国家超级计算济南中心) | 一种基于双通道安全plc的同步控制及数据表决方法 |
Non-Patent Citations (3)
Title |
---|
AYESHA SADIQ: "A survey on the use of access permission-based specifications for program verification", JOURNAL OF SYSTEMS AND SOFTWARE, vol. 159, pages 1 - 25 * |
朱小东;吴俊敏;唐轶轩;陈国良;隋秀峰;: "两级同步:面向众核处理器的并行仿真机制", ***仿真学报, no. 12, pages 10 - 17 * |
李靖 等: "实时仿真***信号复用/解复用算法设计", 计算机工程与应用, vol. 54, no. 01, pages 246 - 250 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113746931A (zh) * | 2021-09-10 | 2021-12-03 | 联想(北京)有限公司 | 数据同步方法及装置 |
CN114779878A (zh) * | 2022-04-25 | 2022-07-22 | 南方电网科学研究院有限责任公司 | 一种电力***仿真步长时间的计算***及方法 |
CN114779878B (zh) * | 2022-04-25 | 2023-03-03 | 南方电网科学研究院有限责任公司 | 一种电力***仿真步长时间的计算***及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112379981A (zh) | 面向分布式实时仿真任务的无锁同步方法 | |
CN112199173B (zh) | 双核cpu实时操作***数据处理方法 | |
CN104866374A (zh) | 基于多任务的离散事件并行仿真及时间同步方法 | |
CN103559045A (zh) | 一种硬件实时操作*** | |
US20180335957A1 (en) | Lock-free datapath design for efficient parallel processing storage array implementation | |
US9612863B2 (en) | Hardware device for accelerating the execution of a systemC simulation in a dynamic manner during the simulation | |
EP2672388B1 (en) | Multi-processor parallel simulation method, system and scheduler | |
GB1581597A (en) | Computer system | |
CN103049305A (zh) | 针对龙芯多核cpu模拟的动态代码转换的多线程化方法 | |
CN112948136A (zh) | 一种嵌入式操作***异步日志记录的实现方法 | |
CN115775199B (zh) | 数据处理方法和装置、电子设备和计算机可读存储介质 | |
CN111008042A (zh) | 基于异构流水线的高效通用处理器执行方法及*** | |
CN111258715B (zh) | 多操作***渲染处理方法及装置 | |
KR20220142992A (ko) | 양자 제어 시스템, 양자 제어 프로세서, 및 양자 명령어 세트를 실행하기 위한 방법 | |
US9043507B2 (en) | Information processing system | |
Kluge et al. | Operating systems for manycore processors from the perspective of safety-critical systems | |
WO2017102038A1 (en) | Method and arrangement for utilization of a processing arrangement | |
De Munck et al. | Design and performance evaluation of a conservative parallel discrete event core for GES | |
CN115309555B (zh) | 一种用于卫星的并行计算方法及***、存储介质、设备 | |
Ádám et al. | Proto-cluster: A parallel computer architecture based on prototyping boards | |
TWI812029B (zh) | 用於電源狀態管理之電源序列器 | |
JP2018049406A (ja) | 複数プロセッサ間のタスク連携装置 | |
CN117311953A (zh) | 一种基于Node.js单线程的微服务架构及其论证方法 | |
Zhang et al. | A4-Way CC-NUMA System Based on S2500 | |
US20070225963A1 (en) | Method to Process Instruction Requests for a Digital Hardware Simulator and Instruction Request Broker |
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 |