CN117806837A - 一种硬盘任务管理方法、装置、存储介质及系统 - Google Patents
一种硬盘任务管理方法、装置、存储介质及系统 Download PDFInfo
- Publication number
- CN117806837A CN117806837A CN202410226776.9A CN202410226776A CN117806837A CN 117806837 A CN117806837 A CN 117806837A CN 202410226776 A CN202410226776 A CN 202410226776A CN 117806837 A CN117806837 A CN 117806837A
- Authority
- CN
- China
- Prior art keywords
- task
- host
- hard disk
- prediction model
- prediction
- 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
- 238000000034 method Methods 0.000 title claims abstract description 64
- 230000004044 response Effects 0.000 claims abstract description 51
- 238000007726 management method Methods 0.000 claims description 39
- 238000013500 data storage Methods 0.000 claims description 23
- 238000005299 abrasion Methods 0.000 claims description 15
- 238000012549 training Methods 0.000 claims description 15
- 230000008569 process Effects 0.000 claims description 11
- 238000007781 pre-processing Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 4
- 239000007787 solid Substances 0.000 description 21
- 238000010586 diagram Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000001364 causal effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
-
- 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)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开一种硬盘任务管理方法、装置、存储介质及系统,涉及存储技术领域。方法包括:使用第一预测模型预测主机任务,预测获得第一主机任务的预测结束时刻;响应于第一主机任务执行完毕,判断第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差是否小于预设时间;响应于第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差小于预设时间,则执行硬盘内部任务;响应于第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差大于或等于预设时间,则执行下一个主机任务。根据模型对主机任务的预测,管理硬盘对主机任务或硬盘内部任务的执行,减少主机任务与内部任务同时访问闪存,提高硬盘读写性能。
Description
技术领域
本发明涉及存储技术领域,特别涉及一种硬盘任务管理方法、装置、存储介质及系统。
背景技术
固态硬盘(Solid State Disk,SSD)相较于机械硬盘(Hard Disk Drive,HDD)具有更快的访问速度、更高的数据传输率、更好的耐用性和更低的能耗,在商用电脑、服务器等领域逐渐替代机械硬盘,成为数据存储介质的主力军。由主机向固态硬盘发出的读、写命令由固态硬盘控制器响应并执行。固态硬盘控制器除了处理主机命令外,还负责处理与闪存相关的内部控制、管理任务,如:垃圾回收任务(Garbage Collection,GC)。执行内部任务会占用固态硬盘资源和底层闪存带宽,主机任务与内部任务对闪存的访问争用,将造成主机读写性能下降。而随着固态硬盘不断被写入数据,内部任务的执行频率提高,主机对固态硬盘的读写性能将受到严重影响。
发明内容
为了解决现有技术中,主机任务与固态硬盘内部任务争用闪存,导致主机对固态硬盘读写性能下降的问题。本发明采用如下技术方案,基于模型预测,对主机任务以及硬盘内部任务进行管理,提高主机读/写性能。
第一方面,提供一种硬盘任务管理方法,包括:使用第一预测模型预测主机任务,预测获得第一主机任务的预测结束时刻;
响应于第一主机任务执行完毕,判断第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差是否小于预设时间;响应于第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差小于预设时间,则执行硬盘内部任务,其中,硬盘内部任务包括垃圾回收;响应于第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差大于或等于预设时间,则执行下一个主机任务。
进一步地,使用第一预测模型预测主机任务之前,还包括:判断第一预测模型是否完成更新;响应于第一预测模型完成更新,则使用更新后的第一预测模型进行主机任务预测。
进一步地,响应于第一预测模型未完成更新,则使用当前第一预测模型进行主机任务预测;
继续训练第一预测模型,获取相应的最新第一预测模型参数;以相应的最新第一预测模型参数替换当前第一预测模型参数,完成对第一预测模型的更新。
进一步地,硬盘任务管理方法还包括:每间隔第一预设时间,更新主机任务数据样本集;采用更新后的主机任务数据样本集训练第一预测模型,获得最新第一预测模型参数;以最新第一预测模型参数更新第一预测模型。
进一步地,使用第一预测模型预测主机任务,包括:从主机I/O任务信息中,获取历史主机任务特征样本;将历史主机任务特征样本作为第一预测模型输入集,输入第一预测模型,获得主机任务预测结果,其中,主机任务预测结果包括第一主机任务结束时刻。
进一步地,从主机I/O任务信息中,获取历史主机任务特征样本之后,还包括:对历史主机任务特征样本进行预处理;
以预处理后的历史主机任务特征样本替代历史主机任务特征样本作为第一预测模型输入集,输入第一预测模型,获得主机任务预测结果。
进一步地,执行硬盘内部任务包括:启动内部任务,获取拟回收闪存块数量;根据拟回收闪存块数量,第一主机任务的预测结束时刻,以及第二主机任务的预测开始时刻,计算内部任务预测持续时长,内部任务执行速度;以内部任务执行速度执行内部任务,直至完成内部任务,其中,内部任务预测持续时长为第二主机任务的预测开始时刻与第一主机任务的预测结束时刻之差,第二主机任务的预测开始时刻由第一预测模型预测获得,内部任务执行速度为拟回收闪存块数量与内部任务预测持续时长之比值。
进一步地,硬盘任务管理方法还包括:响应于在内部任务执行过程中接收到主机任务,则以预设速度执行内部任务,直至内部任务完成。
进一步地,第一预测模型为时域卷积网络模型。
进一步地,执行下一个主机任务包括:从主机任务请求队列中获取下一个主机任务请求,并判断下一个主机任务请求的类型;响应于下一个主机任务请求为写入请求,则根据写入请求,将写入请求所对应的数据写入硬盘相应位置。
进一步地,根据写入请求,将写入请求对应的数据写入硬盘相应位置,包括:
根据写入请求,通过第二预测模型获得相应的写入任务参数,其中,写入任务参数包括数据保存时长;根据数据保存时长,调用空闲闪存块,保存对应于写入请求的数据。
进一步地,根据写入请求,通过第二预测模型获得相应的写入任务参数,包括:
根据写入请求,提取写入任务特征,其中,写入任务特征包括:逻辑块地址、数据容量;根据写入任务特征更新写入任务输入集;将写入任务输入集输入第二预测模型,获得写入任务参数。
进一步地,根据写入请求,提取写入任务特征之后,还包括:对写入任务特征进行预处理;以与处理后的写入任务特征更新写入任务输入集,以替代以写入任务特征更新写入任务输入集。
进一步地,根据数据保存时长,调用空闲闪存块,保存对应于写入请求的数据,包括:以磨损值的大小顺序,对空闲闪存块进行排序,获得空闲闪存块队列;响应于数据保存时长大于或等于保存时长阈值,则从空闲闪存块队列磨损值较大的一端获取空闲闪存块,保存相应数据;响应于数据保存时长小于保存时长阈值,则从空闲闪存块队列磨损值较小的一端获取空闲闪存块,保存相应数据。
进一步地,根据写入请求,通过第二预测模型获得相应的写入任务参数之前,还包括:判断第二预测模型是否完成更新;响应于第二预测模型完成更新,则使用更新后的第二预测模型获取写入任务参数。
进一步地,响应于第二预测模型未完成更新,则使用当前第二预测模型获取写入任务参数;继续训练第二预测模型,获取相应的最新第二预测模型参数;以相应的最新第二预测模型参数替换当前第二预测模型参数,完成对第二预测模型的更新。
进一步地,硬盘任务管理方法还包括:每间隔第二预设时间,更新写入任务数据样本集;采用更新后的写入任务数据样本集训练第二预测模型,获得最新第二预测模型参数;以最新第二预测模型参数更新第二预测模型。
进一步地,硬盘任务管理方法还包括:响应于下一个主机任务为读取请求,则执行读取请求对应的读取任务。
进一步地,执行读取请求对应的读取任务,包括:根据读取请求,从闪存中读取相应数据;对读取到的相应数据进行解码,将解码后的数据回传至主机,完成数据读取过程。
进一步地,响应于主机任务队列为空,则执行内部任务;响应于内部任务执行完成,则等待下一主机任务的到来。
进一步地,第二预测模型为时域卷积网络模型。
第二方面,提供一种硬盘任务管理装置,包括:预测模块,用于使用第一预测模型预测主机任务,预测获得第一主机任务的预测结束时刻;判断模块,用于响应于第一主机任务执行完毕,判断第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差是否小于预设时间;内部任务执行模块,用于响应于第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差小于预设时间,则执行硬盘内部任务,其中,硬盘内部任务包括垃圾回收;主机任务执行模块,用于响应于第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差大于或等于预设时间,则执行下一个主机任务。
第三方面,提供一种计算机可读存储介质,其上存储有硬盘任务管理程序,硬盘任务管理程序被处理器执行时,实现第一方面记载的硬盘任务管理方法。
第四方面,提供一种硬盘任务管理系统,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的硬盘任务管理程序,处理器执行硬盘任务管理程序时,实现第一方面记载的硬盘任务管理方法。
本发明实施例提供的技术方案带来的有益效果是:能够根据模型对主机任务的预测,管理硬盘对主机任务或硬盘内部任务的执行,减少主机任务与内部任务同时访问闪存,提高硬盘读写性能。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是增加数据预测模块的固态硬盘架构示意图;
图2是本发明实施例提供的一种硬盘任务管理方法示意图;
图3是本发明实施例提供的预测模型架构示意图;
图4是本发明实施例提供的输入序列和输出序列示意图;
图5是本发明实施例提供的一种硬盘任务管理装置示意图;
图6是本发明实施例提供的一种硬盘任务管理系统示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“一个”、“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。说明书附图中的编号,仅表示对各个功能部件或模块的区分,不表示部件或模块之间的逻辑关系。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
下面,将参照附图详细描述根据本公开的各个实施例。需要注意的是,在附图中,将相同的附图标记赋予基本上具有相同或类似结构和功能的组成部分,并且将省略关于它们的重复描述。
为了缓解主机任务与内部任务对闪存同时访问,导致主机读写性能下降的问题。近年来,涌现出很多优化内部任务(垃圾回收、均匀磨损)的方法。基于及其学习(MachineLearning,ML)的热数据预测方法,可以较好地应用于各种工作负载,如图1所示。相比于传统固态硬盘架构,增加了数据预测模块,采用回声状态网络主动学习并预测热数据行为规律,将热数据的识别转换为热数据的主动预测,实现冷/热数据分离。进而减少垃圾回收的触发次数,降低主机任务的平均响应时间。
但是,现有方法大多着眼于优化固态硬盘内部任务,缺少从主机任务与内部任务协同工作的角度,对固态硬盘的任务分配进行优化的方法。随着固态硬盘被不断写入数据,内部任务被触发的频率增高。仅对固态硬盘内部任务进行优化,难以进一步提高主机任务的读/写性能。
针对现有技术中,主机任务与固态硬盘内部任务争用闪存,导致主机对固态硬盘读写性能下降的问题。本发明采用如下技术方案,基于模型预测,对主机任务以及硬盘内部任务进行管理,提高主机读/写性能。
在一些实施例中,如图2所示,一种硬盘任务管理方法,包括:S100:使用第一预测模型预测主机任务,预测获得第一主机任务的预测结束时刻;
S200:响应于第一主机任务执行完毕,判断第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差是否小于预设时间;S300:响应于第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差小于预设时间,则执行硬盘内部任务,其中,硬盘内部任务包括垃圾回收;
S400:响应于第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差大于或等于预设时间,则执行下一个主机任务。
第一预测模型用于对主机任务参数进行预测,获得主机任务的预测类型,主机任务的预测开始时刻,主机任务的预测结束时刻。优选地,预测开始时刻、预测结束时刻以主机CPU时间戳为参考时间。相应地,第一主机任务对应于当前正在执行的主机任务,第二主机任务对应于下一个将被执行的主机任务。经第一预测模型的预测,可以得到第一主机任务的预测类型,第一主机任务的预测开始时刻,第一主机任务的预测结束时刻;第二主机任务的预测类型,第二主机任务的预测开始时刻,第二主机任务的预测结束时刻。当前主机任务的结束时刻即为任务空闲时间段的开始时刻,下一个主机任务的开始时刻即为任务空闲时间段的结束时刻;相应地,第一主机任务的预测结束时刻,即为任务空闲预测时间段的开始时刻,第二主机任务的预测开始时刻,即为任务空闲预测时间段的结束时刻。相应地,当前主机任务的结束时刻与下一个主机任务的开始时刻获取于主机CPU时间戳。将第二主机任务的预测开始时刻与第一主机任务的预测结束时刻作差,可以得到任务空闲预测时间段的时长。在任务空闲时间段内,固态硬盘可以执行内部任务,内部任务包括:垃圾回收、磨损均衡(Wear Leveling,WL)等。
预设时间用于衡量第一预测模型的预测精度,由设置得到。
第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差小于预设时间,说明模型预测精度高;若第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差大于或等于预设时间,说明模型预测精度低。
在模型预测精度高的情况下,对于任务空闲预测时间段的预测精度高,此时,硬盘可利用任务空闲预测时间段指示的时间处理垃圾回收、磨损均衡等硬盘内部任务。在模型预测精度低的情况下,硬盘优先处理主机任务。
主机任务包括读取任务以及写入任务。
优选地,S100:使用第一预测模型预测主机任务之前,还包括:S010:判断第一预测模型是否完成更新;S020:响应于第一预测模型完成更新,则使用更新后的第一预测模型进行主机任务预测。
可选地,S020ʹ:响应于第一预测模型未完成更新,则使用当前第一预测模型进行主机任务预测;S021ʹ:继续训练第一预测模型,获取相应的最新第一预测模型参数;S022ʹ:以相应的最新第一预测模型参数替换当前第一预测模型参数,完成对第一预测模型的更新。
对第一预测模型的更新,即更新第一预测模型参数。第一预测模型的预测和训练可同步进行。在第一预测模型未更新完成时,采用老版第一预测模型参数的第一预测模型进行主机任务预测;在第一预测模型更新完成购,采用新版第一预测模型参数的第一预测模型进行主机任务预测。
优选地,硬盘任务管理方法还包括:S001:每间隔第一预设时间,更新主机任务数据样本集;S002:采用更新后的主机任务数据样本集训练第一预测模型,获得最新第一预测模型参数;S003:以最新第一预测模型参数更新第一预测模型。
第一预测模型部署于主机侧,主机任务数据样本集是用于训练第一预测模型的数据集。
随着时间的推移、负载的运行,主机任务的数量不断增多,主机任务保存于I/Otrac中,作为主机I/O任务信息。当I/O trace中数据的时间跨度为第一周期的整数倍时,将上一个第一周期内的主机任务数据扩充至主机任务数据样本集,重新训练第一预测模型,以提高第一预测模型的预测精度。第一周期可以是一周、半个月、一个月等。优选地,第一预测模型的训练可以在计算机或服务器的图形处理器(Graphics Processing Unit,GPU)上进行。主机任务数据样本集中的每个样本数据主要关注以下特征:(IOtype,Tstart,Tend),其中,IOtype为主机任务类型,Tstart为相应主机任务的开始时刻,Tend为相应主机任务的结束时刻。主机任务数据样本集,包含所有在I/O trace中出现过的任务特征数据。随着主机任务数据样本集的增大,第一预测模型的精度将通过训练提高。
优选地,主机任务数据样本集中的所有数据为归一化数据。
具体地,S100:使用第一预测模型预测主机任务,包括:S110:从主机I/O任务信息中,获取历史主机任务特征样本;S120:将历史主机任务特征样本作为第一预测模型输入集,输入第一预测模型,获得主机任务预测结果,其中,主机任务预测结果包括第一主机任务结束时刻。
从主机I/O任务信息中获取的历史主机任务特征样本,包括(IOtype,Tstart,Tend)三个方面的数据。历史主机任务特征样本包含所有在I/O trace中出现过的任务特征数据。随着历史主机特征样本规模的增大,第一预测模型的预测精度将提高。
优选地,S110:从主机I/O任务信息中,获取历史主机任务特征样本之后,还包括:
S115:对历史主机任务特征样本进行预处理;S120ʹ:以预处理后的历史主机任务特征样本替代历史主机任务特征样本作为第一预测模型输入集,输入第一预测模型,获得主机任务预测结果。
在一些较优的实施例中,第一预测模型输入集中的样本数据为归一化数据。
具体地,执行硬盘内部任务包括:S310:启动内部任务,获取拟回收闪存块数量;S320:根据拟回收闪存块数量,第一主机任务的预测结束时刻,以及第二主机任务的预测开始时刻,计算内部任务预测持续时长,内部任务执行速度;
S330:响应于内部任务持续时长未超过任务空闲预测时间段的时长,则以内部任务执行速度执行内部任务,直至完成内部任务,其中,内部任务预测持续时长即为任务空闲预测时间段,任务空闲预测时间段的时长为第二主机任务的预测开始时刻与第一主机任务的预测结束时刻之差,第二主机任务的预测开始时刻由第一预测模型预测获得。
内部任务执行速度,由拟回收闪存块数量与内部任务预测持续时长之比值,计算得到。
可选地,硬盘任务管理方法还包括:S340:响应于在内部任务执行过程中接收到主机任务,则以预设速度执行内部任务,直至内部任务完成。
预设速度由设置得到。通常,将预设速度设置为对硬盘内部任务执行的最小速度,以让出足够的带宽处理主机任务。
具体地,执行下一个主机任务包括:S410:从主机任务请求队列中获取下一个主机任务请求,并判断下一个主机任务请求的类型;S420:响应于下一个主机任务请求为写入请求,则根据写入请求,将写入请求所对应的数据写入硬盘相应位置。
具体地,根据写入请求,将写入请求对应的数据写入硬盘相应位置,包括:S421:根据写入请求,通过第二预测模型获得相应的写入任务参数,其中,写入任务参数包括数据保存时长;S422:根据数据保存时长,调用空闲闪存块,保存对应于写入请求的数据。
具体地,S421:根据写入请求,通过第二预测模型获得相应的写入任务参数,包括:S4211:根据写入请求,提取写入任务特征,其中,写入任务特征包括:逻辑块地址、数据容量;S4212:根据写入任务特征更新写入任务输入集;S4213:将写入任务输入集输入第二预测模型,获得写入任务参数。
可选地,S4211:根据写入请求,提取写入任务特征之后,还包括:S42111ʹ:对写入任务特征进行预处理;S4212ʹ:以与处理后的写入任务特征更新写入任务输入集,以替代以写入任务特征更新写入任务输入集。
具体地,S422:根据数据保存时长,调用空闲闪存块,保存对应于写入请求的数据,包括:S4221:以磨损值的大小顺序,对空闲闪存块进行排序,获得空闲闪存块队列;S4222:响应于数据保存时长大于或等于保存时长阈值,则从空闲闪存块队列磨损值较大的一端获取空闲闪存块,保存相应数据;S4223:响应于数据保存时长小于保存时长阈值,则从空闲闪存块队列磨损值较小的一端获取空闲闪存块,保存相应数据。
磨损值(Program/Erase,PE)是一个闪存块能够被擦写的次数,反应闪存块的寿命。闪存块的磨损值越小,其可被擦写的次数越大;闪存块的磨损值越大,其可被擦写的次数越小。当闪存块的磨损值逼近额定磨损值时,其失效风险将大大提升。不宜再用于保存数据。
数据保存时长指示了第二预测模型对相应数据保持为有效数据的时间预测。当保存数据的闪存块所对应的逻辑地址被再次写入数据时,闪存块上的数据失效。保存无效数据的闪存块将作为拟回收闪存块,在垃圾回收过程中被擦除。对拟回收闪存块擦除后,获得空闲闪存块。
定义数据保存时长大于或等于保存时长阈值的数据为冷数据,数据保存时长小于保存时长阈值的数据为热数据。为了均衡固态硬盘中闪存块的磨损值,是闪存块之间的磨损均匀,避免出现局部坏块的情况。将冷数据保存于磨损值较大的空闲闪存块,将热数据保存于磨损值较小的空闲闪存块。
相应地,保存冷数据的闪存块组成冷池;保存热数据的闪存块组成热池。冷池的数据保存时间下限即为保存时长阈值。
优选地,S421:根据写入请求,通过第二预测模型获得相应的写入任务参数之前,还包括:S4201:判断第二预测模型是否完成更新;S4202:响应于第二预测模型完成更新,则使用更新后的第二预测模型获取写入任务参数。
可选地,S4202ʹ:响应于第二预测模型未完成更新,则使用当前第二预测模型获取写入任务参数;S4203ʹ:继续训练第二预测模型,获取相应的最新第二预测模型参数;S4204ʹ:以相应的最新第二预测模型参数替换当前第二预测模型参数,完成对第二预测模型的更新。
优选地,硬盘任务管理方法还包括:S401:每间隔第二预设时间,更新写入任务数据样本集;S402:采用更新后的写入任务数据样本集训练第二预测模型,获得最新第二预测模型参数;S403:以最新第二预测模型参数更新第二预测模型。
第二预测模型部署于固态硬盘侧,用于评估每个写入数据的数据保存时间、数据写入时间。
数据写入时间是指将数据写入硬盘花费的时间。
随着时间的推移、负载的运行,写入硬盘的数量不断增多,当时间跨度为第二周期的整数倍时,将上一个第二周期内的主机任务数据扩充至写入任务数据样本集,重新训练第二预测模型,以提高第二预测模型的预测精度。第二周期可以是一周、半个月、一个月等。写入任务数据样本集中的每个样本数据主要关注以下特征:(LBA,IOlen,IOseq),其中,LBA为逻辑区块地址,IOlen为数据容量,IOseq为写入类型。写入任务数据样本集包含所有写入硬盘的数据特征。随着写入硬盘数据的增加,写入任务样本集的容量增大,第二预测模型的精度将通过训练提高。
可选地,硬盘任务管理方法还包括:S420ʹ:响应于下一个主机任务为读取请求,则执行读取请求对应的读取任务。
具体地,执行读取请求对应的读取任务,包括:S421ʹ:根据读取请求,从闪存中读取相应数据;S422ʹ:对读取到的相应数据进行解码,将解码后的数据回传至主机,完成数据读取过程。
优选地,对读取到的相应数据进行ECC解码。
可选地,响应于主机任务队列为空,则S411ʹ:执行内部任务;
S412ʹ:响应于内部任务执行完成,则等待下一主机任务的到来。
具体地,第一预测模型、第二预测模型为时域卷积网络(Temporal ConvolutionalNetwork,TCN)模型。
以下将简述将时域卷积网络,以及将其应用于第一预测模型、第二预测模型的原理。
图3示出了预测模型架构,第一、第二预测模型架构。包括特征序列输入、嵌入层、特征融合、Dropout层、增强层、输出层,其中增强层由多个残差块组成(如100个或500个),残差块主要由扩张因果卷积组成,扩张因果卷积的计算公式如下:
其中,输入序列为,卷积滤波器为,卷积核大小
为k。d为扩张因子,取值为2A-1,其中,A为自然数。不同卷积层扩张因子不同,为先前层
的特征,表示时间序列演进的方向。卷积核的感受野为 。残差块的
输出为:,为激活函数。
图4为输入序列和输出序列示例图,输入序列为主机任务数据样本集,或写入任务数据样本集。
输入长度为输入序列的长度,输出长度为预测结果的长度,输入序列和输出序列的长度相等。例如:若要预测下一个数据,则输出长度为1。
输出序列与输入序列重合一部分,输入序列和输出序列的长度可根据经验设置,如设置为100,目标序列和输入序列的重合长度可设置为输入长度与输出长度之差。
应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在另一些实施例中,如图5所示,一种硬盘任务管理装置,包括:预测模块,用于使用第一预测模型预测主机任务,预测获得第一主机任务的预测结束时刻;判断模块,用于响应于第一主机任务执行完毕,判断第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差是否小于预设时间;
内部任务执行模块,用于响应于第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差小于预设时间,则执行硬盘内部任务,其中,硬盘内部任务包括垃圾回收;主机任务执行模块,用于响应于第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差大于或等于预设时间,则执行下一个主机任务。
关于硬盘任务管理装置的具体限定可以参见上文中对于硬盘任务管理方法的限定,在此不再赘述。上述硬盘任务管理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在另一些实施例中,一种计算机可读存储介质,其上存储有硬盘任务管理程序,硬盘任务管理程序被处理器执行时,实现第一方面记载的硬盘任务管理方法。硬盘任务管理方法已在前文详细阐述,在此不再赘述。
在另一些实施例中,如图6所示,一种硬盘任务管理系统,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的硬盘任务管理程序,处理器执行硬盘任务管理程序时,实现第一方面记载的硬盘任务管理方法。硬盘任务管理方法已在前文详细阐述,在此不再赘述。
通过实施本发明实施例公开的一种硬盘任务管理方法、装置、存储介质及系统,能够根据模型对主机任务的预测,管理硬盘对主机任务或硬盘内部任务的执行,减少主机任务与内部任务同时访问闪存,提高硬盘读写性能;当对闪存的访问不可避免时,降低内部任务的执行速度,以较大的带宽处理主机任务;通过模型计算写入数据特征,根据冷、热数据属性分别保存至相应的闪存块,均匀闪存块的磨损值,延长固态硬盘使用时间。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
实施例一
一种硬盘任务管理方法,如图2所示,包括:S100:使用第一预测模型预测主机任务,预测获得第一主机任务的预测结束时刻;S200:响应于第一主机任务执行完毕,判断第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差是否小于预设时间;S300:响应于第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差小于预设时间,则执行硬盘内部任务,其中,硬盘内部任务包括垃圾回收;S400:响应于第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差大于或等于预设时间,则执行下一个主机任务。
实施例二
在实施例一的基础上,优选地,S100:使用第一预测模型预测主机任务之前,还包括:S010:判断第一预测模型是否完成更新;S020:响应于第一预测模型完成更新,则使用更新后的第一预测模型进行主机任务预测。
可选地,S020ʹ:响应于第一预测模型未完成更新,则使用当前第一预测模型进行主机任务预测;S021ʹ:继续训练第一预测模型,获取相应的最新第一预测模型参数;S022ʹ:以相应的最新第一预测模型参数替换当前第一预测模型参数,完成对第一预测模型的更新。
优选地,硬盘任务管理方法还包括:S001:每间隔第一预设时间,更新主机任务数据样本集;S002:采用更新后的主机任务数据样本集训练第一预测模型,获得最新第一预测模型参数;S003:以最新第一预测模型参数更新第一预测模型。
具体地,S100:使用第一预测模型预测主机任务,包括:S110:从主机I/O任务信息中,获取历史主机任务特征样本;S120:将历史主机任务特征样本作为第一预测模型输入集,输入第一预测模型,获得主机任务预测结果,其中,主机任务预测结果包括第一主机任务结束时刻。
优选地,S110:从主机I/O任务信息中,获取历史主机任务特征样本之后,还包括:S115:对历史主机任务特征样本进行预处理;S120ʹ:以预处理后的历史主机任务特征样本替代历史主机任务特征样本作为第一预测模型输入集,输入第一预测模型,获得主机任务预测结果。
具体地,执行硬盘内部任务包括:S310:启动内部任务,获取拟回收闪存块数量;S320:根据拟回收闪存块数量,第一主机任务的预测结束时刻,以及第二主机任务的预测开始时刻,计算内部任务预测持续时长,内部任务执行速度;S330:以内部任务执行速度执行内部任务,直至完成内部任务,其中,内部任务预测持续时长为第二主机任务的预测开始时刻与第一主机任务的预测结束时刻之差,第二主机任务的预测开始时刻由第一预测模型预测获得,内部任务执行速度为拟回收闪存块数量与内部任务预测持续时长之比值。
可选地,硬盘任务管理方法还包括:S340:响应于在内部任务执行过程中接收到主机任务,则以预设速度执行内部任务,直至内部任务完成。
具体地,执行下一个主机任务包括:S410:从主机任务请求队列中获取下一个主机任务请求,并判断下一个主机任务请求的类型;S420:响应于下一个主机任务请求为写入请求,则根据写入请求,将写入请求所对应的数据写入硬盘相应位置。
具体地,根据写入请求,将写入请求对应的数据写入硬盘相应位置,包括:S421:根据写入请求,通过第二预测模型获得相应的写入任务参数,其中,写入任务参数包括数据保存时长;S422:根据数据保存时长,调用空闲闪存块,保存对应于写入请求的数据。
具体地,S421:根据写入请求,通过第二预测模型获得相应的写入任务参数,包括:S4211:根据写入请求,提取写入任务特征,其中,写入任务特征包括:逻辑块地址、数据容量;S4212:根据写入任务特征更新写入任务输入集;S4213:将写入任务输入集输入第二预测模型,获得写入任务参数。
可选地,S4211:根据写入请求,提取写入任务特征之后,还包括:S42111ʹ:对写入任务特征进行预处理;S4212ʹ:以与处理后的写入任务特征更新写入任务输入集,以替代以写入任务特征更新写入任务输入集。
具体地,S422:根据数据保存时长,调用空闲闪存块,保存对应于写入请求的数据,包括:S4221:以磨损值的大小顺序,对空闲闪存块进行排序,获得空闲闪存块队列;S4222:响应于数据保存时长大于或等于保存时长阈值,则从空闲闪存块队列磨损值较大的一端获取空闲闪存块,保存相应数据;S4223:响应于数据保存时长小于保存时长阈值,则从空闲闪存块队列磨损值较小的一端获取空闲闪存块,保存相应数据。
优选地,S421:根据写入请求,通过第二预测模型获得相应的写入任务参数之前,还包括:S4201:判断第二预测模型是否完成更新;S4202:响应于第二预测模型完成更新,则使用更新后的第二预测模型获取写入任务参数。
可选地,S4202ʹ:响应于第二预测模型未完成更新,则使用当前第二预测模型获取写入任务参数;S4203ʹ:继续训练第二预测模型,获取相应的最新第二预测模型参数;S4204ʹ:以相应的最新第二预测模型参数替换当前第二预测模型参数,完成对第二预测模型的更新。
优选地,硬盘任务管理方法还包括:S401:每间隔第二预设时间,更新写入任务数据样本集;S402:采用更新后的写入任务数据样本集训练第二预测模型,获得最新第二预测模型参数;S403:以最新第二预测模型参数更新第二预测模型。
可选地,硬盘任务管理方法还包括:S420ʹ:响应于下一个主机任务为读取请求,则执行读取请求对应的读取任务。
具体地,执行读取请求对应的读取任务,包括:S421ʹ:根据读取请求,从闪存中读取相应数据;S422ʹ:对读取到的相应数据进行解码,将解码后的数据回传至主机,完成数据读取过程。
可选地,响应于主机任务队列为空,则S411ʹ:执行内部任务;S412ʹ:响应于内部任务执行完成,则等待下一主机任务的到来。
具体地,第一预测模型、第二预测模型为时域卷积网络模型。
实施例三
一种硬盘任务管理装置,如图5所示,包括:
预测模块,用于使用第一预测模型预测主机任务,预测获得第一主机任务的预测结束时刻;判断模块,用于响应于第一主机任务执行完毕,判断第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差是否小于预设时间;
内部任务执行模块,用于响应于第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差小于预设时间,则执行硬盘内部任务,其中,硬盘内部任务包括垃圾回收;主机任务执行模块,用于响应于第一主机任务的实际结束时刻与第一主机任务的预测结束时刻之差大于或等于预设时间,则执行下一个主机任务。
实施例四
在另一些实施例中,一种计算机可读存储介质,其上存储有硬盘任务管理程序,硬盘任务管理程序被处理器执行时,实现实施例一或实施例二记载的硬盘任务管理方法。硬盘任务管理方法已在前文详细阐述,在此不再赘述。
实施例五
在另一些实施例中,如图6所示,一种硬盘任务管理系统,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的硬盘任务管理程序,处理器执行硬盘任务管理程序时,实现实施例一或实施例二记载的硬盘任务管理方法。硬盘任务管理方法已在前文详细阐述,在此不再赘述。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括装载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置从网络上被下载和安装,或者从存储器被安装,或者从ROM 被安装。在该计算机程序被外部处理器执行时,执行本申请的实施例的方法中限定的上述功能。
需要说明的是,本申请的实施例的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(Radio Frequency, 射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述服务器中所包含的;也可以是单独存在,而未装配入该服务器中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该服务器执行时,使得该服务器:响应于检测到终端的外设模式未激活时,获取终端上应用的帧率;在帧率满足息屏条件时,判断用户是否正在获取终端的屏幕信息;响应于判断结果为用户未获取终端的屏幕信息,控制屏幕进入立即暗淡模式。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的实施例的操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java,Smalltalk, C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上对本申请所提供的技术方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (24)
1.一种硬盘任务管理方法,其特征在于,包括:
使用第一预测模型预测主机任务,预测获得第一主机任务的预测结束时刻;
响应于第一主机任务执行完毕,判断第一主机任务的实际结束时刻与所述第一主机任务的预测结束时刻之差是否小于预设时间;
响应于所述第一主机任务的实际结束时刻与所述第一主机任务的预测结束时刻之差小于所述预设时间,则执行硬盘内部任务,其中,所述硬盘内部任务包括垃圾回收;
响应于所述第一主机任务的实际结束时刻与所述第一主机任务的预测结束时刻之差大于或等于所述预设时间,则执行下一个主机任务。
2.根据权利要求1所述的硬盘任务管理方法,其特征在于,所述使用第一预测模型预测主机任务之前,还包括:
判断所述第一预测模型是否完成更新;
响应于所述第一预测模型完成更新,则使用更新后的第一预测模型进行主机任务预测。
3.根据权利要求2所述的硬盘任务管理方法,其特征在于,
响应于所述第一预测模型未完成更新,则使用当前第一预测模型进行主机任务预测;
继续训练所述第一预测模型,获取相应的最新第一预测模型参数;
以相应的最新第一预测模型参数替换当前第一预测模型参数,完成对所述第一预测模型的更新。
4.根据权利要求2所述的硬盘任务管理方法,其特征在于,所述方法还包括:
每间隔第一预设时间,更新主机任务数据样本集;
采用更新后的主机任务数据样本集训练所述第一预测模型,获得最新第一预测模型参数;
以所述最新第一预测模型参数更新所述第一预测模型。
5.根据权利要求1所述的硬盘任务管理方法,其特征在于,所述使用第一预测模型预测主机任务,包括:
从主机I/O任务信息中,获取历史主机任务特征样本;
将所述历史主机任务特征样本作为第一预测模型输入集,输入所述第一预测模型,获得主机任务预测结果,其中,所述主机任务预测结果包括第一主机任务结束时刻。
6.根据权利要求5所述的硬盘任务管理方法,其特征在于,所述从主机I/O任务信息中,获取历史主机任务特征样本之后,还包括:
对所述历史主机任务特征样本进行预处理;
以预处理后的历史主机任务特征样本替代所述历史主机任务特征样本作为所述第一预测模型输入集,输入所述第一预测模型,获得主机任务预测结果。
7.根据权利要求1所述的硬盘任务管理方法,其特征在于,所述执行硬盘内部任务包括:
启动内部任务,获取拟回收闪存块数量;
根据所述拟回收闪存块数量,所述第一主机任务的预测结束时刻,以及第二主机任务的预测开始时刻,计算内部任务预测持续时长,内部任务执行速度;
以所述内部任务执行速度执行所述内部任务,直至完成所述内部任务,其中,所述内部任务预测持续时长为所述第二主机任务的预测开始时刻与所述第一主机任务的预测结束时刻之差,所述第二主机任务的预测开始时刻由所述第一预测模型预测获得,所述内部任务执行速度为所述拟回收闪存块数量与所述内部任务预测持续时长之比值。
8.根据权利要求7所述的硬盘任务管理方法,其特征在于,所述方法还包括:
响应于在所述内部任务执行过程中接收到主机任务,则以预设速度执行所述内部任务,直至所述内部任务完成。
9.根据权利要求1-8任一项所述的硬盘任务管理方法,其特征在于,所述第一预测模型为时域卷积网络模型。
10.根据权利要求1所述的硬盘任务管理方法,其特征在于,所述执行下一个主机任务包括:
从主机任务请求队列中获取下一个主机任务请求,并判断所述下一个主机任务请求的类型;
响应于所述下一个主机任务请求为写入请求,则根据所述写入请求,将所述写入请求所对应的数据写入硬盘相应位置。
11.根据权利要求10所述的硬盘任务管理方法,其特征在于,所述根据所述写入请求,将所述写入请求对应的数据写入硬盘相应位置,包括:
根据所述写入请求,通过第二预测模型获得相应的写入任务参数,其中,所述写入任务参数包括数据保存时长;
根据所述数据保存时长,调用空闲闪存块,保存对应于所述写入请求的数据。
12.根据权利要求11所述的硬盘任务管理方法,其特征在于,所述根据所述写入请求,通过第二预测模型获得相应的写入任务参数,包括:
根据所述写入请求,提取写入任务特征,其中,所述写入任务特征包括:逻辑块地址、数据容量;
根据所述写入任务特征更新写入任务输入集;
将所述写入任务输入集输入所述第二预测模型,获得写入任务参数。
13.根据权利要求12所述的硬盘任务管理方法,其特征在于,所述根据所述写入请求,提取写入任务特征之后,还包括:
对所述写入任务特征进行预处理;
以与处理后的写入任务特征更新写入任务输入集,以替代以所述写入任务特征更新写入任务输入集。
14.根据权利要求11所述的硬盘任务管理方法,其特征在于,所述根据所述数据保存时长,调用空闲闪存块,保存对应于所述写入请求的数据,包括:
以磨损值的大小顺序,对所述空闲闪存块进行排序,获得空闲闪存块队列;
响应于所述数据保存时长大于或等于保存时长阈值,则从所述空闲闪存块队列磨损值较大的一端获取空闲闪存块,保存相应数据;
响应于所述数据保存时长小于所述保存时长阈值,则从所述空闲闪存块队列磨损值较小的一端获取空闲闪存块,保存相应数据。
15.根据权利要求11所述的硬盘任务管理方法,其特征在于,所述根据所述写入请求,通过第二预测模型获得相应的写入任务参数之前,还包括:
判断所述第二预测模型是否完成更新;
响应于所述第二预测模型完成更新,则使用更新后的第二预测模型获取写入任务参数。
16.根据权利要求15所述的硬盘任务管理方法,其特征在于,
响应于所述第二预测模型未完成更新,则使用当前第二预测模型获取写入任务参数;
继续训练所述第二预测模型,获取相应的最新第二预测模型参数;
以相应的最新第二预测模型参数替换当前第二预测模型参数,完成对所述第二预测模型的更新。
17.根据权利要求15所述的硬盘任务管理方法,其特征在于,所述方法还包括:
每间隔第二预设时间,更新写入任务数据样本集;
采用更新后的写入任务数据样本集训练所述第二预测模型,获得最新第二预测模型参数;
以所述最新第二预测模型参数更新所述第二预测模型。
18.根据权利要求10所述的硬盘任务管理方法,其特征在于,所述方法还包括:
响应于所述下一个主机任务为读取请求,则执行所述读取请求对应的读取任务。
19.根据权利要求18所述的硬盘任务管理方法,其特征在于,所述执行所述读取请求对应的读取任务,包括:
根据所述读取请求,从闪存中读取相应数据;
对读取到的相应数据进行解码,将解码后的数据回传至主机,完成数据读取过程。
20.根据权利要求1所述的硬盘任务管理方法,其特征在于,响应于主机任务队列为空,则执行内部任务;
响应于所述内部任务执行完成,则等待下一主机任务的到来。
21.根据权利要求11-17任一项所述的硬盘任务管理方法,其特征在于,所述第二预测模型为时域卷积网络模型。
22.一种硬盘任务管理装置,其特征在于,包括:
预测模块,用于使用第一预测模型预测主机任务,预测获得第一主机任务的预测结束时刻;
判断模块,用于响应于第一主机任务执行完毕,判断第一主机任务的实际结束时刻与所述第一主机任务的预测结束时刻之差是否小于预设时间;
内部任务执行模块,用于响应于所述第一主机任务的实际结束时刻与所述第一主机任务的预测结束时刻之差小于所述预设时间,则执行硬盘内部任务,其中,所述硬盘内部任务包括垃圾回收;
主机任务执行模块,用于响应于所述第一主机任务的实际结束时刻与所述第一主机任务的预测结束时刻之差大于或等于所述预设时间,则执行下一个主机任务。
23.一种计算机可读存储介质,其特征在于,其上存储有硬盘任务管理程序,所述硬盘任务管理程序被处理器执行时,实现权利要求1至21任一项所述的硬盘任务管理方法。
24.一种硬盘任务管理系统,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的硬盘任务管理程序,所述处理器执行所述硬盘任务管理程序时,实现权利要求1至21任一项所述的硬盘任务管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410226776.9A CN117806837B (zh) | 2024-02-29 | 2024-02-29 | 一种硬盘任务管理方法、装置、存储介质及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410226776.9A CN117806837B (zh) | 2024-02-29 | 2024-02-29 | 一种硬盘任务管理方法、装置、存储介质及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117806837A true CN117806837A (zh) | 2024-04-02 |
CN117806837B CN117806837B (zh) | 2024-06-07 |
Family
ID=90434947
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410226776.9A Active CN117806837B (zh) | 2024-02-29 | 2024-02-29 | 一种硬盘任务管理方法、装置、存储介质及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117806837B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110764714A (zh) * | 2019-11-06 | 2020-02-07 | 深圳大普微电子科技有限公司 | 一种数据处理方法、装置、设备及可读存储介质 |
CN111475298A (zh) * | 2020-04-03 | 2020-07-31 | 北京字节跳动网络技术有限公司 | 任务处理方法、装置、设备及存储介质 |
CN111913648A (zh) * | 2019-05-09 | 2020-11-10 | 深圳大普微电子科技有限公司 | 一种固态硬盘的数据处理方法及装置 |
CN113971137A (zh) * | 2020-07-22 | 2022-01-25 | 华为技术有限公司 | 一种垃圾回收方法及装置 |
CN116185300A (zh) * | 2023-03-09 | 2023-05-30 | 复旦大学 | 一种在主机端基于深度学习完成固态硬盘高效垃圾回收的软硬件实现办法 |
US20230229218A1 (en) * | 2022-01-20 | 2023-07-20 | SK Hynix Inc. | Data processing system, operation method thereof, and storage device therefor |
CN117472285A (zh) * | 2023-12-26 | 2024-01-30 | 深圳市领德创科技有限公司 | 固态硬盘用智能运行加速方法、计算机设备及存储介质 |
-
2024
- 2024-02-29 CN CN202410226776.9A patent/CN117806837B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111913648A (zh) * | 2019-05-09 | 2020-11-10 | 深圳大普微电子科技有限公司 | 一种固态硬盘的数据处理方法及装置 |
CN110764714A (zh) * | 2019-11-06 | 2020-02-07 | 深圳大普微电子科技有限公司 | 一种数据处理方法、装置、设备及可读存储介质 |
CN111475298A (zh) * | 2020-04-03 | 2020-07-31 | 北京字节跳动网络技术有限公司 | 任务处理方法、装置、设备及存储介质 |
CN113971137A (zh) * | 2020-07-22 | 2022-01-25 | 华为技术有限公司 | 一种垃圾回收方法及装置 |
US20230229218A1 (en) * | 2022-01-20 | 2023-07-20 | SK Hynix Inc. | Data processing system, operation method thereof, and storage device therefor |
CN116185300A (zh) * | 2023-03-09 | 2023-05-30 | 复旦大学 | 一种在主机端基于深度学习完成固态硬盘高效垃圾回收的软硬件实现办法 |
CN117472285A (zh) * | 2023-12-26 | 2024-01-30 | 深圳市领德创科技有限公司 | 固态硬盘用智能运行加速方法、计算机设备及存储介质 |
Non-Patent Citations (3)
Title |
---|
CHANDRANIL CHAKRABORTTII: "Reducing write amplification in flash by death-time prediction of logical block addresses", 《PROCEEDINGS OF THE 14TH ACM INTERNATIONAL CONFERENCE ON SYSTEMS AND STORAGE》, 14 June 2021 (2021-06-14) * |
JUNG KYU PARK: "A method for reducing garbage collection overhead of SSD using machine learning algorithms", 《2017 INTERNATIONAL CONFERENCE ON INFORMATION AND COMMUNICATION TECHNOLOGY CONVERGENCE》, 14 December 2017 (2017-12-14) * |
李恒恒;岳春生;胡泽明;: "一种基于预搜索的自适应闪存垃圾回收算法", 小型微型计算机系统, no. 10, 15 October 2015 (2015-10-15) * |
Also Published As
Publication number | Publication date |
---|---|
CN117806837B (zh) | 2024-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9256371B2 (en) | Implementing reinforcement learning based flash control | |
US20190379762A1 (en) | Data prefetching for large data systems | |
CN105339908B (zh) | 用于支持持久存储器的方法和装置 | |
CN110727685B (zh) | 一种基于Cassandra数据库的数据压缩方法、设备以及存储介质 | |
US20150195371A1 (en) | Changing a cache queue based on user interface pointer movement | |
CN109521943B (zh) | 云数据库实例的分配方法及相关产品 | |
CN109284233B (zh) | 一种存储系统的垃圾回收方法及相关装置 | |
CN111143039B (zh) | 一种虚拟机的调度方法、装置及计算机存储介质 | |
WO2021047398A1 (zh) | 存储块回收方法、装置、存储介质及电子设备 | |
CN113316794A (zh) | 基于人工神经网络的数据位置用数据缓存支持高速人工神经网络操作的数据管理设备 | |
JP2018526746A (ja) | データベーストランザクションを最適化するための方法および装置 | |
US20170123975A1 (en) | Centralized distributed systems and methods for managing operations | |
CN116560585B (zh) | 一种数据分级存储方法和系统 | |
US9785374B2 (en) | Storage device management in computing systems | |
CN116112563A (zh) | 一种基于流行度预测的双策略自适应缓存替换方法 | |
CN117472167B (zh) | 服务器能耗的调节方法、装置、计算机设备及存储介质 | |
CN117235088B (zh) | 一种存储系统的缓存更新方法、装置、设备、介质及平台 | |
CN117194502B (zh) | 一种基于长短期记忆网络的数据库内容缓存替换方法 | |
CN111552652B (zh) | 基于人工智能芯片的数据处理方法、装置和存储介质 | |
CN117806837B (zh) | 一种硬盘任务管理方法、装置、存储介质及系统 | |
CN116820730B (zh) | 多引擎计算系统的任务调度方法、装置及存储介质 | |
CN114356510A (zh) | 用于调度的方法和电子装置 | |
CN102508844B (zh) | 一种网络竞价的动态共享数据的缓存系统和方法 | |
CN110727405A (zh) | 数据处理方法、装置、电子设备及计算机可读介质 | |
CN117806573B (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 |