System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种任务管理方法、装置、设备及存储介质制造方法及图纸_技高网

一种任务管理方法、装置、设备及存储介质制造方法及图纸

技术编号:41392017 阅读:2 留言:0更新日期:2024-05-20 19:14
本发明专利技术公开了一种任务管理方法、装置、设备及存储介质,涉及计算机技术领域,包括:利用预先构建的任务标识号资源池为主机下发的当前任务分配相应的目标任务标识号,以目标任务标识号为地址指针为当前任务分配信息缓存空间,以便将主机下发的原始任务信息写入信息缓存空间中;对当前任务进行拆分,得到多个携带子任务编号的子任务;每个子任务对应于一个磁盘命令;将根据子任务编号依次构建的提交队列条目命令写入NVMe磁盘访问的提交队列条目地址空间中;基于NVMe协议,利用预设的流水化并行方式提交队列条目命令进行处理以完成对当前任务的完成状态的分析。本发明专利技术能够减少主机的参与度,降低CPU的开销,并提高磁盘的持续写入速度。

【技术实现步骤摘要】

本专利技术涉及计算机,特别涉及一种任务管理方法、装置、设备及存储介质


技术介绍

1、随着ssd(solid state drives,固态硬盘)的性能逐渐增强,传统的标准已经不再适用,进而成为了限制ssd的一大瓶颈。基于pcie(peripheral component interconnectexpress,高速串行计算机扩展总线标准)接口实现的ssd因其具有高性能、低延迟等特点逐渐受到重视,并且,nvme(non volatile memory host controller interfacespecification,非易失性内存主机控制器接口规范)作为新一代的接口传输协议,规定了主机与nvm(non-volatile memory,非易失性存储介质)子系统之间的通信协议,此后,nvme+pcie已经发展成为主流的存储方案。

2、当前,需要执行某种io(input/output,输入/输出)操作时,典型的操作流程为:第一阶段,主机在命令中设置好prp(physical region range,物理区域页面),其中,prp位于nvme ssd控制器内部的读写存储缓冲区,然后主机写命令到sq(submission queue,提交队列),进而主机再通过门铃寄存器通知nvme ssd控制器取指令;第二阶段,nvme ssd控制器收到通知后,到sq取指令,然后nvme ssd控制器根据指令执行相应的数据读写搬运操作,在nvme ssd控制器执行完后,向cq(completion queue,完成队列)写入指令执行结果,进而nvme ssd控制器中断通知主机去检测cq中的反馈信息;第三阶段,主机cq指令执行完成后,通知门铃寄存器回复nvme ssd控制器。

3、在上述典型操作流程中,主机承担了大量的工作,如prp entry的转换,sq的管理与指针更新以及cq指针更新等,增加了cpu(central processing unit,中央处理器)的开销。其中,并且从主机开始向nvme ssd发送写命令,到nvme ssd开始与主机进行数据传输,这两个先后发生的事件之间有一定的时间差,称为nvme ssd的响应延迟,这种响应延迟会极大地影响存储设备的持续写入速度,甚至导致数据丢失,造成无法挽回的损失。而且,对于不同的磁盘类型,磁盘的特性存在差异,磁盘可以支持的host的最小内存页大小也是不同的,当主机下发的命令超出限制大小,该命令会被终止执行。

4、因此,如何提供一种解决主机任务与磁盘命令之间大小不匹配以及磁盘响应延时影响磁盘读写数据速率的技术问题的方案是本领域技术人员目前需要解决的问题。


技术实现思路

1、有鉴于此,本专利技术的目的在于提供一种任务管理方法、装置、设备及存储介质,能够有效减少主机的参与度,降低cpu的开销,并提高磁盘的持续写入速度。其具体方案如下:

2、第一方面,本专利技术公开了一种任务管理方法,包括:

3、接收目标主机下发的与当前任务对应的原始任务信息;

4、利用预先构建的任务标识号资源池为当前任务分配相应的目标任务标识号,并以所述目标任务标识号为地址指针为当前任务分配相应的信息缓存空间,以便将所述原始任务信息写入所述信息缓存空间中;

5、对携带所述目标任务标识号的当前任务进行拆分,得到多个携带子任务编号的子任务;其中,每个所述子任务对应于一个磁盘命令;

6、根据所述子任务编号依次构建相应的提交队列条目命令,并将所述提交队列条目命令写入nvme磁盘访问的提交队列条目地址空间中;

7、基于nvme协议,并利用预设的流水化并行方式对所述提交队列条目地址空间中的所述提交队列条目命令进行处理以完成对当前任务的完成状态的分析。

8、可选的,所述利用预先构建的任务标识号资源池为当前任务分配相应的目标任务标识号之前,还包括:

9、对预先构建的所述任务标识号资源池进行初始化;

10、相应的,所述对预先构建的所述任务标识号资源池进行初始化,包括:

11、通过目标软件将待分配任务标识号存储至先进先出类型的存储单元中,以完成对预先构建的任务标识号资源池的初始化;

12、或,通过硬件并根据所述nvme磁盘中所设置的最大任务数完成对预先构建的任务标识号资源池的初始化。

13、可选的,所述的任务管理方法,还包括:

14、判断所述目标主机下发的与当前任务对应的所述原始任务信息是否正确;

15、如果所述目标主机下发的与当前任务对应的所述原始任务信息不正确,则丢弃当前任务,并进行错误上报;

16、如果所述目标主机下发的与当前任务对应的所述原始任务信息正确,则对所述原始任务信息进行解析,得到相应的任务配置信息。

17、可选的,所述的任务管理方法,还包括:

18、根据所述任务配置信息中的源地址列表指针、目的地址列表指针确定相应的待转换物理区域页面列表偏移信息、转换后物理区域页面列表偏移信息和物理区域页面偏移信息;其中,物理区域页面列表为对至少一个连续物理内存起始地址进行链接后得到的列表;

19、基于所述nvme磁盘的相应寻址规则,并根据所述待转换物理区域页面列表偏移信息、所述转换后物理区域页面列表偏移信息、所述物理区域页面偏移信息以及所述任务配置信息中的与当前任务对应的连续物理内存起始地址个数计算出待转换物理区域页面列表和转换后物理区域页面列表的首个连续物理内存起始地址的起始地址信息;

20、判断首个连续物理内存起始地址的所述起始地址信息是否满足预设校验规则;

21、若首个连续物理内存起始地址的所述起始地址信息不满足所述预设校验规则,则判定首个连续物理内存起始地址的所述起始地址信息无效,并丢弃当前任务,进行错误上报;

22、若首个连续物理内存起始地址的所述起始地址信息满足所述预设校验规则,则判定首个连续物理内存起始地址的所述起始地址信息有效,并保留当前任务。

23、可选的,所述的任务管理方法,还包括:

24、根据所述任务配置信息中的任务类型确定当前任务是否为链式任务;

25、如果当前任务为链式任务,则根据当前任务的链式标志位获取下一个任务地址信息,并在当前任务结束之后,向所述目标主机反馈所述下一个任务地址信息;

26、如果当前任务不为链式任务,则在当前任务结束之后禁止向所述目标主机反馈所述下一个任务地址信息。

27、可选的,所述对携带所述目标任务标识号的当前任务进行拆分,得到多个携带子任务编号的子任务,包括:

28、根据所述nvme磁盘的单个命令大小对携带所述目标任务标识号的当前任务进行拆分,得到多个携带子任务编号的子任务。

29、可选的,所述子任务对应的子任务信息包含所述子任务编号、当前任务对应的所述目标任务标识号、所述子任务对应的连续物理内存起始地址个数、待转换物理区域页本文档来自技高网...

【技术保护点】

1.一种任务管理方法,其特征在于,包括:

2.根据权利要求1所述的任务管理方法,其特征在于,所述利用预先构建的任务标识号资源池为当前任务分配相应的目标任务标识号之前,还包括:

3.根据权利要求1所述的任务管理方法,其特征在于,还包括:

4.根据权利要求3所述的任务管理方法,其特征在于,还包括:

5.根据权利要求3所述的任务管理方法,其特征在于,还包括:

6.根据权利要求1所述的任务管理方法,其特征在于,所述对携带所述目标任务标识号的当前任务进行拆分,得到多个携带子任务编号的子任务,包括:

7.根据权利要求1所述的任务管理方法,其特征在于,所述子任务对应的子任务信息包含所述子任务编号、当前任务对应的所述目标任务标识号、所述子任务对应的连续物理内存起始地址个数、待转换物理区域页面列表地址信息、转换后物理区域页面列表地址信息。

8.根据权利要求7所述的任务管理方法,其特征在于,还包括:

9.根据权利要求1至8任一项所述的任务管理方法,其特征在于,所述对所述提交队列条目地址空间中的所述提交队列条目命令进行处理以完成对当前任务的完成状态的分析,包括:

10.根据权利要求9所述的任务管理方法,其特征在于,所述对所述完成队列条目信息进行解析,得到与所述子任务对应的所述目标任务标识号、所述子任务编号和状态信息之后,还包括:

11.根据权利要求9所述的任务管理方法,其特征在于,所述信息缓存空间用于存储在当前任务转换为所述磁盘命令之后处理所述完成队列条目信息时所需的任务关键信息,并且所述任务关键信息包括所述目标任务标识号、所述磁盘命令的总个数、下一个任务地址更新使能标志及下一个任务地址信息。

12.根据权利要求9所述的任务管理方法,其特征在于,所述根据所述目标任务信息确定当前任务的完成状态,包括:

13.根据权利要求12所述的任务管理方法,其特征在于,所述根据所述目标任务信息确定当前任务的完成状态之后,还包括:

14.一种任务管理装置,其特征在于,包括:

15.一种电子设备,其特征在于,包括:

16.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1至13任一项所述的任务管理方法的步骤。

...

【技术特征摘要】

1.一种任务管理方法,其特征在于,包括:

2.根据权利要求1所述的任务管理方法,其特征在于,所述利用预先构建的任务标识号资源池为当前任务分配相应的目标任务标识号之前,还包括:

3.根据权利要求1所述的任务管理方法,其特征在于,还包括:

4.根据权利要求3所述的任务管理方法,其特征在于,还包括:

5.根据权利要求3所述的任务管理方法,其特征在于,还包括:

6.根据权利要求1所述的任务管理方法,其特征在于,所述对携带所述目标任务标识号的当前任务进行拆分,得到多个携带子任务编号的子任务,包括:

7.根据权利要求1所述的任务管理方法,其特征在于,所述子任务对应的子任务信息包含所述子任务编号、当前任务对应的所述目标任务标识号、所述子任务对应的连续物理内存起始地址个数、待转换物理区域页面列表地址信息、转换后物理区域页面列表地址信息。

8.根据权利要求7所述的任务管理方法,其特征在于,还包括:

9.根据权利要求1至8任一项所述的任务管理方法,其特征在于,所述对所述提交队列条目地址空间中的所述提交队列条目命令进行处理以完成对...

【专利技术属性】
技术研发人员:陆亚南王婷
申请(专利权)人:山东云海国创云计算装备产业创新中心有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1