CN103942165B - 基于多处理器的数据处理方法、系统和io适配器 - Google Patents
基于多处理器的数据处理方法、系统和io适配器 Download PDFInfo
- Publication number
- CN103942165B CN103942165B CN201410088734.XA CN201410088734A CN103942165B CN 103942165 B CN103942165 B CN 103942165B CN 201410088734 A CN201410088734 A CN 201410088734A CN 103942165 B CN103942165 B CN 103942165B
- Authority
- CN
- China
- Prior art keywords
- queue
- pointer
- unit
- interrupt vector
- mentioned
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 17
- 239000013598 vector Substances 0.000 claims abstract description 78
- 238000000034 method Methods 0.000 claims abstract description 51
- 108010001267 Protein Subunits Proteins 0.000 claims description 4
- 230000008014 freezing Effects 0.000 claims description 2
- 238000007710 freezing Methods 0.000 claims description 2
- 230000004044 response Effects 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000001737 promoting effect Effects 0.000 description 1
- 238000013341 scale-up Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
Landscapes
- Multi Processors (AREA)
- Bus Control (AREA)
Abstract
本发明实施例涉及计算机技术领域,公开了一种基于多处理器系统的数据处理方法、系统和IO适配器。其中,该方法包括:获取IO适配器下的IO设备的数量N;初始化N个所述IO设备的设备信息,创建N个IO设备的指针;为每个IO设备初始化一个队列,并建立每个IO设备的队列和相应指针的第一对应关系;为每个队列申请一个中断向量,并建立每个中断向量和相应队列的第二对应关系;处理器接收IO设备发送的中断向量,根据第一对应关系和第二对应关系查找到与所述IO设备发送的中断向量对应的IO设备的队列和/或指针,与对应的IO设备进行数据交换。实施本发明实施例,可以提高多路系统的IO处理性能。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种基于多处理器系统的数据处理方法、系统和IO适配器。
背景技术
目前的服务器系统一般都采用了多核处理器,在当前的多核处理系统下,多个业务虽然运行在不同的处理器上,但是所处理的数据可能来自于同一个IO(Input/Output,输入/输出)适配器,这样就有可能造成IO适配器的处理瓶颈。
操作系统可以使用IO适配器下的IO设备,需要在IO适配器驱动实现。在IO适配器驱动实现的过程中,会实现一个队列(Queue),所有的IO请求和响应都会从这个队列中进出。操作系统响应IO请求和响应的方式有两种:轮询(polling)和中断(interrupt)。
轮询模式让内核定期的检查每个队列的状态,判断是否有IO请求或者响应,并做响应处理;中断模式则是让硬件在发生IO请求或响应的时候向内核发出信号。因为轮询总会周期性的重复执行,大量地耗用CPU时间,因此效率及其低下,多数系统都采用中断模式,例如现在的Linux系统使用的就是中断模式。
在现有技术的方案中,每一个IO适配器在驱动初始化时只生成一个IO队列(QUEUE),也即只向系统申请了一个中断向量,这种情况下,每一时刻只有一个CPU能处理适配器产生的IO请求。在NUMA(Non Uniform Memory Access Achitecture,非统一内存访问)系统下,由于不同的处理器访问不同内存的距离不同,开销也不相同。如果处理中断的CPU和处理业务进程的CPU不是同一个CPU,可能影响业务性能。随着scale up(向上扩展)服务器的持续发展,16路甚至32路的服务器也即将到来,此时中断和进程不在同一个CPU上的问题会大大降低系统IO性能,这种IO的瓶颈也将越来越明显。
综上所述,现有技术中的这种方案的缺点是:当适配器下挂载多个存储设备,并由不同的业务进程进行处理时,如果中断处理固定在一个CPU上,根据抽屉原理,总是会出现处理中断的CPU和处理业务进程的CPU不会是同一个CPU的情况,此时处理业务进程的CPU,不能够直接从IO设备读取数据,而是通过处理中断的CPU间接的读取数据,造成IO处理性能低下;而如果中断向量随着业务进程的不同而随时切换,又会造成大量的系统切换开销,同样会影响到处理性能。
发明内容
本发明实施例所要解决的技术问题是提供一种基于多处理器的数据处理方法、系统和IO适配器,用于提升多路系统的IO处理性能。
本发明实施例提供一种基于多处理器的数据处理方法,包括:
获取输入/输出IO适配器下的IO设备的数量N,N为大于或等于2的自然数;
初始化N个所述IO设备的设备信息,创建N个所述IO设备的指针,每个所述IO设备的指针与其设备信息相关联;
为每个所述IO设备初始化一个队列,并建立每个IO设备的队列和相应指针的第一对应关系;
为每个IO设备的队列申请一个中断向量,并建立每个中断向量和相应队列的第二对应关系;
处理器接收IO设备发送的中断向量,根据所述第一对应关系和所述第二对应关系查找到与所述IO设备发送的中断向量对应的IO设备的队列和/或指针,与对应的IO设备进行数据交换。
相应的,本发明实施例还提供一种基于多处理器的数据处理系统,所述系统包括:
第一获取单元,用于获取输入/输出IO适配器下的IO设备的数量N,N为大于或等于2的自然数;
第一初始化单元,用于初始化N个所述IO设备的设备信息,创建N个所述IO设备的指针,每个所述IO设备的指针与其设备信息相关联;
第二初始化单元,为每个所述IO设备初始化一个队列,并建立每个IO设备的队列和相应指针的第一对应关系;
第一申请单元,用于为每个IO设备的队列申请一个中断向量,并建立每个中断向量和相应队列的第二对应关系;
数据交换单元,用于使处理器接收IO设备发送的中断向量,根据所述第一对应关系和所述第二对应关系查找到与所述IO设备发送的中断向量对应的IO设备的队列和/或指针,与对应的IO设备进行数据交换。
相应的,本发明实施例还提供一种IO适配器,所述IO适配器下有多个IO设备,所述IO适配器包括如前所述的基于多处理器系统的数据处理系统。
从本发明提供的以上方案可以看出,本发明实施例中IO适配器在驱动初始化时,为每个IO设备均生成一个队列,为每个队列向系统申请一个中断向量,并添加IO设备指针、队列和中断向量的对应关系,这样处理器在需要和IO设备交换数据时,可以通过与IO设备对应的中断向量查找到该IO设备的队列和/或指针,从而与IO设备进行直接的数据交换,避免中断向量的调度,相比现有技术的方案,可以避免出现因中断向量被占用导致的IO处理性能低下的问题,减小IO适配器挂载多个IO设备情况下IO中断向量调度的消耗,显著提升IO处理性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的基于多处理器系统的数据处理方法的流程第一示意图;
图2是本发明实施例一提供的基于多处理器系统的数据处理方法的流程第二示意图;
图3是本发明实施例一提供的基于多处理器系统的数据处理方法的流程第三示意图;
图4是本发明实施例一提供的基于多处理器系统的数据处理方法的流程第四示意图;
图5是本发明实施例一提供的基于多处理器系统的数据处理方法的流程第五示意图;
图6是本发明实施例二提供的基于多处理器系统的数据处理系统的结构第一示意图;
图7是本发明实施例二提供的基于多处理器系统的数据处理系统的结构第二示意图;
图8是本发明实施例二提供的基于多处理器系统的数据处理系统的结构第三示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中提供了一种基于多处理器系统的数据处理方法、系统和IO适配器,以下分别进行详细说明。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
请参阅图1,图1是本发明实施例提供的一种基于多处理器系统的数据处理方法的流程示意图,该方法可以适用于多处理器系统,需要说明的是,本实施例中多处理器系统可以包括:多核处理器,或者多个单核处理器,或者多个多核处理器,或者若干个单核处理器和若干个多核处理器的组合。如图1所示,该方法可以包括:
101、获取IO适配器下的IO设备的数量N;N为大于或等于2的自然数;
102、初始化N个上述IO设备的设备信息,创建N个上述IO设备的指针;其中,每个上述IO设备的指针均与其设备信息相关联;
举例来说,可将N个上述IO设备的指针加入设备池;
举例来说,IO设备的设备信息可包括设备描述符、设备类型等信息;
103、为每个上述IO设备初始化一个队列,并建立每个IO设备的队列和相应指针的第一对应关系;
举例来说,可以是将N个上述IO设备的队列加入队列池,建立上述队列池中每个IO设备的队列和上述设备池中相应指针的第一对应关系;
优选地,IO设备的队列和指针可以是一一对应的;
104、为每个IO设备的队列申请一个中断向量,并建立每个中断向量和相应队列的第二对应关系;
举例来说,可以是将所有中断向量加入中断向量池中,建立上述中断向量池中每个中断向量和上述队列池中相应队列的第二对应关系;
优选地,中断向量和队列可以是一一对应的;
105、处理器接收IO设备发送的中断向量,根据上述第一对应关系和上述第二对应关系查找到与上述IO设备发送的中断向量对应的IO设备的队列和/或指针,与对应的IO设备进行数据交换;
本实施例中,上述105中的处理器可以指一个单核处理器或者多核处理器中的一个处理核心;
举例来说,本实施例中当处理器需要读取某IO设备中的数据时,可以向该IO设备发送IO请求,IO设备可将处理器请求的数据存放在与该IO设备对应的队列中,并向处理器发送与该队列对应的中断向量,处理器接收该中断向量后可根据中断向量和队列的第二对应关系,查找到对应的队列,并读取对应的队列中存放的数据,从而实现与IO设备的数据交换。
可以看出,在本实施例提供的上述方法中,如果IO适配器下挂载多个IO设备,IO适配器在驱动初始化时,为每个IO设备均生成一个队列,为每个队列向系统申请一个中断向量,并添加IO设备的指针、队列和中断向量的对应关系。本实施例中由于存在多个中断向量,多处理器系统同时对多个中断向量进行处理:例如处理器1占用了一个中断向量,和一个IO设备进行数据交换,如果另外一个处理器2需要和另一个IO设备进行数据交换,在现有技术中处理器2只能通过处理器1间接的访问IO设备,或者把中断向量切换到处理器2以使处理器2访问IO设备,但在本实施例中,处理器2可以利用与IO设备对应的另一个中断向量来和IO设备进行直接的数据交换,也不需要进行中断向量的切换。因此相比现有技术的方案,本实施例提供的上述数据处理方法可以减小IO适配器挂载多个IO设备情况下IO中断向量调度的消耗,显著提升IO处理性能,测试结果表明,在4路系统下IO处理性能可提升13%以上,在8路或16路系统中,IO处理性能提升效果更加显著。
可选地,本发明实施例提供的方法可支持IO设备的热添加,具体的热添加设备的方法可参考图2。如图2所示,上述方法还可以包括:
201、获取需要添加的第一IO设备的设备信息;
需要说明的是,第一IO设备是一个泛指,可以指代任意一个需要添加的IO设备;
举例来说,IO设备的设备信息可包括设备描述符、设备类型等信息;
202、初始化上述第一IO设备的设备信息,创建上述第一IO设备的指针;第一IO设备的指针可以和其设备信息相关联;
举例来说,可以将上述第一IO设备的指针加入设备池;
203、为上述第一IO设备初始化第一队列,并建立上述第一队列和上述第一IO设备的指针的对应关系;
举例来说,可以是将上述第一队列加入上述队列池,并建立上述第一队列和上述设备池中第一IO设备的指针的对应关系;
204、为上述第一队列申请第一中断向量,并建立上述第一中断向量和上述第一队列的对应关系;
举例来说,可以是将上述第一中断向量加入上述中断向量池,并建立上述第一中断向量和上述队列池中第一队列的对应关系。
可选地,本发明实施例提供的方法还可支持IO设备的热移除,具体的热移除设备的方法可参考图3。如图3所示,上述方法还可以包括:
301、获取需要移除的第二IO设备的设备信息;
需要说明的是,第二IO设备是一个泛指,可以指代任意一个需要移除的IO设备;
在301中,获取到的第二IO设备的设备信息至少包括设备描述符,当然还可以包括设备类型等信息;
302、根据上述第二IO设备的设备信息找到第二IO设备的指针;
举例来说,可以根据第二IO设备的设备描述符,在设备池中查找到第二IO设备的指针;
303、根据上述第一对应关系找到上述第二IO设备的队列;
举例来说,由于各IO设备的指针和其队列具有对应关系,可以根据第二IO设备的指针与对应的队列ID在队列池中查找到该IO设备的队列;
304、根据第二对应关系找到上述第二IO设备的中断向量;
举例来说,可以根据第二IO设备的队列和其中断向量的对应关系,在中断向量池中查找到第二IO设备的中断向量;
305、移除上述第二IO设备的指针;
举例来说,可在上述设备池中移除上述第二IO设备的指针;
306、移除上述第二IO设备的队列;
举例来说,可在上述队列池中移除上述第二IO设备的队列;
307、移除上述第二IO设备的中断向量;
举例来说,可在上述中断向量池中移除上述第二IO设备的中断向量。
需要说明的是,上述步骤可以没有固定的先后顺序,例如305可以在304之前执行或者同时执行,但需要说明的是,应当在移除第二IO设备的指针之前查找到第二IO设备的队列,应当在移除第二IO设备的队列之前查找到第二IO设备的中断向量。
优选地,如图4所示,上述305可以包括:
305A、判断上述第二IO设备的队列是否正在使用,如果是,执行305B,否则执行305D;
305B、冻结上述第二IO设备的队列,不再接受新的请求;
305C、等待上述第二IO设备的队列中当前的所有请求执行完毕后,移除上述第二IO设备的指针;执行306;
305D、移除上述第二IO设备的指针。
优选地,如图5所示,上述306可以包括:
306A、判断上述第二IO设备的队列是否正在使用,如果是,执行306B,否则执行306D;
306B、冻结上述第二IO设备的队列,不再接受新的请求;
306C、等待上述第二IO设备的队列中当前的所有请求执行完毕后,移除上述第二IO设备的队列;执行307;
306D、移除上述第二IO设备的队列。
请参阅图6,图6是本发明实施例提供的一种基于多处理器系统的数据处理系统的结构示意图。如图6所示,该数据处理系统可以包括:
第一获取单元601,用于获取IO适配器下的IO设备的数量N;N为大于或等于2的自然数;
第一初始化单元602,用于初始化N个上述IO设备的设备信息,创建N个上述IO设备的指针;其中,每个上述IO设备的指针均与其设备信息相关联;
第二初始化单元603,用于为每个上述IO设备初始化一个队列,并建立每个IO设备的队列和相应指针的第一对应关系;
第一申请单元604,用于为每个IO设备的队列申请一个中断向量,并建立每个中断向量和相应队列的第二对应关系;
数据交换单元605,用于使处理器接收IO设备发送的中断向量,根据上述第一对应关系和上述第二对应关系查找到与上述IO设备发送的中断向量对应的IO设备的队列和/或指针,与对应的IO设备进行数据交换。
可以看出,在本实施例提供的上述系统中,如果IO适配器下挂载多个IO设备,IO适配器在驱动初始化时,为每个IO设备均生成一个队列,为每个队列向系统申请一个中断向量,并添加IO设备、队列和中断向量的一一对应关系。本实施例中由于存在多个中断向量,多处理器系统同时对多个中断向量进行处理:例如处理器1占用了一个中断向量,和一个IO设备进行数据交换,如果另外一个处理器2需要和另一个IO设备进行数据交换,在现有技术中处理器2只能通过处理器1间接的访问IO设备,或者把中断向量切换到处理器2以使处理器2访问IO设备,但在本实施例中,处理器2可以利用与IO设备对应的另一个中断向量来和IO设备进行直接的数据交换,也不需要进行中断向量的切换。因此相比现有技术的方案,本实施例提供的上述数据处理系统可以减小IO适配器挂载多个IO设备情况下IO中断向量调度的消耗,显著提升IO处理性能,测试结果表明,在4路系统下可提升13%以上,在8路或16路系统中,IO处理性能提升效果更加显著。
可选地,该数据处理系统还可支持IO设备的热添加,如图7所示,该系统还可包括:
第二获取单元701,用于获取需要添加的第一IO设备的设备信息;
第三初始化单元702,用于初始化上述第一IO设备的设备信息,创建上述第一IO设备的指针;
第四初始化单元703,用于为上述第一IO设备初始化第一队列,并建立上述第一队列和上述第一IO设备的指针的对应关系;
第二申请单元704,用于为上述第一队列申请第一中断向量,并建立上述第一中断向量和上述第一队列的对应关系。
可选地,该系统还可支持IO设备的热移除,如图8所示,该系统还可包括:
第三获取单元801,用于获取需要移除的第二IO设备的设备信息;
第一查找单元802,用于根据上述第二IO设备的IO设备信息找到第二IO设备的指针;
第二查找单元803,用于根据上述第一对应关系找到上述第二IO设备的队列;
第三查找单元804,用于根据上述第二对应关系找到上述第二IO设备的中断向量;
第一移除单元805,用于移除上述第二IO设备的指针;
第二移除单元806,用于移除上述第二IO设备的队列;
第三移除单元807,用于移除上述第二IO设备的中断向量。
举例来说,第一移除单元805可包括:
第一判断子单元,用于判断上述第二IO设备的队列是否正在使用;
第一冻结子单元,用于当上述第一判断子单元的判断结果为是时,冻结上述第二IO设备的队列,不再接受新的请求;
第一移除子单元,用于当上述第一判断子单元的判断结果为是时,等待上述第二IO设备的队列中当前的所有请求执行完毕后,移除上述第二IO设备的指针;以及用于当上述第一判断子单元的判断结果为否时,移除上述第二IO设备的指针。
举例来说,第二移除单元806可包括:
第二判断子单元,用于判断上述第二IO设备的队列是否正在使用;
第二冻结子单元,用于冻结上述第二IO设备的队列,不再接受新的请求;
第二移除子单元,用于当上述第二判断子单元的判断结果为是时,等待上述第二IO设备的队列中当前的所有请求执行完毕后,移除上述第二IO设备的队列;以及用于当上述第二判断子单元的判断结果为否时,移除上述第二IO设备的队列。
本发明实施例还提供一种IO适配器,该IO适配器下可挂载多个IO设备,并且该IO适配器可包括如前述实施例所描述的基于多处理器系统的数据处理系统,具体内容可参考前述实施例的描述,在此不再赘述。
需要说明的是,以上各实施例均属于同一发明构思,各实施例的描述各有侧重,在个别实施例中描述未详尽之处,可参考其他实施例中的描述。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random AccessMemory,RAM)、磁盘或光盘等。
以上对本发明实施例所提供的基于多处理器系统的数据处理方法、系统和IO适配器进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上上述,本说明书内容不应理解为对本发明的限制。
Claims (9)
1.一种基于多处理器系统的数据处理方法,其特征在于,所述方法包括:
获取输入/输出IO适配器下的IO设备的数量N,N为大于或等于2的自然数;
初始化N个所述IO设备的设备信息,创建N个所述IO设备的指针,每个IO设备的指针与其设备信息相关联;
为每个所述IO设备初始化一个队列,并建立每个IO设备的队列和相应指针的第一对应关系;
为每个IO设备的队列申请一个中断向量,并建立每个中断向量和相应队列的第二对应关系;
处理器接收IO设备发送的中断向量,根据所述第一对应关系和所述第二对应关系查找到与所述IO设备发送的中断向量对应的IO设备的队列和/或指针,与对应的IO设备进行数据交换。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取需要移除的第二IO设备的设备信息;
根据所述第二IO设备的设备信息找到第二IO设备的指针;
根据所述第一对应关系找到所述第二IO设备的队列;
根据所述第二对应关系找到所述第二IO设备的中断向量;
移除所述第二IO设备的指针;
移除所述第二IO设备的队列;
移除所述第二IO设备的中断向量。
3.根据权利要求2所述的方法,其特征在于,所述移除所述第二IO设备的指针包括:
判断所述第二IO设备的队列是否正在使用,如果是,冻结所述第二IO设备的队列,不再接受新的请求,等待所述第二IO设备的队列中当前的所有请求执行完毕后,移除所述第二IO设备的指针。
4.根据权利要求2或3所述的方法,其特征在于,所述移除所述第二IO设备的队列包括:
判断所述第二IO设备的队列是否正在使用,如果是,冻结所述第二IO设备的队列,不再接受新的请求,等待所述第二IO设备的队列中当前的所有请求执行完毕后,移除所述第二IO设备的队列。
5.一种基于多处理器系统的数据处理系统,其特征在于,所述数据处理系统包括:
第一获取单元,用于获取输入/输出IO适配器下的IO设备的数量N,N为大于或等于2的自然数;
第一初始化单元,用于初始化N个所述IO设备的设备信息,创建N个所述IO设备的指针,每个所述IO设备的指针与其设备信息相关联;
第二初始化单元,为每个所述IO设备初始化一个队列,并建立每个IO设备的队列和相应指针的第一对应关系;
第一申请单元,用于为每个IO设备的队列申请一个中断向量,并建立每个中断向量和相应队列的第二对应关系;
数据交换单元,用于使处理器接收IO设备发送的中断向量,根据所述第一对应关系和所述第二对应关系查找到与所述IO设备发送的中断向量对应的IO设备的队列和/或指针,与对应的IO设备进行数据交换。
6.根据权利要求5所述的系统,其特征在于,所述系统还包括:
第三获取单元,用于获取需要移除的第二IO设备的设备信息;
第一查找单元,用于根据所述第二IO设备的设备信息找到第二IO设备的指针;
第二查找单元,用于根据所述第一对应关系找到所述第二IO设备的队列;
第三查找单元,用于根据所述第二对应关系找到所述第二IO设备的中断向量;
第一移除单元,用于移除所述第二IO设备的指针;
第二移除单元,用于移除所述第二IO设备的队列;
第三移除单元,用于移除所述第二IO设备的中断向量。
7.根据权利要求6所述的系统,其特征在于,所述第一移除单元包括:
第一判断子单元,用于判断所述第二IO设备的队列是否正在使用;
第一冻结子单元,用于当所述第一判断子单元的判断结果为是时,冻结所述第二IO设备的队列,不再接受新的请求;
第一移除子单元,用于当所述第一判断子单元的判断结果为是时,等待所述第二IO设备的队列中当前的所有请求执行完毕后,移除所述第二IO设备的指针。
8.根据权利要求6或7所述的系统,其特征在于,所述第二移除单元包括:
第二判断子单元,用于判断所述第二IO设备的队列是否正在使用;
第二冻结子单元,用于冻结所述第二IO设备的队列,不再接受新的请求;
第二移除子单元,用于当所述第二判断子单元的判断结果为是时,等待所述第二IO设备的队列中当前的所有请求执行完毕后,移除所述第二IO设备的队列。
9.一种IO适配器,其特征在于,所述IO适配器下有多个IO设备,所述IO适配器包括如权利要求5-8任一项所述的基于多处理器系统的数据处理系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410088734.XA CN103942165B (zh) | 2014-03-11 | 2014-03-11 | 基于多处理器的数据处理方法、系统和io适配器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410088734.XA CN103942165B (zh) | 2014-03-11 | 2014-03-11 | 基于多处理器的数据处理方法、系统和io适配器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103942165A CN103942165A (zh) | 2014-07-23 |
CN103942165B true CN103942165B (zh) | 2017-01-11 |
Family
ID=51189837
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410088734.XA Active CN103942165B (zh) | 2014-03-11 | 2014-03-11 | 基于多处理器的数据处理方法、系统和io适配器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103942165B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109271267B (zh) * | 2018-08-27 | 2022-11-22 | 北京达佳互联信息技术有限公司 | 路由数据处理方法、装置、电子设备及存储介质 |
-
2014
- 2014-03-11 CN CN201410088734.XA patent/CN103942165B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN103942165A (zh) | 2014-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9501318B2 (en) | Scheduling and execution of tasks based on resource availability | |
US10877766B2 (en) | Embedded scheduling of hardware resources for hardware acceleration | |
US7814295B2 (en) | Moving processing operations from one MIMD booted SIMD partition to another to enlarge a SIMD partition | |
US8250164B2 (en) | Query performance data on parallel computer system having compute nodes | |
US9354952B2 (en) | Application-driven shared device queue polling | |
CN109240825B (zh) | 弹性任务调度方法、装置、设备及计算机可读存储介质 | |
US9164769B2 (en) | Analyzing data flow graph to detect data for copying from central register file to local register file used in different execution modes in reconfigurable processing array | |
Nukada et al. | Scalable multi-gpu 3-d fft for tsubame 2.0 supercomputer | |
TWI633489B (zh) | 於多核心處理器中並行功能之高效率硬體分派及相關之處理器系統、方法及電腦可讀媒體 | |
US20150301858A1 (en) | Multiprocessors systems and processes scheduling methods thereof | |
CN110659115A (zh) | 具有硬件辅助任务调度的多线程处理器核 | |
US20060227788A1 (en) | Managing queues of packets | |
US9626314B2 (en) | Method and apparatus for allocating interruptions | |
JP4430716B2 (ja) | 仮想マシン環境において仮想化アルゴリズムを選択するための適応アルゴリズム | |
CN103942165B (zh) | 基于多处理器的数据处理方法、系统和io适配器 | |
CN103530254A (zh) | 多节点系统的外部设备互联枚举方法和装置 | |
CN102622274B (zh) | 计算机装置及其中断任务分配方法 | |
US9753770B2 (en) | Register-type-aware scheduling of virtual central processing units | |
US9940149B2 (en) | System and method for automatically launching virtual machines based on attendance | |
WO2012082349A2 (en) | Workload scheduling based on a platform energy policy | |
CN106484689B (zh) | 数据处理方法和装置 | |
CN101561786B (zh) | 信息处理装置和信息处理方法 | |
US8453157B2 (en) | Thread synchronization in simultaneous multi-threaded processor machines | |
CN111783954B (zh) | 一种用于确定神经网络的性能的方法、电子设备和存储介质 | |
CN110837482B (zh) | 分布式块存储低延迟控制方法、系统及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20211223 Address after: 450046 Floor 9, building 1, Zhengshang Boya Plaza, Longzihu wisdom Island, Zhengdong New Area, Zhengzhou City, Henan Province Patentee after: xFusion Digital Technologies Co., Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |