CN104969167B - 控制装置及控制方法 - Google Patents
控制装置及控制方法 Download PDFInfo
- Publication number
- CN104969167B CN104969167B CN201380071894.7A CN201380071894A CN104969167B CN 104969167 B CN104969167 B CN 104969167B CN 201380071894 A CN201380071894 A CN 201380071894A CN 104969167 B CN104969167 B CN 104969167B
- Authority
- CN
- China
- Prior art keywords
- instructions
- communication processor
- host bus
- database
- main frame
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Multi Processors (AREA)
- Bus Control (AREA)
- Computer And Data Communications (AREA)
Abstract
主机(101)对设置于对多个存储区域进行访问的接口、且与所述多个存储区域分别对应的多个处理器进行控制,该主机(101)具有:更新部(701),当输入有分别输出至所述多个存储区域中的某一个存储区域的指令的指令列时,对如下负荷进行更新,该负荷是由所述多个处理器中的各处理器针对与该处理器对应的存储区域正在执行中的指令引起的负荷;选择部(702),对于所述指令列中的某一个指令,基于利用所述更新部(701)更新后的、按每个处理器的正在执行中的指令而引起的负荷,从所述多个处理器中选择成为所述某一个指令的分配目的地的处理器;以及输出部(703),将所述某一个指令输出至由所述选择部(702)选择的处理器。
Description
技术领域
本发明涉及对处理I/O指令的接口进行控制的控制装置及控制方法。
背景技术
一般情况下,搭载于主机总线适配器(Host Bus Adapter:HBA)的协议芯片安装有用于卸载连接协议的通信处理器,因连接速度的高速化以及虚拟化技术的兴起而呈现施加于HBA的负荷增加的倾向。由于协议芯片内的通信处理器的处理性能变为性能瓶颈,因此提出有利用多个通信处理器对一个光纤通道端口进行控制的方法(例如,参照下述专利文献1。)。专利文献1的方法是,在HBA上具有多个通信处理器,由多个协议控制电路并行地对通过光纤通道端口接收到的帧进行控制。
现有技术文献
专利文献
专利文献1:国际公开WO2013/001578号公报
发明内容
然而,专利文献1的方法中存在如下问题,即,虽然在主机上进行动作并对多个通信处理器进行控制的驱动器使得I/O指令的负荷在HBA上所具备的多个通信处理器之间分散,但分散的负荷却出现偏差(第1问题)。由于负荷出现偏差,因此,即使通信处理器的数量增加,也会阻碍事务处理性能的提高。
另外,还存在如下问题,即,即便使I/O指令的负荷均匀地分散于多个通信处理器,在对于存储装置的I/O指令的I/O特性有顺序的情况下,事务处理性能也会下降(第2问题)。对于存储器的访问,以块(block)这样的单位进行控制,根据I/O特性而性能不同。此处所说的I/O特性是指,对于存储装置的访问模式是循序的还是随机的。
在循序访问中,连续地对块进行读写,在随机访问中,零散地对小的块进行读写。即使数据传输量相同,在循序访问和随机访问中,对于存储器的读写要求次数也不同,例如,在数据量合计为40[KB]、且块的大小为4[KB]的情况下,若为循序访问,则对于存储装置中的磁盘的读写要求次数为1次,若为随机访问,则以4[KB]为单位,读写要求次数变为10次。
一般情况下,在循序的读出、写入指令连续的情况下,在存储装置中安装使循序访问高效化的算法,当循序性瓦解时,存储装置的响应性能下降。
另外,还存在如下问题,即,当在对存储装置的访问中同时存在块大小较小的I/O指令和块大小较大的I/O指令时,因块大小较小的I/O指令而导致事务处理性能下降(第3问题)。举出经由与HBA的同一端口连接的光纤通道开关而连接有磁带装置和磁盘装置的情况为例进行说明。
存储器以被称为块的单位对数据传输进行控制,磁带装置相对于磁盘装置以较大(例如,8倍~64倍)的块大小对数据传输进行控制。因此,当对同一通信处理器要求针对磁带装置的I/O指令处理和针对磁盘装置的I/O指令处理时,块大小较大的磁带装置的I/O指令的处理时间增加,在针对共享光纤通道端口的块的大小较小的磁盘装置的I/O指令处理中产生等待时间,从而导致性能下降。
针对第3问题,采用了如下方法,即,通过使目前为止的与磁盘装置及磁带装置连接的HBA分开的系统设计而确保磁带装置专用的通信带宽,从而使其不会成为系统整体的性能瓶颈。然而,由于需要导入磁带专用的HBA,因此,导入成本会增大。
关于第3问题,作为连接目标装置,不限于磁带装置和磁盘装置同时存在的情况,因存储于存储装置的数据库的特性也会产生第3问题。举出业务类系统(OLTP)和信息类系统(DWH)在与同一端口连接的存储装置内同时存在的情况为例进行说明。
OLTP是指在线事务处理(On-Line Transaction Processing),形成为在通过网络连接的主机与用户终端之间进行一系列处理的构造,一般情况下,对数据的输入和检索的事务进行处理。通过一次I/O指令而处理的块的大小较小(几千字节),要求高速的响应性能。
与此相对,DWH(data warehouse,数据仓库)是指从近年来以大数据(big data)为代表的大量的业务数据中分析各项目之间的关联性的系统。在DWH中,I/O指令的块大小较大(几十千字节以上),与响应性能相比,更要求吞吐量(through-put)性能。
这样,相对于OLTP为块大小较小的I/O指令,在DWH中,通过块大小较大的I/O指令而被控制,因此,会产生和将磁盘装置以及磁带装置与HBA的同一端口连接时所产生的问题相同的问题。即,当向同一通信处理器要求OLTP和DWH的I/O指令处理时,I/O指令的块大小较大的DWH的处理时间增加,从而导致I/O指令的块大小较小的OLTP处理中产生等待时间。因此,OLTP所要求的响应性能下降。
本发明的目的在于,为了解决上述问题,实现对于存储装置的处理性能的提高。
本申请中公开的发明的一个侧面的控制装置以及控制方法,控制装置对设置于对多个存储区域进行访问的接口、且与上述多个存储区域分别对应的多个处理器进行控制,在输入有分别输出至上述多个存储区域中的某一个存储区域的指令的指令列的情况下,对如下负荷进行更新,该负荷是由上述多个处理器中的各处理器针对与该处理器对应的存储区域正在执行中的指令引起的负荷,对于上述指令列中的某一个指令,基于更新后的按每个处理器的正在执行过程中的指令引起的负荷,从上述多个处理器中选择成为上述某一个指令的分配目的地的处理器,并对选择的处理器输出上述某一个指令。
根据本发明的代表性的实施方式,能够实现对存储装置的处理性能的提高。通过以下的实施例的说明明确上述之外的课题、结构以及效果。
附图说明
图1是表示本实施例所涉及的利用主机的输入输出控制例1的说明图。
图2是表示本实施例所涉及的利用主机的输入输出控制例2的说明图。
图3是表示本实施例所涉及的利用主机的输入输出控制例3的说明图。
图4是表示通信系统的硬件结构例的框图。
图5是表示块大小信息(block_size_info)的存储内容例的说明图。
图6是表示HBA内的详细结构的说明图。
图7是表示主机的功能结构例的框图。
图8是表示通信系统的时序的说明图。
图9是表示图8中示出的通信处理器选择处理(步骤S803)的详细处理顺序例的流程图。
图10是表示图9中示出的访问判定处理(步骤S904)的详细处理顺序例的流程图。
具体实施方式
在本实施例中,主机通过对HBA内的多个通信处理器进行控制的驱动程序,并根据每个通信处理器的I/O负荷、对于存储装置要求的I/O指令种类、访问地址而判定I/O特性。另外,服务器使任意的通信处理器对针对连接LU的I/O指令和特定的块大小的I/O指令进行占用控制,并选择对I/O指令进行处理的通信处理器。
由此,多个通信处理器之间的I/O指令的负荷不会出现偏差,能够使这些通信处理器并行地进行动作,从而能够实现光纤通道端口的事务处理性能的提高。另外,在针对与HBA连接的存储装置而同时存在块大小较大的I/O指令和较小的I/O指令的情况下,目前为止因受到块大小较大的I/O指令处理的影响而导致块大小较小的I/O指令的处理性能下降得到抑制。由此,由于能够使目前为止需要根据连接存储器种类、数据库的特性而分开的HBA集中为一个HBA,因此,能够实现系统导入成本的降低。以下,使用附图对本发明的实施例进行说明。
<输入输出控制例1>
图1是表示本实施例所涉及的基于主机的输入输出控制例1的说明图。输入输出控制例1通过使I/O指令的负荷均匀地分散在HBA上所具备的多个通信处理器之间的负荷平衡方式,而实现了事务处理性能的提高。
在图1中,通信系统100具备主机101、HBA102以及存储装置的一例的磁盘装置103。主机101具有控制HBA102的HBA驱动程序110,HBA102具有多个核(core)#0~#3、以及端口120,将I/O指令向磁盘装置103传输。在本实施例中,作为一例,将核的数量设为4个,但并不限于4个,只要为2个以上即可。将I/O指令A~E按照字母的顺序输入至主机101。
磁盘装置103具有多个逻辑单元LU#0~LU#3。在本实施例中,作为一例,将逻辑单元的数量设为4个,但并不限于4个,只要为2个以上即可。另外,其数量可以与核的数量不同。
主机101观察多个核#0~#3的负荷状态而选择成为各I/O指令A~E的分配目的地的核。核#0~#3内的涂黑的矩形是与I/O指令A~E相比在先输入的I/O指令。HBA驱动程序110将I/O指令A的分配目的地分配为在先的I/O指令的数量最少的核#0。接下来,HBA驱动程序110将I/O指令B的分配目的地分配为在先的I/O指令的数量最少的核#0~2中的某一个核。当分配目的地的候选为多个时,选择编号较小的核。
接下来,HBA驱动程序110将I/O指令C的分配目的地分配为在先的I/O指令的数量最少的核#1,并将接下来的I/O指令D的分配目的地分配为在先的I/O指令的数量最少的核#1。这样,由于执行中的I/O指令多,负荷会与之相应地施加于核,因此,HBA驱动程序选择执行中的I/O指令的数量最少的核,并输出I/O指令。由此,使I/O指令的负荷在HBA上所具备的多个通信处理器之间均匀地分散,而能够实现事务处理性能的提高。
<输入输出控制例2>
图2是表示本实施例所涉及的基于主机的输入输出控制例2的说明图。实现了在对于存储装置的I/O指令的I/O特性有顺序的情况下,事务处理性能的提高。
在图2中,将I/O指令A~E按照字母顺序输入至主机101。指令内的数据也使用与指令相同的附图标记。例如,将指令A内的数据设为数据A。在数据中附加LU编号以及R/W。此处,由数据、LU编号以及R/W的组合构成1个I/O指令。
LU编号是指唯一地确定成为该数据的访问目的地的磁盘装置103内的逻辑单元的识别信息。例如,LU编号为“0”的I/O指令被输出至磁盘装置103的逻辑单元LU#0。R/W为表示该I/O指令是读出指令或者是写入指令的访问种类。
HBA驱动程序110按照I/O指令A、B、C、D、E的顺序获取这些指令。HBA驱动程序110对连续的I/O指令的连续性以及访问种类的同一性进行判定。关于连续的I/O指令(A、B),它们的访问种类均为“R”(读出)。当判定为访问的地址连续时,通过相同的核对连续的I/O指令(A、B)进行处理。在本例的情况下,HBA驱动程序110将连续的I/O指令(A、B)递交给核#0,核#0经由端口120而将连续的I/O指令(A、B)以I/O指令A、B的顺序传输至逻辑单元LU#0。
另外,HBA驱动程序110对于连续的I/O指令(B、C)、(C、D)、(D、E),也进行同样的判定。HBA驱动程序110根据图1所示那样的负荷平衡方式而将I/O指令C分配至核#1,将I/O指令D分配至核#2,将I/O指令E分配至核#3。
然后,核#1将I/O指令C传输至逻辑单元LU#1,核#2将I/O指令D传输至逻辑单元LU#2,核#3将I/O指令E传输至逻辑单元LU#3。由此,多个核之间的I/O指令的负荷不会出现偏差,能够使它们并行地进行动作,从而能够实现端口120的事务处理性能的提高。
<输入输出控制例3>
图3是表示本实施例所涉及的基于主机101的输入输出控制例3的说明图。输入输出控制例3实现了在块大小较小的I/O指令和较大的I/O指令在访问存储装置的过程中同时存在的情况下,基于块大小较小的I/O指令的事务处理性能的提高。在输入输出控制例3中,作为存储装置的一例,举出经由与HBA102的端口120连接的光纤通道开关(未图示)而连接有磁带装置303和磁盘装置103的情况为例进行说明。另外,也可以将磁带装置303置换为信息类系统(DWH),可以将磁盘装置103置换为业务类系统(OLTP)。
在图3中,核#0是磁带装置303专用的通信处理器,核#1~#3是磁盘装置103专用的通信处理器。在I/O指令列300中,I/O指令a~c、e是块大小较小的I/O指令,I/O指令d、f是块大小较大的I/O指令。
主机101内的HBA驱动程序110从按照顺序依次输入的I/O指令a~f的块大小而选择作为传输目的地的核。由于磁带装置203相对于磁盘装置103以较大(例如,8倍~64倍)的块大小对数据传输进行控制,因此,HBA驱动程序110将I/O指令d、f以它们的输入顺序传输至核#0。
这样,在块大小较大的I/O指令和较小的I/O指令同时存在的情况下,能够实现因受到对于块大小较大的I/O指令的处理的影响而降低的块大小较小的I/O指令的处理性能的提高。由此,由于能够使目前为止需要根据连接存储器种类、数据库的特性而分开成多个的HBA集中为一个HBA,因此,能够实现系统导入成本的降低。
另外,HBA驱动程序110将I/O指令a~c、e分配至核#1~核#3。在该情况下,根据在I/O指令a~c、e内指定的LU编号而选择作为分配目的地的核。另外,如图2的输入输出控制例2所示,HBA驱动程序110根据连续的I/O指令的连续性以及访问种类的同一性而将同一核选择为分配目的地。
例如,关于连续的I/O指令(a、b),当设为它们的访问地址均存在连续性、且访问种类均为“R”(读出)时,将这些指令传输至与逻辑单元LU#1对应的核#1。由此,多个核之间的I/O指令的负荷不会出现偏差,能够使这些核并行地进行动作,从而能够实现端口120的事务处理性能的提高。
<通信系统100的硬件结构例>
图4是表示通信系统100的硬件结构例的框图。通信系统100具有主机101、HBA102以及存储装置440。主机101与HBA102经由PCI总线而连接,在HBA102的前方经由I/O接口控制部433(相当于端口120)而连接有存储装置440。存储装置440具有1个以上的存储区域。存储区域是指通过I/O指令而对数据进行读出或者写入的区域。
例如,当存储装置440为磁盘装置103时,如图1所示,具有1个以上的逻辑磁盘。另外,存储装置440也可以是1个以上的磁带装置303。另外,如图2所示,存储装置340可以是包含磁盘装置103和磁带装置303的结构。另外,存储装置340也可以是信息类系统(DWH)、业务类系统(OLTP)内的存储装置340。此外,无论成为访问目的地的存储装置340的种类是物理性的磁盘装置103还是磁带装置303,都将主机101作为逻辑单元来使用。
主机101具有主机CPU(Central Processing Unit)401和主机存储器402。主机CPU401对主机101进行控制。主机存储器402成为主机CPU401的作业区域。另外,主机存储器402是对各种程序、数据进行存储的非暂时性的记录介质。作为主机存储器402,例如存在ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)、闪速存储器。
主机存储器402具有程序区域410、HBA驱动程序数据区域420、以及MMIO空间430。在程序区域410内储存有应用程序411、OS(Operating System)412以及HBA驱动程序110,这些程序通过主机CPU301执行。另外,在HBA驱动程序110中具有通信处理器选择程序313。
在HBA驱动程序数据区域420中储存有通信处理器信息组421、连接LU信息组423以及块大小信息(block_size_info)422。通信处理器信息组421是每个通信处理器的通信处理器信息421-0~321-N。通信处理器信息是指对HBA102内的通信处理器组中的对应的通信处理器进行管理的信息。具体而言,在通信处理器信息421-0~421-N中具有执行中指令数(exec_cmd_num)。执行中指令数(exec_cmd_num)是目前正在处理中的I/O指令的数。执行中指令数(exec_cmd_num)的值越大,表示越大的负荷施加于该通信处理器。
连接LU信息组423是每个逻辑单元的连接LU信息423-0~423-N。连接LU信息423-0~423-N是指对逻辑单元进行管理的信息。具体而言,例如,连接LU信息423-0~423-N具有最终指令信息(last_cmd_info)、连续判定信息(next_LBA_adr_info)、占用分配信息(dev_info)以及最终核信息(last_core_info)。
最终指令信息(last_cmd_info)为表示对该逻辑单元执行的I/O指令的访问种类是写入(W)还是读出(R)的信息。
连续判定信息(next_LBA_adr_info)为用于判定对于该逻辑单元的访问模式是否为循序的信息。具体而言,例如,连续判定信息(next_LBA_adr_info)是指对于该逻辑单元的访问地址和进行访问的I/O指令的块大小之和。
占用分配信息(dev_info)为用于将针对传输目的地逻辑单元的I/O指令的控制占用分配给特定的通信处理器的管理信息。具体而言,例如,是唯一地确定被占用分配的特定的通信处理器的识别信息。
占用分配信息(dev_info)是在通信系统100的导入时由操作员经由应用程序411而设定于HBA驱动程序数据区域320的参数。
最终核信息(last_core_info)为对最后使发送给该逻辑单元的I/O指令启动的通信处理器进行管理的信息。具体而言,例如,是唯一地确定最后使发送给该LU的I/O指令启动的通信处理器的识别信息。
块大小信息(block_size_info)422为根据块大小而占用对I/O指令进行控制的通信处理器的信息。具体而言,例如,块大小信息(block_size_info)422是指与通信处理器相关联的I/O指令的块大小。
MMIO空间430是Memory Mapped Input Output(存储器映射输入/输出)空间的简称,且是为了HBA驱动程序110访问HBA102等的I/O装置内寄存器而使用的地址空间。
HBA102具有多个通信处理器控制部430-0~430-N。通信处理器控制部430-0~430-N经由I/O接口控制部433而访问对应的逻辑单元。通信处理器控制部430-0~430-N具有I/O指令启动寄存器431-0~431-N和通信处理器432-0~432-N。I/O指令启动寄存器431-0~431-N保持来自HBA驱动程序110的I/O指令。接下来,在后述HBA102的内部结构。
图5是表示块大小信息(block_size_info)422的存储内容例的说明图。块大小信息(block_size_info)422为使块大小与占用控制处理器编号相关联的信息。块大小是指I/O指令的块大小。占用控制处理器编号是指进行占用控制的通信处理器的编号。进行占用控制的通信处理器是指在受理了对应的块大小的I/O指令的情况下所选择的通信处理器。例如,在I/O指令的块大小为16[KB]的情况下,通信处理器#3是被占用控制的通信处理器。因此,该I/O指令的发送目的地变为通信处理器#3。另外,“未设定”表示没有确定进行占用控制的通信处理器。
图6是表示HBA102内的详细结构的说明图。I/O指令启动寄存器431-0~431-N与MMIO空间430匹配。由此,HBA驱动程序110能够访问I/O指令启动寄存器431-0~431-N,I/O指令启动寄存器431-0~431-N能够使在主机101上进行动作的HBA驱动程序110对通信处理器进行I/O指令的执行指示。
HBA102按每个通信处理器而将由HBA驱动程序110指示的I/O指令堆栈于I/O指令启动队列600,并对通信处理器组432通知I/O指令的启动。然后,通信处理器组432经由I/O接口控制部433而将I/O指令发送至存储装置440。
<主机101的功能结构例>
图7是表示主机101的功能结构例的框图。作为主机101的控制装置700,是对设置于对多个存储区域进行访问的接口、且与多个存储区域分别对应的多个处理器进行控制的控制装置。多个存储区域是指存储装置440内的存储区域,例如,相当于磁盘装置103和磁带装置303的逻辑单元。多个处理器是指例如通信处理器组432,对多个存储区域进行访问的接口是指例如具有通信处理器组432的HBA102。
控制装置700具有更新部701、选择部702、输出部703、判定部704以及存储部705。具体而言,更新部701~判定部704例如通过使主机CPU401执行图4所示的HBA驱动程序110而实现其功能。另外,存储部705通过主机存储器402而实现其功能。
在输入有分别被输出至多个存储区域中的某一个存储区域的指令列的情况下,更新部701对如下负荷进行更新,该负荷是由多个处理器的各处理器针对与该处理器对应的存储区域正在执行中的指令而引起的负荷。具体而言,例如,更新部701对存储于通信处理器信息组421的各通信处理器信息321-0~321-N的执行中指令数(exec_cmd_num)进行更新。即,在对通信处理器发出I/O指令的情况下,更新部701使执行中指令数(exec_cmd_num)加1,在从通信处理器收到结束通知的情况下,更新部701使执行中指令数(exec_cmd_num)减1。
选择部702对于指令列中的某一个指令,基于通过更新部701更新后的、由每个处理器正在执行中的指令而引起的负荷,从多个处理器中选择成为某一个指令的分配目的地的处理器。具体而言,例如,选择部702将执行中指令数(exec_cmd_num)最少的通信处理器选择为分配目的地。
输出部703对由选择部702选择出的处理器输出某一个指令。具体而言,例如,输出部703通过I/O接口控制部而将I/O指令发送至与作为分配目的地的通信处理器对应的逻辑单元。
判定部704对于指令列中的第1指令以及紧随第1指令之后的第2指令,判定访问多个存储区域中的某一个存储区域的地址是否具有连续性、且访问种类是否相同。具体而言,例如,判定部704对连续的I/O指令判定地址的连续性以及访问种类的同一性。
更具体而言,例如,判定部704对连续的I/O指令中的在先的第1指令的连续判定信息(next_LBA_adr_info)、和连续的I/O指令中的后续的第2指令的访问目的地地址进行比较。连续判定信息(next_LBA_adr_info)是指访问该逻辑单元的访问地址与进行访问的I/O指令的块大小之和。在一致的情况下,判定部704判定第1指令与第2指令之间存在连续性。
另外,判定部704参照最终指令信息(last_cmd_info)而确定第1指令的访问种类是写入(W)还是读出(R),并判定其与第2指令的访问种类是否一致。在一致的情况下,判定部704判定第1指令和第2指令的访问种类相同。
在该情况下,选择部702不通过执行中指令数(exec_cmd_num)而选择第2指令的分配目的地。并且,选择部702在通过判定部704判定被访问的地址存在连续性、且访问种类相同的情况下,选择多个处理器中的、与第1指令访问到的存储区域对应的处理器。例如,当第1指令的访问目的地为逻辑单元#0时,第2指令的访问目的地也变为逻辑单元#0。但是,在地址不具有连续性的情况或者访问种类不具有同一性的情况下,选择部702根据执行中指令数(exec_cmd_num)而选择第2指令的分配目的地。
存储部705对如下第1对应信息进行存储,该第1对应信息是使多个处理器中的特定的处理器的识别信息、与成为特定的处理器的访问目的地的多个存储区域中的特定的存储区域的识别信息相关联的信息。第1对应信息是指连接LU信息423-0~423-N内的占用分配信息(dev_info)。即,特定的处理器的识别信息是指由连接LU信息423-0~423-N确定的逻辑单元的编号,特定的存储区域的识别信息是指存储于占用分配信息(dev_info)的通信处理器的编号。
在使用第1对应信息的情况下,判定部704参照第1对应信息,对第2指令所保持的第2指令的访问目的地的存储区域的识别信息、与特定的存储区域的识别信息是否一致进行判定。并且,选择部702在通过判定部704判定为第2指令的访问目的地的存储区域的识别信息与特定的存储区域的识别信息一致的情况下,选择特定的处理器。
例如,在作为连续的I/O指令中的后续的第2指令的访问目的地为逻辑单元#0、且特定的存储区域为逻辑单元#0的情况下,选择部702选择通信处理器作为第2指令的分配目的地,该通信处理器通过存储于逻辑单元#0的连接LU信息423-0的占用分配信息(dev_info)的通信处理器的编号而指定。
另外,存储部705对如下第2对应信息进行存储,该第2对应信息是使多个处理器中的特定的处理器的识别信息、与特定的处理器输出至访问目的地的指令的大小相关联的信息。第2对应信息是指块大小信息(block_size_info)422。
在使用第2对应信息的情况下,判定部704参照第2对应信息,对第2指令的大小与特定的处理器输出至访问目的地的指令的大小是否一致进行判定。并且,选择部702在通过判定部704判定为第2指令的大小与特定的处理器输出至访问目的地的指令的大小一致的情况下,选择特定的处理器。
例如,选择部702在作为连续的I/O指令中的后续的第2指令的块大小为16.0[KB]、且与块大小信息(block_size_info)422中的16.0[KB]的块大小对应的通信处理器的编号为“3”的情况下,选择通信处理器#3作为第2指令的分配目的地。
<通信系统100的时序>
图8是表示通信系统100的时序的说明图。另外,存在以应用程序411、OS412、HBA驱动程序110之类的程序作为主语而进行说明的情况,但是,程序通过被主机CPU401执行而一边使用主机存储器402一边进行决定的处理,因此,其含义与以主机CPU401为主语的说明相同。
首先,应用程序411对OS412执行向存储装置440的发送接收要求(步骤S801)。接收到该要求的OS412对HBA驱动程序110发出I/O指令(步骤S802)。HBA驱动程序110的通信处理器选择程序413执行使I/O指令启动的通信处理器选择处理(步骤S803)。将在步骤S803中选择的通信处理器称为“选择通信处理器”。通过图7后述关于通信处理器选择处理(步骤S803)的详情。
HBA驱动程序110通过输出部703对选择通信处理器发出I/O指令(步骤S804)。在发出I/O指令之后,HBA驱动程序110通过更新部701对I/O指令的传输目的地逻辑单元中的连接LU信息即连续判定信息(next_LBA_adr_info)、最终指令信息(last_cmd_info)以及最终核信息(last_core_info)进行更新(步骤S805)。
具体而言,连续判定信息(next_LBA_adr_info)更新为向该逻辑单元的访问地址与访问块大小之和。在步骤S804中发出的I/O指令为写入指令的情况下,最终指令信息(last_cmd_info)更新为写入(W),在步骤S804中发出的I/O指令为读出指令的情况下,最终指令信息(last_cmd_info)更新为读出(R)。最终核信息(last_core_info)更新为在通信处理器选择处理(步骤S803)中选择的选择通信处理器的编号。
并且,HBA驱动程序110对在选择通信处理器中现在正执行中的I/O指令的数量进行更新(步骤S806)。具体而言,对表示在选择通信处理器中现在正执行中的I/O指令的数量的执行中指令数(exec_cmd_num),加上在步骤S804中发出的I/O指令的数量(1个)。另外,当由选择通信处理器接收到I/O指令结束通知时,减去执行中指令数(exec_cmd_num)。
图9是表示图8中示出的通信处理器选择处理(步骤S803)的详细的处理顺序例的流程图。首先,HBA驱动程序110通过判定部704,判断是否设定为在步骤S802中从OS412发出的I/O指令(以下,称为启动指令)的块大小被特定的通信处理器实施占用控制(步骤S901)。具体而言,例如,HBA驱动程序110参照图4中示出的块大小信息(block_size_info)322进行判断。
即,在与块大小对应的占用控制处理器编号为“未设定”的情况下,步骤S901的结果为否,在占用控制处理器编号存在的情况下,步骤S901的结果为是。在步骤S901的结果为是的情况下,转移至步骤S903,HBA驱动程序110通过选择部702选择编号为占用控制处理器编号的通信处理器(步骤S903)。
在步骤S901的结果为否的情况下,HBA驱动程序110通过判定部704判断是否设定为启动指令的传输目的地逻辑单元被特定的通信处理器实施占用控制(步骤S902)。具体而言,例如,HBA驱动程序110参照传输目的地逻辑单元的占用分配信息(dev_info)进行判断。即,在传输目的地逻辑单元的占用分配信息(dev_info)中的占用控制处理器编号为“未设定”的情况下,步骤S902的结果为否,在占用控制处理器编号存在的情况下,步骤S902的结果为是。在步骤S902的结果为是的情况下,转移至步骤S903,HBA驱动程序110通过选择部702选择编号为占用控制处理器编号的通信处理器(步骤S903)。
在与HBA102连接的LU为磁盘装置103和磁带装置203的情况下,通过将针对磁带装置203的LU的I/O指令控制占用分配给特定的通信处理器,能够防止将磁带装置203以及磁盘装置103连接于一个HBA102的前方时所产生的性能下降。
在步骤S901的结果为否的情况下,HBA驱动程序110通过判定部704执行访问判定处理(步骤S904)。在访问判定处理(步骤S904)中,判定针对传输目的地逻辑单元的访问是否为循序访问,通过图8后述关于访问判定处理(步骤S904)的详情。
在针对传输目的地逻辑单元的访问为循序访问的情况下(步骤S905的结果为是),转移至步骤S906,在针对传输目的地逻辑单元的访问并非循序访问的情况下(步骤S905的结果为否),转移至步骤S907。
在为循序访问的情况下(步骤S905的结果为是),HBA驱动程序110通过选择部702、并参照最终核信息(last_core_info)而确定最后对传输目的地逻辑单元发出I/O指令的通信处理器,并选择该通信处理器(步骤S906)。
另一方面,在并非循序访问的情况下(步骤S905的结果为否),HBA驱动程序110通过选择部702选择多个通信处理器中的、滞留中的I/O指令的负荷最小的通信处理器(步骤S907)。例如,HBA驱动程序110选择执行中指令数(exec_cmd_num)最少的通信处理器。
图10是表示图9中示出的访问判定处理(步骤S904)的详细的处理顺序例的流程图。首先,HBA驱动程序110通过判定部704判定启动指令与对传输目的地逻辑单元最后执行的访问种类是否为同一种类(步骤S1001)。具体而言,HBA驱动程序110判定启动指令的访问种类与由最终指令信息(last_cmd_info)确定的访问种类是否一致。在并非同一种类的情况下(步骤S1001的结果为否),HBA驱动程序110判定为启动指令是随机访问(步骤S1004)。由于是随机访问,因此转移至步骤S1004。
另一方面,在种类相同的情况下(步骤S1001的结果为是),由于是循序访问,因此,HBA驱动程序110通过判定部704判定启动指令与在传输目的地逻辑单元最后执行的地址是否连续(步骤S1002)。具体而言,HBA驱动程序110参照从对传输目的地逻辑单元最后执行的I/O指令的地址、以及I/O指令的块大小而计算的连续判定信息(next_LBA_adr_info),判定连续判定信息(next_LBA_adr_info)与启动指令的地址是否一致。
在一致的情况下(步骤S1002的结果为是),HBA驱动程序110通过判定部704判定为启动指令是循序访问(步骤S1003),在不一致的情况下(步骤S1002的结果为否),判定为启动指令是随机访问(步骤S1004)。在步骤S1003、S1004之后,转移至步骤S905,访问判定处理(步骤S904)结束。
另外,在步骤S1002中,以连续判定信息(next_LBA_adr_info)与启动指令的地址一致的情况为例进行了说明,但是,存在在存储装置440中的循序访问判定算法在访问地址不连续的情况下也进行动作的情况。
例如,只要处于距连续判定信息(next_LBA_adr_info)几百字节的范围内,则存在在存储装置440中会视作循序访问而进行动作的情况。因此,在基于HBA驱动程序的地址判定方法中,只要地址的偏差处于几百字节以内,则可以判定为循序访问。另外,可以采用使该地址范围的偏差参数化,且能够根据连接的存储装置440的循序访问算法而变更的方法。
这样,在本实施例中,控制HBA102的HBA驱动程序110通过每个通信处理器的I/O负荷、对存储装置440的访问种类、访问地址、块大小而判定I/O特性,并选择使I/O指令启动的通信处理器。由此,能够实现HBA102的事务处理性能的提高。另外,通过使特定的通信处理器对向连接的LU的I/O指令处理进行占用控制,而能够实现不存在性能瓶颈的数据传输。
此外,本发明不限定于上述实施例,包含各种各样的变形例。例如,上述实施例是为了容易理解本发明而详细地说明的例子,并不限定于具备说明的所有结构。另外,也可以适当地对利用图6~图8说明的处理顺序进行调换而实现。
以上,虽然参照附图对本发明进行了详细说明,但是本发明不限定于这种具体的结构,还包含附件的权利要求书的主旨范围内的各种各样的变更以及相同的结构。
Claims (16)
1.一种主机总线适配器,其与储存有OLTP的数据库和DWH的数据库的存储装置、和执行使用了所述OLTP的数据库和所述DWH的数据库的应用程序的主机连接,并具有多个通信处理器,所述主机总线适配器的特征在于,
作为所述多个通信处理器的一部分的第一通信处理器从所述主机接收对所述DWH的数据库发送的指定了块大小为规定的大小以上的第一I/O指令,并占用将该第一I/O指令向所述存储装置发送的处理,
作为所述多个通信处理器的一部分的第二通信处理器从所述主机接收对所述OLTP的数据库发送的指定了块大小为所述规定的大小以下的第二I/O指令,并占用将该第二I/O指令向所述存储装置发送的处理。
2.根据权利要求1所述的主机总线适配器,其特征在于,具有:
储存所述第一通信处理器所处理的所述第一I/O指令的第一I/O指令启动队列;
储存所述第二通信处理器所处理的所述第二I/O指令的与所述第一I/O指令启动队列不同的第二I/O指令启动队列。
3.根据权利要求2所述的主机总线适配器,其特征在于,具有:
MMIO空间资源,其与所述主机所具有的MMIO空间匹配,且在向所述第一I/O指令启动队列以及所述第二I/O指令启动队列堆栈所述第一I/O指令以及所述第二I/O指令时被访问。
4.根据权利要求3所述的主机总线适配器,其特征在于,
所述MMIO空间资源包含与所述多个通信处理器分别对应的I/O指令启动寄存器。
5.一种通信系统,其具有:储存有OLTP的数据库和DWH的数据库的存储装置;与所述存储装置经由光纤通道连接,且具有多个通信处理器的主机总线适配器;和与所述主机总线适配器连接,且执行使用所述OLTP的数据库和所述DWH的数据库的应用程序的主机,所述通信系统的特征在于,
作为所述多个通信处理器的一部分的第一通信处理器从所述主机接收对所述DWH的数据库发送的指定了块大小为规定的大小以上的第一I/O指令,并占用将该第一I/O指令向所述存储装置发送的处理,
作为所述多个通信处理器的一部分的第二通信处理器从所述主机接收对所述OLTP的数据库发送的指定了块大小为所述规定的大小以下的第二I/O指令,并占用将该第二I/O指令向所述存储装置发送的处理。
6.根据权利要求5所述的通信系统,其特征在于,
所述主机总线适配器具有:储存所述第一通信处理器所处理的所述第一I/O指令的第一I/O指令启动队列;
储存所述第二通信处理器所处理的所述第二I/O指令的与所述第一I/O指令启动队列不同的第二I/O指令启动队列。
7.根据权利要求6所述的通信系统,其特征在于,
所述主机总线适配器具有MMIO资源,
所述MMIO资源与所述主机所具有的MMIO空间匹配,且在向所述第一I/O指令启动队列以及所述第二I/O指令启动队列堆栈所述第一I/O指令以及所述第二I/O指令时被访问。
8.根据权利要求7所述的通信系统,其特征在于,
所述MMIO空间资源包含与所述多个通信处理器分别对应的I/O指令启动寄存器。
9.一种主机总线适配器的控制方法,其特征在于,
所述主机总线适配器与储存有OLTP的数据库和DWH的数据库的存储装置、和执行使用了所述OLTP的数据库和所述DWH的数据库的应用程序的主机连接,并具有多个通信处理器,对所述主机总线适配器执行如下步骤:
作为所述多个通信处理器的一部分的第一通信处理器从所述主机接收对所述DWH的数据库发送的指定了块大小为规定的大小以上的第一I/O指令,并占用将该第一I/O指令向所述存储装置发送的处理,
作为所述多个通信处理器的一部分的第二通信处理器从所述主机接收对所述OLTP的数据库发送的指定了块大小为所述规定的大小以下的第二I/O指令,并占用将该第二I/O指令向所述存储装置发送的处理。
10.根据权利要求9所述的主机总线适配器的控制方法,其特征在于,
所述主机总线适配器具有:储存所述第一通信处理器所处理的所述第一I/O指令的第一I/O指令启动队列,
储存所述第二通信处理器所处理的所述第二I/O指令的与所述第一I/O指令启动队列不同的第二I/O指令启动队列。
11.根据权利要求10所述的主机总线适配器的控制方法,其特征在于,
所述主机总线适配器的特征在于,具有:
MMIO空间资源,其与所述主机所具有的MMIO空间匹配,且在向所述第一I/O指令启动队列以及所述第二I/O指令启动队列堆栈所述第一I/O指令以及所述第二I/O指令时被访问。
12.根据权利要求11所述的主机总线适配器的控制方法,其特征在于,
所述主机总线适配器的特征在于,
所述MMIO空间资源包含与所述多个通信处理器分别对应的I/O指令启动寄存器。
13.一种通信系统的控制方法,所述通信系统的特征在于,具有:储存有OLTP的数据库和DWH的数据库的存储装置;与所述存储装置经由光纤通道连接,且具有多个通信处理器的主机总线适配器;和与所述主机总线适配器连接,且执行使用所述OLTP的数据库和所述DWH的数据库的应用程序的主机,所述通信系统执行如下步骤:
作为所述多个通信处理器的一部分的第一通信处理器从所述主机接收对所述DWH的数据库发送的指定了块大小为规定的大小以上的第一I/O指令,并占用将该第一I/O指令向所述存储装置发送的处理,
作为所述多个通信处理器的一部分的第二通信处理器从所述主机接收对所述OLTP的数据库发送的指定了块大小为所述规定的大小以下的第二I/O指令,并占用将该第二I/O指令向所述存储装置发送的处理。
14.根据权利要求13所述的通信系统的控制方法,其特征在于,
所述主机总线适配器具有:储存所述第一通信处理器所处理的所述第一I/O指令的第一I/O指令启动队列,
储存所述第二通信处理器所处理的所述第二I/O指令的与所述第一I/O指令启动队列不同的第二I/O指令启动队列。
15.根据权利要求14所述的通信系统的控制方法,其特征在于,
所述主机总线适配器具有MMIO资源,所述MMIO资源与所述主机所具有的MMIO空间匹配,且在向所述第一I/O指令启动队列以及所述第二I/O指令启动队列堆栈所述第一I/O指令以及所述第二I/O指令时被访问。
16.根据权利要求15所述的通信系统的控制方法,其特征在于,
所述MMIO空间资源包含与所述多个通信处理器分别对应的I/O指令启动寄存器。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2013/065232 WO2014192144A1 (ja) | 2013-05-31 | 2013-05-31 | 制御装置および制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104969167A CN104969167A (zh) | 2015-10-07 |
CN104969167B true CN104969167B (zh) | 2018-01-09 |
Family
ID=51988212
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380071894.7A Active CN104969167B (zh) | 2013-05-31 | 2013-05-31 | 控制装置及控制方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9740404B2 (zh) |
JP (1) | JP5969122B2 (zh) |
CN (1) | CN104969167B (zh) |
DE (1) | DE112013006550T5 (zh) |
GB (1) | GB2529071B (zh) |
WO (1) | WO2014192144A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE112013006550T5 (de) * | 2013-05-31 | 2015-11-19 | Hitachi, Ltd. | Steuerungsgerät und Steuerungsverfahren |
US10860374B2 (en) * | 2015-09-26 | 2020-12-08 | Intel Corporation | Real-time local and global datacenter network optimizations based on platform telemetry data |
US10705747B2 (en) * | 2018-03-21 | 2020-07-07 | Micron Technology, Inc. | Latency-based storage in a hybrid memory system |
CN112241320B (zh) | 2019-07-17 | 2023-11-10 | 华为技术有限公司 | 资源分配方法、存储设备和存储系统 |
US11740800B2 (en) * | 2021-06-22 | 2023-08-29 | Micron Technology, Inc. | Alleviating memory hotspots on systems with multiple memory controllers |
KR20230046356A (ko) * | 2021-09-29 | 2023-04-06 | 삼성전자주식회사 | 메모리 장치, 메모리 장치의 동작 방법, 그리고 메모리 장치를 포함하는 전자 장치 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101878663A (zh) * | 2007-11-29 | 2010-11-03 | 瑞科网信科技有限公司 | 分布式多重处理安全网关的系统和方法 |
CN102576314A (zh) * | 2009-07-27 | 2012-07-11 | 先进微装置公司 | 具有横跨多个处理器的数据并行线程之映射处理逻辑 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6549931B1 (en) * | 1999-09-27 | 2003-04-15 | Oracle Corporation | Distributing workload between resources used to access data |
JP3992952B2 (ja) | 2001-09-10 | 2007-10-17 | 株式会社日立製作所 | 記憶制御装置およびその運用方法 |
JP2003150416A (ja) * | 2001-11-09 | 2003-05-23 | Sony Corp | ファイル管理装置及びファイル管理方法 |
JP4222065B2 (ja) * | 2002-03-12 | 2009-02-12 | 株式会社日立製作所 | 情報システムにおけるデータアクセス方法および情報システム |
JP4406199B2 (ja) * | 2002-11-19 | 2010-01-27 | 株式会社日立製作所 | プロセッサ負荷制御機能をもつ記憶制御装置 |
JP4969795B2 (ja) | 2005-05-12 | 2012-07-04 | 株式会社日立製作所 | 記憶制御システム |
JP2007079958A (ja) * | 2005-09-14 | 2007-03-29 | Hitachi Ltd | 記憶制御装置、データ処理方法、及びコンピュータプログラム |
JP4838884B2 (ja) * | 2006-06-22 | 2011-12-14 | ノルドナブ テクノロジーズ エー ビー | ソフトウェアベースのスペクトル拡散信号処理 |
WO2008136097A1 (ja) * | 2007-04-24 | 2008-11-13 | Fujitsu Limited | アクセス制御プログラム、アクセス制御方法、及びアクセス制御装置 |
US20090165008A1 (en) * | 2007-12-19 | 2009-06-25 | Aten International Co., Ltd. | Apparatus and method for scheduling commands from host systems |
JP5453872B2 (ja) * | 2009-03-27 | 2014-03-26 | 日本電気株式会社 | ディスクアレイ装置、ディスク制御装置、ディスクアレイ装置における負荷分散方法 |
US20140136740A1 (en) | 2011-06-29 | 2014-05-15 | Hitachi, Ltd. | Input-output control unit and frame processing method for the input-output control unit |
US9195506B2 (en) * | 2012-12-21 | 2015-11-24 | International Business Machines Corporation | Processor provisioning by a middleware processing system for a plurality of logical processor partitions |
DE112013006550T5 (de) * | 2013-05-31 | 2015-11-19 | Hitachi, Ltd. | Steuerungsgerät und Steuerungsverfahren |
-
2013
- 2013-05-31 DE DE112013006550.9T patent/DE112013006550T5/de not_active Withdrawn
- 2013-05-31 GB GB1515443.8A patent/GB2529071B/en not_active Expired - Fee Related
- 2013-05-31 WO PCT/JP2013/065232 patent/WO2014192144A1/ja active Application Filing
- 2013-05-31 US US14/771,951 patent/US9740404B2/en active Active
- 2013-05-31 CN CN201380071894.7A patent/CN104969167B/zh active Active
- 2013-05-31 JP JP2015519582A patent/JP5969122B2/ja not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101878663A (zh) * | 2007-11-29 | 2010-11-03 | 瑞科网信科技有限公司 | 分布式多重处理安全网关的系统和方法 |
CN102576314A (zh) * | 2009-07-27 | 2012-07-11 | 先进微装置公司 | 具有横跨多个处理器的数据并行线程之映射处理逻辑 |
Also Published As
Publication number | Publication date |
---|---|
WO2014192144A1 (ja) | 2014-12-04 |
GB201515443D0 (en) | 2015-10-14 |
US9740404B2 (en) | 2017-08-22 |
GB2529071A (en) | 2016-02-10 |
GB2529071B (en) | 2020-09-16 |
US20160018989A1 (en) | 2016-01-21 |
JPWO2014192144A1 (ja) | 2017-02-23 |
CN104969167A (zh) | 2015-10-07 |
JP5969122B2 (ja) | 2016-08-17 |
DE112013006550T5 (de) | 2015-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104969167B (zh) | 控制装置及控制方法 | |
US11693601B2 (en) | Enabling virtual functions on storage media | |
US10446174B2 (en) | File system for shingled magnetic recording (SMR) | |
US7779016B2 (en) | Parallel execution of operations for a partitioned binary radix tree on a parallel computer | |
CN108519862A (zh) | 区块链系统的存储方法、装置、系统和存储介质 | |
CN103885820B (zh) | 信息处理装置和信息处理方法 | |
CN112153085A (zh) | 一种数据处理方法、节点及区块链系统 | |
CN109684231A (zh) | 用于识别固态盘中的热数据和流的系统及方法 | |
CN107241913A (zh) | 信息处理装置 | |
JP6757808B2 (ja) | インフィニバンド(IB)上で仮想ホストバスアダプタ(vHBA)を管理およびサポートするためのシステムおよび方法、ならびに単一の外部メモリインターフェイスを用いてバッファの効率的な使用をサポートするためのシステムおよび方法 | |
CN107924289A (zh) | 计算机系统和访问控制方法 | |
US11226778B2 (en) | Method, apparatus and computer program product for managing metadata migration | |
US10810174B2 (en) | Database management system, database server, and database management method | |
CN110275840A (zh) | 在存储器接口上的分布式过程执行和文件系统 | |
CN115129621B (zh) | 一种内存管理方法、设备、介质及内存管理模块 | |
CN108108633A (zh) | 一种数据文件及其访问方法、装置及设备 | |
CN110119304A (zh) | 一种中断处理方法、装置及服务器 | |
CN109343962A (zh) | 数据处理方法、装置及分布式服务系统 | |
CN108304142A (zh) | 一种数据管理方法和装置 | |
WO2019174206A1 (zh) | 一种存储设备的数据读取方法、装置、终端设备和存储介质 | |
US20230195320A1 (en) | Systems and methods for integrating a compute resource with a storage device | |
US8898353B1 (en) | System and method for supporting virtual host bus adaptor (VHBA) over infiniband (IB) using a single external memory interface | |
CN117043755A (zh) | 计算系统中的存储器操作管理 | |
US7146462B2 (en) | Storage management method | |
CN103455641B (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 |