CN106371898A - 事件队列管理 - Google Patents

事件队列管理 Download PDF

Info

Publication number
CN106371898A
CN106371898A CN201610500373.4A CN201610500373A CN106371898A CN 106371898 A CN106371898 A CN 106371898A CN 201610500373 A CN201610500373 A CN 201610500373A CN 106371898 A CN106371898 A CN 106371898A
Authority
CN
China
Prior art keywords
event
entries
event entries
received
queue
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.)
Granted
Application number
CN201610500373.4A
Other languages
English (en)
Other versions
CN106371898B (zh
Inventor
法布里斯·珍·威尔普兰肯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ARM Ltd
Original Assignee
Advanced Risc Machines Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Advanced Risc Machines Ltd filed Critical Advanced Risc Machines Ltd
Publication of CN106371898A publication Critical patent/CN106371898A/zh
Application granted granted Critical
Publication of CN106371898B publication Critical patent/CN106371898B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本公开涉及事件队列管理。队列存储装置(18)将来自硬件事件检测器(10)的事件条目进行列队,这些事件条目要被通传至软件事件处理器(17)。事件寄存器(20)储存最新接收的事件条目。比较器(22)将新接收的事件条目与事件寄存器的内容进行比较,并且如果发生匹配,这些事件条目则通过设置合并条目比特并且丢弃新接收的事件条目而被合并。当不匹配的事件条目被接收到时,事件寄存器内的未列队的事件被储存到队列存储装置中。如果队列存储装置为空,则事件寄存器和比较器被旁路。当队列存储装置变空时,事件寄存器内的任何当前未列队的事件被储存到队列存储装置中。事件条目可以是系统中在虚拟地址和物理地址之间转换的转换错误事件条目。

Description

事件队列管理
技术领域
本公开涉及数据处理系统的领域。更具体地,本公开涉及具有事件队列的数据处理系统,所述事件队列用于将事件条目列队以便从源传送至目的地。
背景技术
已知提供队列来储存事件条目以便在源和目的地之间传送。这种队列可协助处理源生成事件条目的速率和目的地使用条目的速率的失配。
发明内容
从一个方面看,本公开提供一种用于处理数据的设备,包括:
队列存储装置,该队列存储装置储存事件条目的队列,事件条目对应于从源至目的地的事件通知;
比较器,该比较器将所接收的事件条目与至少一个先前所接收的事件条目进行比较,以检测匹配;和
事件条目合并单元,该事件条目合并单元在当匹配被检测到时,将所接收的事件条目与至少一个先前所接收的事件条目合并。
从另一个方面看,本公开提供一种用于处理数据的设备,包括:
队列装置,该队列装置储存事件条目的队列,事件条目对应于从源至目的地的事件通知;
比较装置,该比较装置将所接收的事件条目与至少一个先前所接收的事件条目进行比较,以检测匹配;和
事件条目合并装置,该事件条目合并装置在当匹配被检测到时,将所接收的事件条目与至少一个先前所接收的事件条目合并。
从另一个方面看,本公开提供一种用于处理数据的方法,包括:
储存事件条目的队列,事件条目对应于从源至目的地的事件通知;
将所接收的事件条目与至少一个先前所接收的事件条目进行比较,以检测匹配;和
当匹配被检测到时,将所接收的事件条目与至少一个先前所接收的事件条目合并。
本公开的上述及其他目的、特点和优点将通过结合附图来阅读的下列对说明性实施例的详细的描述而显而易见。
附图说明
图1示意性地示出了包括事件条目的源和这些事件条目的目的地的数据处理系统;
图2示意性地示出了事件条目队列;
图3是示意性地示出了当事件条目被接收到时对图2中的事件条目队列进行操作的流程图;
图4是示意性地示出了当队列存储装置变空时对队列进行操作的流程图;
图5示意性地示出了本公开可应用的多个不同类型的实施例。
具体实施方式
图1示意性地示出了数据处理系统2,该数据处理系统2包括第一通用处理器(P0)4、第二通用处理器(P1)6、图形处理单元8、系统存储器管理单元10和共享存储器12,所有这些部件之间通过互连14相连。系统存储器管理单元10控制在虚拟地址和物理地址之间的地址转换(以及控制访问控制参数),所述虚拟地址由图形处理单元8和通用处理器4、6之一生成,并且所述物理地址用于寻址共享存储器12。系统存储器管理单元10利用从共享存储器12中存储的页表数据16中读出的转换数据存储器。转换数据可通过由操作系统软件17执行的页表查找操作(page table walking operation)从页表数据16中被读出,所述操作系统软件17由通用处理器4运行。当存储器访问被生成时(对于该存储器访问,系统存储器管理单元10不包含执行虚拟地址到物理地址转换所需要的转换数据),系统存储器管理单元10生成事件条目(转换数据错误事件),该事件条目被储存在共享存储器12所保存的事件队列18中。因此,系统存储器管理单元10为事件条目的源。这些事件条目被通传至通用处理器4,并且特别地,通传至操作系统软件17,操作系统软件17遍历页表数据16控制/执行适当的页表查找,以代表系统存储器管理单元10恢复适当的转换数据。所恢复的转换数据于是被储存在存储器管理单元10内,或被储存在数据处理系统2内的其他地方,在此处所恢复的转换数据被用于执行所期望的转换。操作系统软件17是来自事件队列18的事件条目的通传目的地。
在此示例硬件中,事件条目由作为硬件事件检测器的系统存储器管理单元10生成。操作系统17利用(consume)事件条目并且作为软件事件处理器。在本示例实施例中,事件条目包括上述转换错误事件,所述转换错误事件指示发生了地址转换错误。其他形式的事件也可以由系统存储器管理单元10生成,并且被储存在事件队列18内以供操作系统软件17进行处理。在转换错误事件条目的情况下,该转换错误事件条目可包括错误地址数据,错误地址数据指示与地址转换错误相对应的尝试访问的地址。相应地,错误地址数据可指示虚拟地址存储器空间内的页,系统存储器管理单元10当前未保存有针对此页的转换数据,并且此页需要从页表数据16恢复。与操作系统软件17利用来自事件队列18的转换错误事件条目并执行相关联的页表查找以解析这些转换错误事件条目所需的时间相比,系统存储器管理单元10由于是硬件实体,所以其可能在短时段内生成相对大量的转换错误事件条目。特别地,如下正是这种情况:随着数据处理系统2执行的处理的进行,系统存储器管理单元10可开始访问虚拟存储器地址空间中先前未被访问的区域,并且在短时段内多次执行对虚拟存储器地址空间的此新区域的访问,这将引起转换错误事件条目的突发生成,所生成的转换错误事件条目在它们可被操作系统软件17处理之前需要排队。在这些突发的转换错误事件条目中可混有一种或多种不同的事件条目,此不同的事件条目不应丢失并且相应地需要被保存在事件队列18内。相应地,事件队列18需被设置为具有足够的容量以储存所接收的事件条目,而不引起可能导致数据处理系统2的处理进程暂停的溢流。如果事件队列18发生溢流,则在一些实施例中需停止数据处理系统2的操作,以便重要事件条目不会被丢失。在一些实施例中,溢流也可被容忍,而处理进程继续。
不希望事件队列18发生溢流可能引发提供高容量事件队列18的要求。不利地,高容量的事件队列会占用共享存储器12内的大量空间。此外,从事件队列18中读取和向事件队列18写入大量的事件条目可能会导致潜在不利的能量消耗。事件队列18用作先进先出(FIFO)存储器,并且例如可被实现为通用共享存储器12内的环形缓冲区(ring buffer)。这种环形缓冲区在共享存储器12内具有限定的区域,并且在共享存储器12的被留出用于形成环形缓冲区的该限定的区域内利用了自动换行(wrap)的读指针和写指针。其他形式的缓冲区也可用来提供队列存储装置。
图2示意性地示出了以可在图1的系统中利用的一定形式的事件队列的示例。具体地,该事件队列用于在硬件事件检测器(源)和软件事件处理器(目的地)之间通传事件条目,所述硬件事件检测器的形式为系统存储器管理单元10,所述软件事件处理器的形式为操作系统软件17。在本示例性的实施例中,队列存储装置18被提供,并且该队列存储装置18的形式为保存在共享存储器12内的环形缓冲区。环形缓冲区被控制以用作先进先出(FIFO)存储器,事件条目按照它们从硬件事件检测器接收的顺序被储存在该环形缓冲区中。事件条目按照它们被接收的顺序由软件事件处理器从队列存储装置18中被读取。
在队列存储装置18的输入端处提供了一种用于合并所接收的事件条目的机制,所述机制使得能够更充分地利用队列存储装置18的储存资源。所接收的事件条目被供应给事件寄存器20、比较器22和旁路复用器24的一个输入端。如果队列存储装置18为空(即,当前储存少于一个事件条目),则事件寄存器管理器26会切换旁路复用器24,使得所接收的事件条目直接传送进入队列存储装置18中。这会使得新接收的事件条目与它们在到达队列存储装置18之前经受额外的处理或延迟相比能够更快速地变得可被操作系统软件17读取。如果队列存储装置18不为空,则旁路复用器24被事件寄存器管理器26切换为从事件寄存器20接收其输入。事件寄存器20用于储存未列队的事件,所述未列队的事件在被储存到队列存储装置18之前暂时保存在事件寄存器20中。如果事件寄存器20当前为空,则所接收的事件条目在事件寄存器管理器26的控制下直接被储存到事件寄存器20中。如果事件寄存器20已经储存了未列队的事件且新的事件条目被接收到,则比较器22会将所接收的事件条目与未列队的事件条目进行比较。如果它们匹配,则这会被指示给事件合并单元28。所接收的事件条目与未列队的事件是否匹配可通过多种不同的方式来判断,这取决于这些条目的性质。如果这些条目是关于转换错误的条目,则如果所接收的转换错误事件的错误地址数据对应于转换数据中要响应于储存在事件寄存器20内的未列队的转换错误事件而恢复的同一页,则可识别出匹配。因此,如果针对存储器中的同一页(系统内容管理单元10尚未保存该页的地址转换数据)发生突发的虚拟地址访问,则这些多个转换表数据缺失可通过比较器22被识别为匹配,并且有关的转换错误事件可通过事件合并单元28被合并。在实践中,事件合并单元28可通过如下方式将事件进行合并:丢弃(discard)所接收的与事件寄存器20内已保存的未列队的事件20匹配的第二个和随后的事件条目,并且在该事件条目内设置合并条目比特(ME比特)以指示其正代表多个这种匹配的事件条目。合并的状态在随后的诊断处理中可能是有用的,因为其指示发生了突发的转换错误。
如果比较器22并未指示所接收的事件条目和未列队的事件匹配,则来自事件寄存器20的未列队的事件被储存到队列存储装置18中,并且所接收的事件条目被储存到事件寄存器20中。这些动作由事件寄存器管理器26控制。
当储存在队列存储装置18内的事件条目的数量低于事件条目的阈值数时,事件寄存器管理器26也可用于将来自事件寄存器20的未列队的事件储存到队列存储装置18中。例如,如果所述阈值数为1,则当队列存储装置18变空时,储存在事件寄存器20内的未列队的事件将在事件寄存器管理器26的控制下被储存到队列存储装置18中,从而它们变得可被操作系统软件17读取。在一些实施例中,阈值数可大于1。
比较器22、事件寄存器20、事件寄存器管理器26和事件合并单元28的动作是将所接收的事件条目与来自硬件事件检测器的事件条目序列内的紧前面的(immediatelypreceding)事件条目进行比较。所述紧前面的事件条目被储存在事件寄存器20内(假设队列存储装置18不为空,且事件寄存器20没有被旁路)。因此,比较器22能在所接收的事件条目和单个未列队的事件条目之间执行相对受限的比较。如果发生匹配,事件合并单元28则在这些事件被添加到队列存储装置18中之前将这些事件进行合并。这样,突发的未被打断的匹配的事件条目在他们到达队列存储装置18之前被合并,因此节省了在队列存储装置18内的储存容量。此外,由于避免了不必要的对队列存储装置18的读取和写入,能量也节约了。在实践中,突发的匹配事件条目在如图1示出的数据处理系统的现实操作中是相对普遍的。因此,识别匹配的条目并生成合并的条目所需的额外硬件是由做出的资源和能量节约衡量的。
在其他的实施例中,所接收的事件条目可与多个先前所接收的事件条目进行比较,例如系统可包括多个事件源(CPU、GPU等),并且能够合并的条目可以一种交错的方式被接收,但可通过与几个先前所接收的条目进行比较被识别出来。
图3是示意性地示出了当出现新接收的事件条目时的处理进程的流程图。在步骤30处,处理进程等待,直到出现新接收的事件条目。接着,步骤32判断队列存储装置18当前是否为空。如果队列存储装置18当前为空,步骤32则控制旁路复用器在步骤34处将事件寄存器旁路,并且步骤36将所接收的事件条目储存到队列存储装置18中,之后处理进程回到步骤30。
如果队列存储装置不为空,则步骤38判断事件寄存器20是否为空。如果事件寄存器20当前为空,处理进程则继续进行步骤40,在此处所接收的事件条目被储存到事件寄存器中,并且处理进程再次回到步骤30。如果事件寄存器20不为空,步骤40则对所接收的事件条目与列队的事件条目进行比较。正如之前所讨论的,所述比较可以以多种不同的方式进行,这取决于正被合并的条目的性质。在转换错误事件条目的情况下,可基于这些条目是否与访问页表数据的同一页的要求有关来进行比较,以解决转换错误。其他形式的条目也可识别为匹配,例如,报告了不同于地址转换错误类型的相同故障的条目。步骤42判断步骤40的比较是否指示匹配。如果不匹配,步骤44则用于将在事件寄存器20中的未列队的事件条目储存到队列存储装置18中,并且处理进程继续进行步骤40,在此处所接收的事件条目被储存到事件寄存器20中。如果匹配,步骤46则用于在事件寄存器20内储存的未列队的事件条目中设置合并条目比特(ME比特)。如果未列队的事件条目已经代表了合并条目,则该合并条目比特可能已被设置。接着,步骤48丢弃所接收的事件条目且处理进程返回步骤30。
图4是示意性地示出了当队列存储装置18变空时的处理进程的流程图。在步骤50处,处理进程等待,直到队列存储装置被检测为已变空。当队列存储装置18被检测为已变空时,步骤52判断事件寄存器当前是否为空。如果事件寄存器20当前为空,处理进程返回到步骤50。如果事件寄存器20不为空,步骤54则将当前保存在事件寄存器20内的未列队的事件条目储存到队列存储装置18中,之后处理进程再次返回到步骤50。
上述实施例使用硬件事件检测器作为事件条目的硬件源,且软件事件处理器17(操作系统软件)作为针对事件条目的软件目的地。应当理解的是,也可使用其他形式的事件源和事件目的地,在事件源和事件目的地之间使用队列存储装置。本技术可作为一种增强队列存储装置18的操作的方式被使用在这些不同的实施例中。特别地,事件条目的源可为硬件源或软件源。此外,事件条目的目的地可为硬件目的地或软件目的地。图5中示出了这些可能性。图2中示出的示例实施例使用基于硬件的队列管理电路,如事件寄存器管理器26、事件合并单元28、比较器22、事件寄存器20和旁路复用器24。应当理解的是,在其他示例实施例中,一个或更多的这些元件可由在诸如通用处理器4、6的通用处理器中运行的软件提供。这样的其他示例实施例包含在本公开中。
上述示例实施例是关于地址转换错误的合并。本技术可更广泛地被应用到很多其他示例实施例中。在一些示例实施例中,单个源可产生要被通传至目的地的类似的事件,例如地址转换逻辑。合并机制被揭露给由上游主控装置要求的任何转换,并且由于主控装置是由简单的顺序结构实现(即,当该主控装置开始处理第N+1个事务时,其不会记得任何关于第N个事务的事情)的,它可停止生成突发的类似“转换故障”事件。
在其他的示例实施例中,多个源可产生要被通传至目的地的类似的事件,例如在网络系统中的低级别管理功能。这种例子包括多端口交换机或路由器,其中每个端口可期望通过单个队列将某些事件类型的事件用信号通传至中心的并由软件驱动的主板/系统管理控制器(“BMC”),所述多端口例如支持网络唤醒(Wake-on-LAN)特征的网络端口,藉由该特征端口接口被从链路中所接收的所谓的“魔术包(magic packet)”唤醒。实际的唤醒功能可通过硬件来实现,但每个端口也可期望通知BMC,BMC进而可照顾到一些中心式的资源(例如,如果所有端口处于休眠状态,则将一些中心式的DRAM从休眠中唤醒)。如果“魔术包”同时被几个端口接收,相同类型的事件则会被发送至BMC队列,并且它们可通过使用本公开的技术被合并,这是因为它们的效果是相同的。其他示例包括工业自动化领域以及其中多个源通过基于队列的接口向单个目的地发送类似的事件的系统。
虽然说明性的实施例已经参照附图在此进行了详细地描述,但是应当理解的是权利要求并不限制于这些确切的实施例,并且在不脱离本发明权利要求的范围和精神的情况下,本领域普通技术人员给能够预想到多种改变、添加和改动。例如,独立权利要求的特征可与从属权利要求的特征做出多种组合。

Claims (20)

1.一种用于处理数据的设备,包括:
队列存储装置,该队列存储装置储存事件条目的队列,所述事件条目对应于从源至目的地的事件通知;
比较器,该比较器将所接收的事件条目与至少一个先前所接收的事件条目进行比较,以检测匹配;和
事件条目合并单元,该事件条目合并单元在当所述匹配被检测到时将所述所接收的事件条目与所述至少一个先前所接收的事件条目合并。
2.根据权利要求1所述的设备,其中
所述比较器将所述所接收的事件条目与紧前面所接收的事件条目进行比较。
3.根据权利要求2所述的设备,包括:
事件寄存器,该事件寄存器储存未列队的事件条目,所述未列队的事件条目尚未被添加到储存在所述队列存储装置中的所述队列中。
4.根据权利要求3所述的设备,其中
所述比较器将所述所接收的事件条目与储存在所述事件寄存器中的所述未列队的事件条目进行比较。
5.根据权利要求4所述的设备,包括:
事件寄存器管理器,该事件寄存器管理器将储存在所述事件寄存器中的所述未列队的事件条目添加到储存在所述队列存储装置中的所述队列中,并且当所述匹配未被检测到时,将所述所接收的事件条目作为新的未列队的事件条目储存到所述事件寄存器中。
6.根据权利要求4所述的设备,包括:
事件寄存器管理器,该事件寄存器管理器在当所述匹配被检测到时丢弃所述所接收的事件条目。
7.根据权利要求4所述的设备,包括:
事件寄存器管理器,该事件寄存器管理器在当所述匹配被检测到时将所述未列队的事件条目标记为合并的未列队的事件条目。
8.根据权利要求3所述的设备,包括:
事件寄存器管理器,该事件寄存器管理器在当储存在所述队列存储装置中的所述队列包括比阈值数少的事件条目时,将所述未列队的事件条目添加到储存在所述队列存储装置中的所述队列中。
9.根据权利要求8所述的设备,其中
所述阈值数为1。
10.根据权利要求1所述的设备,其中
所述事件条目的队列是一种通信队列,用于从所述源向所述目的地通传事件的发生。
11.根据权利要求1所述的设备,其中
所述源为硬件事件检测器。
12.根据权利要求1所述的设备,其中
所述目的地为软件事件处理器。
13.根据权利要求1所述的设备,其中
所述事件条目包括转换错误事件条目,所述转换错误事件条目指示发生了地址转换错误。
14.根据权利要求13所述的设备,其中
所述地址转换错误对应于转换表数据缺失,所述转换错误事件条目触发所述目的地执行页表查找,以找到在页表数据内与所述转换表数据缺失相对应的转换数据的页。
15.根据权利要求14所述的设备,其中
所述转换错误事件条目包括地址数据,该地址数据指示对应于所述地址转换错误的尝试访问的地址。
16.根据权利要求15所述的设备,其中
所述比较器比较所接收的转换错误事件条目的错误地址数据,以检测所述所接收的转换错误事件条目何时对应于所述页表数据内的同一转换数据的页。
17.根据权利要求16所述的设备,其中
所述事件条目合并单元将所接收的具有匹配的错误地址数据的转换错误事件条目进行合并。
18.根据权利要求17所述的设备,其中
所述比较器比较所述错误地址数据中标识所述页表数据内的相应的页表条目的那部分。
19.一种用于处理数据的设备,包括:
队列装置,该队列装置用于储存事件条目的队列,所述事件条目对应于从源至目的地的事件通知;
比较装置,该比较装置用于将所接收的事件条目与至少一个先前所接收的事件条目进行比较,以检测匹配;和
事件条目合并装置,该事件条目合并装置在当所述匹配被检测到时,将所述所接收的事件条目与所述至少一个先前所接收的事件条目合并。
20.一种用于处理数据的方法,包括:
储存事件条目的队列,所述事件条目对应于从源至目的地的事件通知;
将所接收的事件条目与至少一个先前所接收的事件条目进行比较,以检测匹配;和
当所述匹配被检测到时,将所述所接收的事件条目与所述至少一个先前所接收的事件条目合并。
CN201610500373.4A 2015-07-23 2016-06-29 事件队列管理 Active CN106371898B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/807,062 2015-07-23
US14/807,062 US9626232B2 (en) 2015-07-23 2015-07-23 Event queue management

Publications (2)

Publication Number Publication Date
CN106371898A true CN106371898A (zh) 2017-02-01
CN106371898B CN106371898B (zh) 2022-04-01

Family

ID=56895046

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610500373.4A Active CN106371898B (zh) 2015-07-23 2016-06-29 事件队列管理

Country Status (3)

Country Link
US (1) US9626232B2 (zh)
CN (1) CN106371898B (zh)
GB (1) GB2541974B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109388503A (zh) * 2018-09-20 2019-02-26 阿里巴巴集团控股有限公司 一种事件处理方法及装置
CN111160558A (zh) * 2019-12-13 2020-05-15 合肥本源量子计算科技有限责任公司 量子芯片控制器、量子计算处理系统和电子设备

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10404676B2 (en) * 2016-03-29 2019-09-03 Intel Corporation Method and apparatus to coordinate and authenticate requests for data
US10929944B2 (en) * 2016-11-23 2021-02-23 Advanced Micro Devices, Inc. Low power and low latency GPU coprocessor for persistent computing
US10728088B1 (en) 2017-12-15 2020-07-28 Worldpay, Llc Systems and methods for real-time processing and transmitting of high-priority notifications
CN113748648A (zh) 2019-05-23 2021-12-03 慧与发展有限责任合伙企业 权重路由

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1967506A (zh) * 2005-09-19 2007-05-23 威盛电子股份有限公司 高速缓存存储器处理器中的合并入口
CN101075987A (zh) * 2007-06-27 2007-11-21 华为技术有限公司 一种传送消息的装置和方法
CN101189590A (zh) * 2005-03-29 2008-05-28 国际商业机器公司 使用流寄存器过滤监听请求的方法和装置
CN102087615A (zh) * 2009-12-03 2011-06-08 国际商业机器公司 消息队列中逻辑关联的消息的自动合并
US20120017063A1 (en) * 2010-07-16 2012-01-19 Hummel Mark D Mechanism to handle peripheral page faults
US20120066694A1 (en) * 2010-09-10 2012-03-15 International Business Machines Corporation Event overflow handling by coalescing and updating previously-queued event notification
US20130124220A1 (en) * 2011-10-31 2013-05-16 Hospital Housekeeping Systems, LLC. Managing services with assignment settings
CN104737138A (zh) * 2012-10-08 2015-06-24 国际商业机器公司 用半虚拟化的管理程序提供全虚拟化的附属部件

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6721315B1 (en) * 1999-09-30 2004-04-13 Alcatel Control architecture in optical burst-switched networks
US6629271B1 (en) * 1999-12-28 2003-09-30 Intel Corporation Technique for synchronizing faults in a processor having a replay system
US6754852B2 (en) * 2000-03-02 2004-06-22 Texas Instruments Incorporated Debug trigger builder
US6851008B2 (en) * 2002-03-06 2005-02-01 Broadcom Corporation Adaptive flow control method and apparatus
CA2416357A1 (en) 2003-01-14 2004-07-14 Cognos Incorporated Message suppression in an event management system
US7730012B2 (en) * 2004-06-25 2010-06-01 Apple Inc. Methods and systems for managing data
JP4771431B2 (ja) 2007-09-20 2011-09-14 Kddi株式会社 オペレーティングシステムに基づくイベント処理機能搭載装置及びプログラム
US7992052B2 (en) * 2009-02-19 2011-08-02 Freescale Semiconductor, Inc. Program correlation message generation for debug
US20100250651A1 (en) 2009-03-31 2010-09-30 Inventec Corporation Data access method for making asynchronous request to block device
US20150295841A1 (en) * 2014-04-14 2015-10-15 Qualcomm Incorporated Efficient packet aggregation using dynamic wait time

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101189590A (zh) * 2005-03-29 2008-05-28 国际商业机器公司 使用流寄存器过滤监听请求的方法和装置
CN1967506A (zh) * 2005-09-19 2007-05-23 威盛电子股份有限公司 高速缓存存储器处理器中的合并入口
CN101075987A (zh) * 2007-06-27 2007-11-21 华为技术有限公司 一种传送消息的装置和方法
CN102087615A (zh) * 2009-12-03 2011-06-08 国际商业机器公司 消息队列中逻辑关联的消息的自动合并
US20120167116A1 (en) * 2009-12-03 2012-06-28 International Business Machines Corporation Automated merger of logically associated messgages in a message queue
US20120017063A1 (en) * 2010-07-16 2012-01-19 Hummel Mark D Mechanism to handle peripheral page faults
US20120066694A1 (en) * 2010-09-10 2012-03-15 International Business Machines Corporation Event overflow handling by coalescing and updating previously-queued event notification
US20130124220A1 (en) * 2011-10-31 2013-05-16 Hospital Housekeeping Systems, LLC. Managing services with assignment settings
CN104737138A (zh) * 2012-10-08 2015-06-24 国际商业机器公司 用半虚拟化的管理程序提供全虚拟化的附属部件

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
陆平等: "一种分布式复杂消息处理引擎的涉及与实现", 《中兴通信技术》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109388503A (zh) * 2018-09-20 2019-02-26 阿里巴巴集团控股有限公司 一种事件处理方法及装置
CN111160558A (zh) * 2019-12-13 2020-05-15 合肥本源量子计算科技有限责任公司 量子芯片控制器、量子计算处理系统和电子设备

Also Published As

Publication number Publication date
GB201610825D0 (en) 2016-08-03
GB2541974A (en) 2017-03-08
GB2541974B (en) 2018-05-23
US20170024263A1 (en) 2017-01-26
US9626232B2 (en) 2017-04-18
CN106371898B (zh) 2022-04-01

Similar Documents

Publication Publication Date Title
CN106371898A (zh) 事件队列管理
US11989154B2 (en) Hybrid remote direct memory access
US8937949B2 (en) Method and system for Infiniband host channel adapter multicast packet replication mechanism
US20170192901A1 (en) Disjointed virtual memory scheme with block bypass
US10693787B2 (en) Throttling for bandwidth imbalanced data transfers
US20040243739A1 (en) Method and apparatus for local and distributed data memory access ("DMA") control
US8085780B1 (en) Optimized buffer loading for packet header processing
WO2014062265A4 (en) Neural processing engine and architecture using the same
US20070183425A1 (en) Logical separation and accessing of descriptor memories
CN102216898A (zh) 用于存储分配高速缓存缺失的错误恢复的存储缓冲器的利用
US20100333112A1 (en) Method and System for Secure Communication Between Processor Partitions
US20230027534A1 (en) Detecting infinite loops in a programmable atomic transaction
US10146468B2 (en) Addressless merge command with data item identifier
US20230099730A1 (en) System and Method for Implementing Strong Load Ordering in a Processor Using a Circular Ordering Ring
US20200257994A1 (en) Inference processing system, inference processing device, and computer program product
US20170171095A1 (en) Efficient support for variable width data channels in an interconnect network
US9846662B2 (en) Chained CPP command
CN116701248B (zh) 页表管理方法、单元、soc、电子设备及可读存储介质
US9535851B2 (en) Transactional memory that performs a programmable address translation if a DAT bit in a transactional memory write command is set
US11614942B2 (en) Reuse in-flight register data in a processor
US11526361B2 (en) Variable pipeline length in a barrel-multithreaded processor
US9129661B2 (en) Single port memory that emulates dual port memory
US20180088904A1 (en) Dedicated fifos in a multiprocessor system
US11606317B1 (en) Table based multi-function virtualization
US20170357594A1 (en) Transactional memory that is programmable to output an alert if a predetermined memory write occurs

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant