CN111208948A - 一种基于混合式存储的请求分发方法 - Google Patents
一种基于混合式存储的请求分发方法 Download PDFInfo
- Publication number
- CN111208948A CN111208948A CN202010029611.4A CN202010029611A CN111208948A CN 111208948 A CN111208948 A CN 111208948A CN 202010029611 A CN202010029611 A CN 202010029611A CN 111208948 A CN111208948 A CN 111208948A
- Authority
- CN
- China
- Prior art keywords
- request
- storage medium
- queue
- requests
- queues
- 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
Links
Images
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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
-
- 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/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and 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/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
-
- 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)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于混合存储的请求分发方法,该方法通过将存储介质特性与I/O请求特性相结合,提高了混合式存储设备的性能。为减少CPU核之间同时访问同一队列所产生的开销以及简化请求分发管理,本发明提出在队列设置时,通过对设备队列与存储介质、CPU核与设备队列的绑定,实现CPU核与存储介质的绑定。为充分结合I/O请求特性与存储介质特性,本发明提出请求分发前先对请求进行合并,并根据请求类型发送到对应的设备队列中。同时,本发明提出采用灵活的分发机制,以最大限度地利用混合式存储设备的性能。根据上述方法,本发明优化了混合式存储设备中的数据管理,减少了仅使用NVM设备作为性能层所产生的请求拥堵与设备损耗,提升了混合式存储的性能。
Description
技术领域
本发明涉及混合式存储技术领域,特别是涉及一种基于混合式存储的请求分发方法。
背景技术
近年来,数据以指数级的速度增长,除了存储容量的需求,数据的访问速度和可靠性成为影响用户体验的关键因素。随着存储工艺的发展,以3D NAND为存储介质的固态硬盘不断发展,从存储1bit数据的SLC(Single-Level Cell)到存储4bit数据的QLC(Quad-LevelCell),闪存存储器朝着存储密度更大、尺寸更小的方向发展,由于其较高的访问性能、较大的容量被广泛应用到数据中心以及嵌入式设备中。然而,DRAM与NAND flash之间的性能鸿沟仍然是不容忽视的,DRAM十几纳秒的延迟仍比NAND flash约100微妙的延迟快多个数量级。
为了解决上述性能差异,多种新型存储介质不断发展,以3D Xpoint为例,3DXpoint降低了存储介质延迟和控制器延迟,使其读写性能更接近DRAM,且具有非易失性,成本介于DRAM和NAND flash之间。出于成本和性能的考量,以新型存储介质NVM和传统NANDflash存储介质所搭建的混合式存储成为企业存储的重要解决方案。
然而,由于NVM与NAND flash之间的性能及容量差异,如何利用不同存储器件的特性并结合数据的访问特点进行数据布局成为影响混合式存储性能的关键问题。常见混合式存储结构以分层和缓存方式为主,由NVM作为性能层,负责处理前台的I/O请求,而NANDflash作为容量层,提供更大的容量需求。上述传统的混合式存储结构严格的分层结构,会产生请求拥堵的现象,且由于NVM容量的限制会造成后台频繁的数据迁移,从而造成性能抖动。
发明内容
本发明的目的是为了解决现有技术的不足、充分利用设备特性以及I/O访问特性,结合NVMe多队列机制而提供的一种基于混合式存储的请求分发方法,通过对I/O请求的灵活调度分配,提升混合式存储的访问性能。
实现本发明目的的具体技术方案是:
一种基于混合式存储的请求分发方法,该方法包括:
在设备初始化时,设置设备队列数N以及队列深度QD(Queue depth,队列深度),对设备队列SQ(Submission Queue,设备队列)进行标记,完成设备队列与混合式存储设备、CPU核与设备队列之间的绑定;在请求分发时,进行请求合并并根据请求类型插入到对应的请求链表中;将请求链表中的请求插入到对应的设备队列中;其中:
所述混合式存储设备由非易失性NVM(Non-Volatile Memory,非易失性存储器)存储介质以及NAND flash存储介质构成,向上显示为单一设备,通过PCIeNVMe进行访问;
所述设备队列SQ是指NVMe协议中的SQ,SQ位于主机内存中,存储主机端发送的I/O(Input/Output,输入/输出)请求,SQ由主机端管理NVMe设备的Admin命令创建。
所述设备队列数N至多为混合式存储设备所支持的最大队列数。
所述对设备队列SQ进行标记,完成设备队列与混合式存储设备、CPU核与设备队列之间的绑定,具体为:
使用SQ1标记由NVM存储介质服务的设备队列,使用SQ’标记由NAND flash存储介质服务的设备队列;
由NVM存储介质服务的设备队列数记为N1,N1至多为NVM存储介质所支持的最大队列数,至少为CPU核数;若NVM存储介质所支持的最大队列数不足CPU核数,则N1为NVM存储介质所支持的最大队列数;
由NAND flash存储介质服务的设备队列数记为N2;N2至多为NAND flash存储介质所支持的最大队列数,若NAND flash存储介质所支持的最大队列数不足CPU核数,则N2为NANDflash存储介质所支持的最大队列数;
为每个CPU核优先同时分配一个已标记的由NVM存储介质服务的设备队列SQ1和一个由NAND flash存储介质服务的设备队列SQ’,若NVM存储介质或NAND flash存储介质所支持的最大设备队列数不足CPU核数,则为未分配CPU核分配剩余设备队列。
所述在请求分发时,进行请求合并并根据请求类型插入到对应的请求链表中,具体为:
在通用块层中维护一个请求窗口,该请求窗口的大小根据当前通用块层中的bio请求总数进行调节;其中bio是在通用块层中对每个I/O操作的描述;
在通用块层分别维护由NVM存储介质服务的请求链表和由NAND flash存储介质服务的请求链表;
对请求窗口中的请求,依据发送该请求的线程所属的CPU核以及访问的逻辑地址进行合并,判断该请求所访问的逻辑地址+所访问的物理块号与所属请求窗口内由同一CPU核发送的其他bio请求是否有重叠或间隔小于固定值k,若满足可进行合并,生成新的I/O请求;
依据请求所访问的字节数识别请求类型,当访问的字节数超过预定义的阈值T时,将该请求归为大请求,反之为小请求;
当请求被识别为大请求时,插入到由NAND flash存储介质服务的请求链表,反之插入到由NVM存储介质服务的请求链表。
所述将请求链表中的请求插入到对应的设备队列中,具体为:
请求插入之前获取发送该请求的线程所执行的CPU核;
由NVM存储介质服务的请求链表中的请求插入到该请求所属CPU核中的设备队列SQ1中,由NAND flash存储介质服务的请求链表中的请求插入到该请求所属CPU核中的SQ’;
将请求插入设备队列时,若该设备队列中的待处理请求数小于最大队列深度QD,则将请求插入该设备队列中,更新链表指针,反之,等待;若当前需插入的为由NVM存储介质服务的设备队列,且该设备队列中的请求数等于队列深度QD,同时同一CPU核中的由NAND flash存储介质服务的设备队列SQ’中的请求数小于预定义的最小请求数min_num时,将该请求插入到SQ’中。
本发明的有益效果在于:
通过将设备队列与存储介质、CPU核与设备队列的绑定,减少了多个CPU核同时访问同个队列锁机制所带来的开销,且为每个CPU核分配至少一个NVM SQ(SQ1)和一个NAND flashSQ(SQ’),使得可灵活使用NVM和NAND flash所提供的访问性能,同时简化管理。仅使用1bit数据标识队列所属的存储介质,开销可忽略不计。
通过对请求的合并,识别请求类型,从而实现了访问类型与存储介质特性相结合,最大限度地利用设备特性为请求提供服务,且根据当前待处理的请求数动态设置合并请求的请求窗口大小,适应性更好。同时结合设备队列深度灵活调度请求,提高了服务质量。
附图说明
图1为本发明的具体实施系统概览图;
图2为本发明的队列配置与绑定机制流程图;
图3为本发明的请求合并与分发机制流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步说明:
本发明通过将存储介质与设备队列、设备队列与CPU核的绑定,并结合I/O请求的访问特性,将请求发送到对应的设备队列中,从而实现请求类别与存储设备特性的结合,并通过灵活的分配方法,缓解NVM设备的负载压力,提升整体的访问性能。如图1所示,本发明主要涉及两个部分。
第一个部分,提供一种队列配置与绑定机制。如图1中组件101所示,具体包括:
步骤一:设置总队列数。根据系统配置以及存储介质的并行能力,通过块设备驱动程序设置总队列个数。如图1组件1011所示,该系统配置4个队列;
步骤二:队列标记。将队列按照一定的分配比例,分别分配给NVM存储介质和NANDflash存储介质,如图1,在组件1011中,标号为SQ1的队列对应NVM存储介质,标号为SQ’的队列对应NAND flash存储介质。相应的底层设备服务于对应的请求队列,从而实现设备与队列的绑定;
步骤三:绑定CPU核。为了减少CPU核之间对同一队列访问所采用的锁机制产生的开销,将CPU核与对应设备队列进行绑定,默认为每个CPU核分配一个NVM SQ(SQ1)和一个NANDflash SQ(SQ’),也可根据当前系统访问特性进行灵活配置。如图1所示,在组件101中,CPU核1和CPU核2分别包含一个NVM SQ(SQ1)和一个NAND flash SQ(SQ’)。
第二个部分,提供一种请求合并与分发机制。如图1组件102所示,具体包括:
步骤一:如图1组件1021所示,在通用块层中维护请求窗口,请求窗口的大小根据待处理请求个数进行调节,当待处理请求大于当前请求窗口的k倍时,增大请求窗口大小,反之,减小当前请求窗口的大小;
步骤二:依据请求所访问的逻辑地址与请求大小,对该窗口内的请求进行合并,为了减少请求合并所产生的开销,仅对由同一个CPU核所执行的多线程发出的请求进行合并,生成新的I/O请求。如图1组件102所示,bio1与bio2合并为新请求R1,bio5和bio6合并为新请求R4,其余请求仍与原来bio相对应。
步骤三:识别请求类型,当请求的字节数超过预定义阈值时,认为该请求为大请求,插入到NAND flash SQ(SQ’)所对应的待处理请求链表中,反之,插入到NVM SQ(SQ1)所对应的待处理请求链表中。如图1组件102所示,分别维护两个指针链表,组件1022为NANDflash待处理请求链表,组件1023为NVM待处理请求链表。
步骤四:遍历请求链表,将待处理请求插入到请求所属CPU核所对应的SQ中。如图1组件101所示,CPU核1中NVM SQ(SQ1)包含在CPU核1中执行的随机小请求R2、R3,NAND flashSQ(SQ’)包含CPU核1中执行的顺序大请求R1。CPU核2中NVM SQ(SQ1)包含在CPU核2中执行的随机小请求R5,NAND flash SQ(SQ’)包含CPU核2中执行的顺序大请求R4。特别地,若当前NVMSQ(SQ1)中的请求达到最大队列深度QD,且NAND flash SQ(SQ’)中的请求数小于预定义阈值min_num,则将该请求发送到NAND flash SQ(SQ’)中。
参阅图2,为本发明的队列配置与绑定机制流程图,从步骤201开始,然后:
在步骤202,进行队列初始化。驱动程序通过发送Set Feature命令咨询NVMe设备Queue数量限制M,根据当前的系统配置以及性能需求,配置NVMe设备的数量N(N≤M),通过发送Create I/O Submission Queue命令在host端创建对应数量的队列。
在步骤203,设置队列标记。使用1bit数据为每个队列添加标记位flag,指示当前队列中的请求由哪个底层存储介质服务。具体地,当flag = 0,表示该队列中的请求由NVM存储介质服务,反之,当flag = 1,表示该队列中的请求由NAND flash存储介质所服务。NVM设备队列数N1与NAND flash设备队列数N2可灵活调配,且要求当存储介质支持的最大队列数大于CPU核数时,N1≥CPU核数,N2≥CPU核数;反之为存储介质支持的最大队列数,且N1+N2=N。
在步骤204,进行CPU与设备队列绑定。为了减少CPU核之间的干扰,将CPU核与队列绑定,初始时分别为每个CPU核分配一个NVM SQ(SQ1)和一个NAND flash SQ(SQ’),可根据应用特性绑定多个SQ,总量不超过总队列数N。
由此完成了设备队列与存储介质,CPU核与设备队列的绑定,进入步骤205结束。
参阅图3,为本发明的请求合并与分发机制流程图,从步骤301开始,然后:
在步骤302,在通用块层维护一个可调节的请求窗口,用于合并该窗口内的请求;
在步骤303,主机端发送I/O请求;
在步骤304,当bio请求到达通用块层时,获取生成该请求的CPU核;
在步骤305,判断当前的bio请求能否与请求窗口中的请求进行合并。具体地,根据该请求所访问的逻辑地址+所访问的物理块号,判断在当前请求窗口中,能否与所属CPU核所产生的bio请求进行合并,即是否有重叠或间隔小于固定值k,若能进入步骤306生成新的I/O请求,否则进入步骤307;
在步骤307,获取请求并识别请求类型。若请求的字节数大于预定义的阈值T,认为该请求为大请求,进入步骤308,将该请求插入到NAND flash SQ(SQ’)链表中;否则为小请求,进入步骤309,将该请求插入到NVM SQ(SQ1)链表中;
依次遍历两个链表,分别将对应的请求插入到请求所属CPU核所对应的队列中。具体地,在步骤310,判断当前即将要插入的NVM SQ中的请求数是否小于队列深度QD,若小于则进入步骤311插入请求,否则进入步骤312,判断同一CPU核中的NAND flash SQ(SQ’)中的请求数是否小于预定义的值min_num,若是,则进入步骤314,插入对应的NAND flash SQ(SQ’)中,否则返回步骤310,等待。在步骤313,判断当前即将要插入的NAND flash SQ(SQ’)中的请求数是否小于队列深度QD,若小于则进入步骤314插入请求,否则返回步骤313,等待。
插入请求后,进入步骤315,更新请求链表指针。
在步骤316,判断请求链表是否为空且通用块层没有待处理请求,若是进入步骤317,结束;否则,返回步骤307,提取请求并处理。
Claims (5)
1.一种基于混合式存储的请求分发方法,其特征在于,该方法包括:
在设备初始化时,设置设备队列数N以及队列深度QD,对设备队列SQ进行标记,完成设备队列与混合式存储设备、CPU核与设备队列之间的绑定;在请求分发时,进行请求合并并根据请求类型插入到对应的请求链表中;将请求链表中的请求插入到对应的设备队列中;其中:
所述混合式存储设备由非易失性NVM存储介质以及NAND flash存储介质构成,向上显示为单一设备,通过PCIeNVMe进行访问;
所述设备队列SQ是指NVMe协议中的SQ,SQ位于主机内存中,存储主机端发送的输入/输出即I/O请求,SQ由主机端管理NVMe设备的Admin命令创建。
2.如权利要求1所述的方法,其特征在于,所述设备队列数N至多为混合式存储设备所支持的最大队列数。
3.如权利要求1所述的方法,其特征在于,所述对设备队列SQ进行标记,完成设备队列与混合式存储设备、CPU核与设备队列之间的绑定,具体为:
使用SQ1标记由NVM存储介质服务的设备队列,使用SQ’标记由NAND flash存储介质服务的设备队列;
由NVM存储介质服务的设备队列数记为N1,N1至多为NVM存储介质所支持的最大队列数,至少为CPU核数;若NVM存储介质所支持的最大队列数不足CPU核数,则N1为NVM存储介质所支持的最大队列数;
由NAND flash存储介质服务的设备队列数记为N2;N2至多为NAND flash存储介质所支持的最大队列数,若NAND flash存储介质所支持的最大队列数不足CPU核数,则N2为NANDflash存储介质所支持的最大队列数;
为每个CPU核优先同时分配一个已标记的由NVM存储介质服务的设备队列SQ1和一个由NAND flash存储介质服务的设备队列SQ’,若NVM存储介质或NAND flash存储介质所支持的最大设备队列数不足CPU核数,则为未分配CPU核分配剩余设备队列。
4.如权利要求1所述的方法,其特征在于,所述在请求分发时,进行请求合并并根据请求类型插入到对应的请求链表中,具体为:
在通用块层中维护一个请求窗口,该请求窗口的大小根据当前通用块层中的bio请求总数进行调节;其中bio是在通用块层中对每个I/O操作的描述;
在通用块层分别维护由NVM存储介质服务的请求链表和由NAND flash存储介质服务的请求链表;
对请求窗口中的请求,依据发送该请求的线程所属的CPU核以及访问的逻辑地址进行合并,判断该请求所访问的逻辑地址+所访问的物理块号与所属请求窗口内由同一CPU核发送的其他bio请求是否有重叠或间隔小于固定值k,若满足可进行合并,生成新的I/O请求;
依据请求所访问的字节数识别请求类型,当访问的字节数超过预定义的阈值T时,将该请求归为大请求,反之为小请求;
当请求被识别为大请求时,插入到由NAND flash存储介质服务的请求链表,反之插入到由NVM存储介质服务的请求链表。
5.如权利要求1所述的方法,其特征在于,所述将请求链表中的请求插入到对应的设备队列中,具体为:
请求插入之前获取发送该请求的线程所执行的CPU核;
由NVM存储介质服务的请求链表中的请求插入到该请求所属CPU核中的设备队列SQ1中,由NAND flash存储介质服务的请求链表中的请求插入到该请求所属CPU核中的SQ’;
将请求插入设备队列时,若该设备队列中的待处理请求数小于最大队列深度QD,则将请求插入该设备队列中,更新链表指针,反之,等待;若当前需插入的为由NVM存储介质服务的设备队列,且该设备队列中的请求数等于队列深度QD,同时同一CPU核中的由NAND flash存储介质服务的设备队列SQ’中的请求数小于预定义的最小请求数min_num时,将该请求插入到SQ’中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010029611.4A CN111208948B (zh) | 2020-01-13 | 2020-01-13 | 一种基于混合式存储的请求分发方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010029611.4A CN111208948B (zh) | 2020-01-13 | 2020-01-13 | 一种基于混合式存储的请求分发方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111208948A true CN111208948A (zh) | 2020-05-29 |
CN111208948B CN111208948B (zh) | 2022-08-09 |
Family
ID=70790100
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010029611.4A Active CN111208948B (zh) | 2020-01-13 | 2020-01-13 | 一种基于混合式存储的请求分发方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111208948B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101021831A (zh) * | 2007-03-19 | 2007-08-22 | 中国人民解放军国防科学技术大学 | 面向科学计算的64位流处理器芯片体系结构 |
CN103810113A (zh) * | 2014-01-28 | 2014-05-21 | 华中科技大学 | 一种非易失存储器和动态随机存取存储器的融合内存系统 |
CN103853665A (zh) * | 2012-12-03 | 2014-06-11 | 华为技术有限公司 | 存储空间分配方法及设备 |
CN107797944A (zh) * | 2017-10-24 | 2018-03-13 | 郑州云海信息技术有限公司 | 一种层次式异构混合内存系统 |
WO2018049899A1 (zh) * | 2016-09-14 | 2018-03-22 | 华为技术有限公司 | 一种队列管理方法及装置 |
US10331600B1 (en) * | 2016-03-31 | 2019-06-25 | EMC IP Holding Company LLC | Virtual I/O queuing |
CN110502334A (zh) * | 2018-05-17 | 2019-11-26 | 上海交通大学 | 基于混合内存架构的带宽感知任务窃取方法、系统及芯片 |
-
2020
- 2020-01-13 CN CN202010029611.4A patent/CN111208948B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101021831A (zh) * | 2007-03-19 | 2007-08-22 | 中国人民解放军国防科学技术大学 | 面向科学计算的64位流处理器芯片体系结构 |
CN103853665A (zh) * | 2012-12-03 | 2014-06-11 | 华为技术有限公司 | 存储空间分配方法及设备 |
CN103810113A (zh) * | 2014-01-28 | 2014-05-21 | 华中科技大学 | 一种非易失存储器和动态随机存取存储器的融合内存系统 |
US10331600B1 (en) * | 2016-03-31 | 2019-06-25 | EMC IP Holding Company LLC | Virtual I/O queuing |
WO2018049899A1 (zh) * | 2016-09-14 | 2018-03-22 | 华为技术有限公司 | 一种队列管理方法及装置 |
CN107797944A (zh) * | 2017-10-24 | 2018-03-13 | 郑州云海信息技术有限公司 | 一种层次式异构混合内存系统 |
CN110502334A (zh) * | 2018-05-17 | 2019-11-26 | 上海交通大学 | 基于混合内存架构的带宽感知任务窃取方法、系统及芯片 |
Non-Patent Citations (1)
Title |
---|
JIANHUA LI ET AL.: "Exploiting set-level write non-uniformity for energy-efficient NVM-based hybrid cache", 《2011 9TH IEEE SYMPOSIUM ON EMBEDDED SYSTEMS FOR REAL-TIME MULTIMEDIA》 * |
Also Published As
Publication number | Publication date |
---|---|
CN111208948B (zh) | 2022-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8595414B2 (en) | Selectively combining commands for a system having non-volatile memory | |
US11487666B2 (en) | Timed data transfer between a host system and a memory sub-system | |
US9009397B1 (en) | Storage processor managing solid state disk array | |
US20200089537A1 (en) | Apparatus and method for bandwidth allocation and quality of service management in a storage device shared by multiple tenants | |
US11573742B2 (en) | Dynamic data placement for collision avoidance among concurrent write streams | |
US11237756B2 (en) | System and method of writing to nonvolatile memory using write buffers | |
US11782841B2 (en) | Management of programming mode transitions to accommodate a constant size of data transfer between a host system and a memory sub-system | |
US20220019360A1 (en) | Credit-based scheduling of memory commands | |
JP7143232B2 (ja) | メモリシステムおよび制御方法 | |
CN108829346A (zh) | 一种适应闪存页差异的固态硬盘的用户写请求处理方法 | |
CN114968081A (zh) | 数据存储系统中的基于利用率的动态共享缓冲器 | |
CN101499956A (zh) | 分级缓冲区管理系统及方法 | |
CN114464234A (zh) | 提供隔离的系统和方法 | |
CN114461133A (zh) | 存储装置中的主机接口层和处理请求的方法 | |
CN108108309A (zh) | 涉及多nand闪存的并行访问方法、固态硬盘和计算机 | |
CN113918087B (zh) | 存储装置以及用于管理存储装置中的命名空间的方法 | |
CN111208948B (zh) | 一种基于混合式存储的请求分发方法 | |
CN115756327A (zh) | 一种固态硬盘及其数据写方法、装置、主机和存储介质 | |
CN114546661A (zh) | 基于内存变换的动态内存分配方法及装置 | |
CN113127385A (zh) | 对存储器子系统的性能控制 | |
US11928360B2 (en) | Command slot management for memory devices | |
US11615826B1 (en) | Dual-address command management using content addressable memory | |
US20220318143A1 (en) | Methods and systems for fast allocation of fragmented caches | |
CN112463355A (zh) | 基于哈希的用户态内存申请固定缓存方法 | |
CN116204451A (zh) | 用于减少存储器系统中的延时的命令优先技术 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |