CN108563585A - A method of it reducing SSD and writes amplification - Google Patents
A method of it reducing SSD and writes amplification Download PDFInfo
- Publication number
- CN108563585A CN108563585A CN201810259559.4A CN201810259559A CN108563585A CN 108563585 A CN108563585 A CN 108563585A CN 201810259559 A CN201810259559 A CN 201810259559A CN 108563585 A CN108563585 A CN 108563585A
- Authority
- CN
- China
- Prior art keywords
- stream
- lba
- task
- host
- ssd
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7205—Cleaning, compaction, garbage collection, erase control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
The invention discloses a kind of methods that reduction SSD writes amplification, it is characterized in that host according to NVMe consensus standards to SSD controller transmitting order to lower levels, the task of each host corresponds to the same continuous flow stream, the starting LBA of the task and termination LBA are first notified SSD controller, SSD controller to allocate individually data of one or more blocks for the Coutinuous store task in advance with LBA is terminated according to starting LBA by host before initiating steam;SSD controller stores the corresponding task datas of identical stream to pre-assigned region according to stream information after receiving Host Command.Using stream functions in NVMe agreements 1.3, the mode of data write-in block is reformed, has reduced garbage reclamation frequency really, reached reduction and write amplification purpose.
Description
Technical field
The present invention relates to technical field of memory more particularly to a kind of methods that reduction SSD writes amplification.
Background technology
NVMe arrange in pairs or groups Nand flash storage mediums solid state disk by means of its high-performance and low-power consumption advantage just gradually
Gradually it is applied to Enterprise Data intensity business.
Enterprise-level business is often that Multi-task Concurrency executes, and each task can cut into multiple orders and be sent to solid state disk again
(SSD), due to being concurrently to execute task, then the order between task, which can be mingled with, is sent to SSD together.
Fig. 1 be conventional host transmitting order to lower levels and execute schematic diagram, at present SSD according to host write order transmitting sequence, according to
In the secondary block (minimum unit of data erasing) for being written to Nand Flash, i.e. it may store in some block of SSD
The corresponding data of multiple tasks, the manifolding with host to partial task (data) cause only partly effective in most block
Data need to start garbage reclamation (garbage collection) machine inside SSD due to the characteristic of Nand Flash itself
It makes to discharge block, i.e. vacating space stores subsequent host data.
Fig. 2 is the processing schematic diagram of host manifolding task, and due to being data-intensive enterprise-level business, host makes carbon copies certain
The scene of a task (corresponding data) is recurrent, and after host makes carbon copies task 1 in Fig. 1, task 1 is old in a flash memory
Data are deactivated, and new data is written in new Physical Page, then produce two invalid physical pages in block1, in block2
Generate an invalid physical page, the characteristics of Nand Flash flash memories be could store new data after block must be wiped, then for
Vacate the space shared by invalid physical page, it is necessary to after effective Physical Page moves new block in block1, then wipe
Block1, here it is garbage reclamation mechanisms.But frequent garbage reclamation has following influence:
1, it increases and writes amplification (write amplification), because same host data is repeatedly written to
Nand Flash。
2, the readwrite performance of SSD is reduced during garbage reclamation.
3, erasing times are excessive, shorten the SSD service life.
Invention content
For disadvantages described above, present invention aims at how to reduce SSD to write amplification.
To achieve the goals above, the present invention provides a kind of methods that reduction SSD writes amplification, it is characterised in that host is pressed
According to NVMe consensus standards to SSD controller transmitting order to lower levels, the task of each host corresponds to the same continuous flow stream, host
Before initiating steam first by the starting LBA of the task and terminate LBA notify SSD controller, SSD controller according to starting LBA and
It terminates LBA and allocates data of one or more the individual blocks for the Coutinuous store task in advance;SSD controller receives host
The corresponding task datas of identical stream are stored to pre-assigned region according to stream information after order.
The method that the reduction SSD writes amplification, it is characterised in that when host sends the data of some stream, directly delete
Except being pre-assigned to one or more corresponding blocks of the stream.
The method that the reduction SSD writes amplification, it is characterised in that SSD controller is equipped with stream information registration forms,
For recording all stream marks, the corresponding starting LBA of the stream and the address for terminating LBA and the physical block of distribution.
The present invention utilizes stream functions in NVMe agreements 1.3, has reformed the mode of data write-in block, has reduced really
Garbage reclamation frequency has reached reduction and has write amplification purpose.
Description of the drawings
Fig. 1 is conventional host transmitting order to lower levels and execution schematic diagram;
Fig. 2 is the processing schematic diagram of host manifolding task;
Fig. 3 is to utilize the improved order distribution schematic diagram of stream functions in NVMe agreements 1.3;
Fig. 4 is to utilize stream function post command execution flow charts in NVMe agreements 1.3.
Specific implementation mode
Following will be combined with the drawings in the embodiments of the present invention, and technical solution in the embodiment of the present invention carries out clear, complete
Site preparation describes, it is clear that described embodiments are only a part of the embodiments of the present invention, instead of all the embodiments.It is based on
Embodiment in the present invention, those of ordinary skill in the art are obtained every other without creative efforts
Embodiment shall fall within the protection scope of the present invention.
It is according to the reason of previous analysis garbage reclamation mechanism frequent starting, the multitask that host is initiated is entrained in one
It rises and is written in the block of Nand Flash, when the corresponding data of some task are made carbon copies or deleted to host, meeting in block
Part invalid physical page is generated, in order to vacate these invalid pages, it is necessary to enable garbage reclamation mechanism.
If the controller of SSD can know that the information of host task, the write command data for belonging to same task is written to
In identical block, then after follow-up host is made carbon copies or deletes the task, all Physical Page can fail together in block, at this time
SSD controller only needs directly to wipe the block, without starting garbage reclamation mechanism.
Fig. 4 is to utilize stream function post command execution flow charts in NVMe agreements 1.3.
NVMe1.3 protocol definitions stream functions, briefly, each task of host can correspond to a stream,
There are two attributes for each stream tools:It originates LBA and terminates LBA.Host is before the task of initiation (stream) first by this
The starting LBA and termination LBA of business inform that SSD controller, SSD controller need to remember the two attributes of the stream, simultaneously
A new block is distributed for the stream, between the LBA band for all write orders for belonging to this task that follow-up host is initiated all
Can compare whether belong to some between the LBA band of the order between [starting LBA, terminate LBA], after SSD controller takes order
The data of the order are if it is written in corresponding block by stream.
Assuming that host is there are three task, the starting LBA=0 of task 1, LBA=15 is terminated, the starting LBA=32 of task 2,
LBA=63 is terminated, the starting LBA=100 of task 3, terminates LBA=115, it is further assumed that each Physical Page of Nand Flash flash memories
The data of 1 LBA (512B) are stored, each block can store 16 LBA.Workflow is as follows:
The first step:The starting LBA of three tasks (stream) and termination LBA information are informed SSD controller by host.
Second step:The starting LBA of these three good stream of SSD controller internal record and the information for terminating LBA are simultaneously
These three stream distribute an independent block respectively, it is assumed that distribute block1 for stream1, distributed for stream2
Block2 and block3 distributes block4 for stream3.
Third walks:Host concurrently executes three tasks, it is assumed that each one LBA of command description, the then life of these three tasks
Order is mingled with is sent to SSD together.
4th step:SSD controller receives a big string command, analyzes which stream the LBA each ordered belongs to, if
LBA belongs to [0,15] and the data of the order is then written to block1, if LBA belongs to [32,63] then by the data of the order
It is written to block2 or block3 (being written in order), is then written to the data of the order if LBA belongs to [100,115]
Block4, the storage condition such as Fig. 3 of the final corresponding data of these three tasks on Nand Flash.Fig. 3 is assisted using NVMe
Schematic diagram is distributed in the improved order of stream functions in view 1.3.From figure 3, it can be seen that the corresponding data of each stream
In the same block, if follow-up host deletes the data of stream2, then SSD controller need to only deactivate entire block2
And block3, it then directly wipes, without starting garbage reclamation mechanism, greatly reduces and write amplification, simultaneously as not having
Garbage reclamation task is executing, and the readwrite performance of host will get a promotion
Above disclosed is only an embodiment of the present invention, cannot limit the right model of the present invention with this certainly
It encloses, those skilled in the art can understand all or part of the processes for realizing the above embodiment, and is wanted according to right of the present invention
Equivalent variations made by asking still fall within the range that the present invention is covered.
Claims (3)
1. a kind of method that reduction SSD writes amplification, it is characterised in that host issues life according to NVMe consensus standards to SSD controller
It enables, the task of each host corresponds to the same continuous flow stream, and host is before initiating steam first by the starting of the task
LBA and termination LBA notifies SSD controller, SSD controller to allocate individual 1 or more in advance with LBA is terminated according to starting LBA
Data of a block for the Coutinuous store task;SSD controller will be identical according to stream information after receiving Host Command
The corresponding task datas of stream are stored to pre-assigned region.
2. the method that reduction SSD according to claim 1 writes amplification, it is characterised in that host sends the number of some stream
According to when, directly delete be pre-assigned to one or more corresponding blocks of the stream.
3. the method that reduction SSD according to claim 1 writes amplification, it is characterised in that SSD controller is equipped with stream
Information registration form, for recording all stream marks, the corresponding starting LBA of the stream and the object for terminating LBA and distribution
Manage the address of block.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810259559.4A CN108563585A (en) | 2018-03-27 | 2018-03-27 | A method of it reducing SSD and writes amplification |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810259559.4A CN108563585A (en) | 2018-03-27 | 2018-03-27 | A method of it reducing SSD and writes amplification |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108563585A true CN108563585A (en) | 2018-09-21 |
Family
ID=63533440
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810259559.4A Pending CN108563585A (en) | 2018-03-27 | 2018-03-27 | A method of it reducing SSD and writes amplification |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108563585A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111209226A (en) * | 2020-01-06 | 2020-05-29 | 深圳忆联信息系统有限公司 | Method and device for reducing NVMe solid state disk write amplification and computer equipment |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN203191967U (en) * | 2013-03-11 | 2013-09-11 | 北京忆恒创源科技有限公司 | Computer system |
CN103744615A (en) * | 2013-12-17 | 2014-04-23 | 记忆科技(深圳)有限公司 | Dynamic compensation receiver and dynamic compensation receiving method |
CN105556930A (en) * | 2013-06-26 | 2016-05-04 | 科内克斯实验室公司 | NVM EXPRESS controller for remote memory access |
US20160357776A1 (en) * | 2014-01-08 | 2016-12-08 | Netapp, Inc. | Flash optimized, log-structured layer of a file system |
CN107797763A (en) * | 2016-09-02 | 2018-03-13 | 三星电子株式会社 | Solid-state drive, driver and the method for controlling solid-state drive |
-
2018
- 2018-03-27 CN CN201810259559.4A patent/CN108563585A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN203191967U (en) * | 2013-03-11 | 2013-09-11 | 北京忆恒创源科技有限公司 | Computer system |
CN105556930A (en) * | 2013-06-26 | 2016-05-04 | 科内克斯实验室公司 | NVM EXPRESS controller for remote memory access |
CN103744615A (en) * | 2013-12-17 | 2014-04-23 | 记忆科技(深圳)有限公司 | Dynamic compensation receiver and dynamic compensation receiving method |
US20160357776A1 (en) * | 2014-01-08 | 2016-12-08 | Netapp, Inc. | Flash optimized, log-structured layer of a file system |
CN107797763A (en) * | 2016-09-02 | 2018-03-13 | 三星电子株式会社 | Solid-state drive, driver and the method for controlling solid-state drive |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111209226A (en) * | 2020-01-06 | 2020-05-29 | 深圳忆联信息系统有限公司 | Method and device for reducing NVMe solid state disk write amplification and computer equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7984230B2 (en) | Allocation of logical volumes to flash memory drives | |
RU2661280C2 (en) | Massive controller, solid state disk and data recording solid state disk control method | |
CN109582227B (en) | Solid state disk writing method and device, computer equipment and storage medium | |
CN104866428B (en) | Data access method and data access device | |
US8392670B2 (en) | Performance management of access to flash memory in a storage device | |
US20100174865A1 (en) | Dynamic data security erasure | |
KR101910759B1 (en) | Transaction processing method, apparatus and computer system | |
US20200363977A1 (en) | Data Migration Method, Host, and Solid State Disk | |
US20200183831A1 (en) | Storage system and system garbage collection method | |
JP2009181148A (en) | Storage subsystem | |
CN103761190A (en) | Data processing method and apparatus | |
CN109144406B (en) | Metadata storage method, system and storage medium in distributed storage system | |
TWI712881B (en) | Electronic machine and its control method, computer system and its control method, and host control method | |
CN101918913A (en) | Reclaiming storage on a thin-provisioning storage device | |
US10585589B2 (en) | Data collation method, storage device, storage controller, and storage array | |
WO2017063495A1 (en) | Data migration method and apparatus | |
US9251149B2 (en) | Data set size tracking and management | |
US20190243758A1 (en) | Storage control device and storage control method | |
JP2005316635A (en) | Data processing system and method, and processing program therefor | |
WO2019090493A1 (en) | Memory block recovery method and device | |
CN113377695A (en) | Data distribution method of read-write separation solid-state storage device | |
CN112783449A (en) | Data migration method and device | |
CN104572492A (en) | Method and apparatus of burning data to FAT (File Allocation Table)32 partition | |
CN108563585A (en) | A method of it reducing SSD and writes amplification | |
CN108563586B (en) | Method for separating garbage recovery data and user data in solid-state disk |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180921 |