CN111273865A - 一种基于可变便笺式存储器的任务分配及调度方法 - Google Patents

一种基于可变便笺式存储器的任务分配及调度方法 Download PDF

Info

Publication number
CN111273865A
CN111273865A CN202010058016.3A CN202010058016A CN111273865A CN 111273865 A CN111273865 A CN 111273865A CN 202010058016 A CN202010058016 A CN 202010058016A CN 111273865 A CN111273865 A CN 111273865A
Authority
CN
China
Prior art keywords
task
energy consumption
slc
task allocation
mlc
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
Application number
CN202010058016.3A
Other languages
English (en)
Other versions
CN111273865B (zh
Inventor
蒋溢
李济潇
龙林波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chongqing University of Post and Telecommunications
Original Assignee
Chongqing University of Post and Telecommunications
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN202010058016.3A priority Critical patent/CN111273865B/zh
Publication of CN111273865A publication Critical patent/CN111273865A/zh
Application granted granted Critical
Publication of CN111273865B publication Critical patent/CN111273865B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Software Systems (AREA)
  • Memory System (AREA)

Abstract

本发明属于计算机存储技术领域,具体涉及一种基于可变便笺式存储器的任务分配及调度方法,该分配方法包括使SPM动态可变;按照任务分配至DRAM、SLC和MLC中产生的不同能耗,构建出任务在不同存储介质中的能耗模型和时延模型;基于能耗模型采用动态规划算法,计算出在不同配置下的能耗最低的任务分配方案,并将每种配置下能耗最低的任务分配方案存放在第一数组中;基于时延模型计算当前任务分配方案中任务的执行时间,建立并遍历第二数组;找到满足实时性要求且能耗最低的任务分配方案,将任务分配至对应存储介质中。本发明采用动态规划算法结合实时性约束,在满足任务实时性要求下使得能耗最低;优化离线任务分配以及实时任务调度。

Description

一种基于可变便笺式存储器的任务分配及调度方法
技术领域
本发明属于计算机存储技术领域,具体涉及一种实时嵌入式设备中基于可变SPM的离线实时任务调度及任务分配优化方案。
背景技术
随着物联网的兴起和通信手段的进步,嵌入式系统的应用场景大大拓展,嵌入式系统的数量快速增长,然而资源受限的嵌入式终端在系统功耗和处理性能等方面已难以满足应用场景对终端日益增长的需求。
目前,动态随机存取存储器(Dynamic Random Access Memory,DRAM),静态随机存取存储器(Static Random-Access Memory,SRAM)等传统存储器存在着扩展性差和静态能耗高等问题,已然成为了嵌入式系统发展的一大阻碍。然而,新型非易失性存储器(non-volatile memory,NVM)的出现对嵌入式的发展产生了新的生机,新型非易失性存储器(non-volatile memory,NVM)具备内存的高速处理、持久化存储、扩展性强、超低静态功耗等优势,有望替代传统存储器。
新型非易失性存储器(Non-Volatile Memory,NVM)的出现得到了学术界和工业界的广泛关注,并为计算机存储技术提供了新的解决方案。新型NVM是很有希望取代传统存储器件(如SRAM和DRAM)的,因为它具有集成度高、漏电功耗低、访问速度快、非易失性等优点。由于新型存储器件自身的属性问题,传统的存储系统管理方法已不适用,需要针对新型NVM的特点优化相应的管理方法,以提高计算机系统性能和降低功耗。
发明内容
有鉴于此,本发明的目的在于提供一种基于可变SPM的离线实时任务调度及任务分配优化方案,其特征在于结合新型可变非易失性存储器的特性,实现可根据任务需求动态改变容量大小的SPM,并优化离线实时任务的调度及任务分配,在满足任务实时性要求下使得能耗最低。
本发明解决上述技术问题所采用的方案包括:
在本发明的第一方面,本发明提出了一种基于可变便笺式存储器的任务分配方法,包括以下步骤:
S1、将便笺式存储器NVM中SLC存储单元和MLC存储单元进行互相转换,使所述便笺式存储器SPM动态可变;
S2、获取任务集中每个任务的数据访问信息,按照任务分配至不同存储介质包括动态随机存取存储器DRAM、SLC存储单元以及MLC存储单元中所产生的不同能耗,构建出任务在不同存储介质中的能耗模型和时延模型;
S3、基于能耗模型,采用动态规划算法,计算出在不同种类以及不同数量的存储介质配置下的能耗最低的任务分配方案,并将每种配置下能耗最低的任务分配方案存放在第一数组中;
S4、基于时延模型,计算出当前任务分配方案中任务的执行时间,并建立第二数组;遍历第二数组,判断每种任务分配方案下的任务是否满足实时性,找到满足实时性要求且能耗最低的任务分配方案,利用该任务分配方案将任务分配至对应存储介质中。
在本发明的第二方面,本发明还提出了一种基于可变便笺式存储器的任务调度方法,所述方法包括上述的基于可变便笺式存储器的任务分配方法,利用任务分配方案将任务分配至对应存储介质后;采用最早截止时间优先EDF调度算法,将任务按照它们的截止期限或周期进行排序,截止期限或周期越早优先级越高,对任务进行有序的调度。
本发明的有益效果:
本发明结合NVM中SLC/MLC单元各自的优点,以及它们可以动态切换的特点,即SLC/MLC可互相转换,以及两种存储单元在性能和存储容量互补优势;实现了一种可根据任务需求容量动态变换的便笺式存储器(Scratch Pad Memory,SPM);本发明采用动态规划的算法结合实时性约束,在满足任务实时性要求下使得能耗最低;优化离线任务分配以及实时任务调度。
附图说明
图1为本发明的一种基于可变便笺式存储器的任务分配方法流程图;
图2为本发明中的存储介质结构图;
图3为本发明中一种基于可变便笺式存储器的任务调度方法流程图;
图4为本发明中实时任务调度以及任务分配的整体流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
需要说明的是,本发明实施例的执行主体可以为各种类型的终端;终端例如可以是计算机、服务器、平板电脑、个人数字助理(英文:Personal Digital Assistant,缩写:PDA)、移动互联网设备(英文:Mobile Internet Device,缩写:MID)等可进行存储器任务分配和调度处理的设备,本发明对此不作任何限制。
在本发明的第一方面,如图1所示,本发明的一种基于可变便笺式存储器的任务分配方法,主要包括以下步骤:
S1、调整便笺式存储器SPM中的SLC存储单元和MLC存储单元数量;使所述便笺式存储器SPM动态可变;
S2、获取任务集中每个任务的数据访问信息,按照任务分配至不同存储介质包括动态随机存取存储器DRAM、SLC存储单元以及MLC存储单元中所产生的不同能耗,构建出任务在不同存储介质中的能耗模型和时延模型;
S3、基于能耗模型,采用动态规划算法,计算出在不同种类以及不同数量的存储介质配置下的能耗最低的任务分配方案,并将每种配置下能耗最低的任务分配方案存放在第一数组中;
S4、基于时延模型,计算出当前任务分配方案中任务的执行时间,并建立第二数组;遍历第二数组,判断每种任务分配方案下的任务是否满足实时性,找到满足实时性要求且能耗最低的任务分配方案,利用该任务分配方案将任务分配至对应存储介质中。
可以理解的是,本发明是基于NVM SLC/MLC能够互相转换,以及两种存储单元在性能和存储容量互补优势,从而实现动态可变便笺式存储器。
在一个实施例中,为了使得所述便笺式存储器SPM动态可变,本实施例将初始的便笺式存储器SPM中所有存储单元全部设置为SLC存储单元;在进行任务分配或/和任务调度时,可以将任务从SLC存储单元重新分配至MLC单元或者保持部分SLC单元不变,或者分配至DRAM中;本实施例结合NVM中SLC/MLC两种存储单元的访问性能以及存储容量上的互补优势;从而实现了便笺式存储器SPM动态可变。
在一个实施例中,获取任务集中每个任务的数据访问信息包括通过profiling工具可以获取到任务中的数据访问信息;根据任务的周期确定任务执行的优先级,本发明针对嵌入式系统中的周期任务,于是周期越短的任务优先级越高,通过这一步确定了任务执行的顺序。
在一个实施例中,如图2所示,为本申请提供的存储介质结构图;本发明中的存储介质包括动态随机存取存储器DRAM和调整便笺式存储器SPM;DRAM与SPM互通;在SPM中,采用单层单元SLC和多层单元MLC;中央处理器(CPU,central processing unit)通过SPM与DRAM进行连接。
在一个实施例中,通过数据访问信息建立能耗模型包括至少建立两种能效模型,包括任务分配在SLC中的能耗模型以及任务分配在MLC中的能耗模型。
在一个优选实施例中,为了更好的实现与DRAM的交互,本实施例还提供了任务分配在DRAM中的能耗模型。
具体的,根据任务的Nw和Nr构建任务在不同存储介质中的能耗模型,当任务分配至DRAM时,能耗主要由两部分产生,一是任务数据访问的能耗,可以表示为Ead=(Nw+Nr)×ead,其中ead为DRAM访问一次的能耗开销,二是DRAM的静态能耗,可表示为Edram=pdram×(Nw+Nr)×tad,其中pdram为DRAM静态泄露功率,tad为DRAM访问一次的时延,任务分配在DRAM中总的能耗模型为EDRAM=Ea+Ed
当任务分配至SLC时,能耗主要由数据在SLC的读能耗Ers=Nr×ers,数据在SLC的写能耗Ews=Nw×ews以及SLC/MLC之间转换的能耗Ec组成,所以任务分配在SLC中的总能耗为ESLC=Ers+Ews+Ec
当任务分配至MLC时,能耗主要由数据在MLC的读能耗Erm=Nr×erm,数据在MLC的写能耗Ewm=Nw×ewm,SLC/MLC转换的能耗Ec组成,所以任务分配在MLC中的总能耗为EMLC=Erm+Ewm+Ec
在一个实施例中,在上述建立的能效模型中,采用动态规划算法01背包问题的思想,本发明计算出对每种SLC/MLC存储单元的能耗最低的任务分配方案,本发明所采用的动态规划算法的递推公式可以表示为:
V[i,SS,SM]=min(V[i-1,SS,SM]+EDRAM(ti),
V[i-1,SS-size(ti),SM]+ESLC(ti),
V[i-1,SS,SM-size(ti)]+EMLC(ti))
其中,V[i,SS,SM]表示第i个任务分配至存储介质中获得最优的价值,具体表示为总的最小能耗开销;SS表示当前SLC所剩的空间,SM表示当前MLC所剩的空间,EDRAM(ti)表示任务ti存放至DRAM中产生的能耗,ESLC(ti)表示任务ti放至SLC SPM中产生的能耗,EMLC(ti)表示任务ti放至MLC SPM中产生的能耗。
在一个实施例中,创建一个第一数组allocationResultArray,将上述通过能耗模型得到的每种配置下的最低能耗的分配方案放入第一数组allocationResultArray中。
可以理解的是,本发明中的任务集包含多个任务,将这些任务存放进SPM时存在很多种配置,例如在配置1中,可能是3个SLC和7个MLC;在配置2中可能是5个SLC和5个MLC,每种配置下存放任务所花费的能耗开销和时间都不一致,本发明采用动态规划可以得到第一数组,这个第一数组就记录了这些配置,通过溯源的方式可以得到每个任务分配到了哪个存储器/存储介质中,最后通过实时性约束得到最优的配置。
在一个实施例中,根据获取的读写次数Nr,Nw构建时延模型,如果任务分配至DRAM中,其时延模型可以表示为TDRAM=(Nr+Nw)×tad+texe,其中tad表示任务在DRAM数据访问的时间,texe表示CPU计算的时间,如果任务分配至SLC中,其时延模型可以表示为TSLC=Nr×trs+Nw×tws+texe,其中trs表示任务在SLC中数据读一次的时间,tws表示任务在SLC中数据写一次的时间,如果任务分配至MLC中,其时延模型可以表示为TMLC=Nr×trm+Nw×twm+texe,其中trm表示任务在MLC中数据读一次的时间,twm表示任务在MLC中数据写一次的时间。
在一个实施例中,为了通过实时性约束得到最优的配置可以通过如下方式实现:
设置变量optimal_result记录最优分配方案的任务信息以及SPM SLC/MLC配置信息,根据实时性约束,判断当前的任务分配方案是否满足实时性要求,如果满足实时性要求并且能耗比当前optimal_result的能耗更低,则用optimal_result记录当前分配方案,如果不满足实时性要求,则继续判断第一数组allocationResultArray中的下一种分配方案是否为最优分配方案;
具体的,遍历最优执行时间集,也即是第二数组Clist,判断每种分配下的任务执行时间是否满足
Figure BDA0002370710280000061
如果满足,并且能耗比当前optimal_result的能耗更低,用optimal_result变量记录该分配下的所有信息,optimal_result数据类型为一个对象,其中可以记录分配方案,该分配下的能耗以及SPM SLC/MLC的配置情况。
其中,
Figure BDA0002370710280000062
Figure BDA0002370710280000063
第二数组为一个二维数组,其长度任务分配方案的个数m,宽度为任务集中任务的个数n;
Figure BDA0002370710280000064
表示第二数组中第i行元素即为第i种分配方案下任务的执行时间集合,其包含n列元素,表示的是每个任务的执行时间。
在一个实施例中,如图3所示,本发明的一种基于可变便笺式存储器的任务调度方法流程图包括:
S5、采用任务分配方案将任务分配至对应的存储介质;
S6、采用EDF调度算法,对任务进行调度。
优选的,采用任务分配方案将任务分配至对应的存储介质可以选择上实施例实现。
在一个优选实施例中,如图4所示,本实例提供了一种实时任务调度以及数据分配的整体流程图。
步骤301:数据输入;输入任务集,以及每个任务的周期(设置数量为n)、读写信息、任务所需的容量St、每种存储介质的读写能耗、每种存储介质的读写时延、设置SPM的初始大小为Nspm以及一个MLC存储单元的大小设置为bm。
步骤302:初始化SPM,将其全设置为SLC单元;
步骤303:初始化任务队列TQ,其大小为任务的数量,并且将任务放入任务队列TQ中;
步骤304:从任务队列TQ中取出第一个任务ti,即优先级最高的任务;
步骤305:采用动态规划算法,分别计算出每种配置下的能耗最低分配方案;
步骤306:将每种配置下的最低能耗分配记录在动态规划数组dpArray中;
步骤307:完成一个任务的所有配置下的分配方案最低能耗记录后从任务队列TQ中移除该任务;
步骤308:判断TQ是否为空,如果TQ不为空,则执行步骤309,否则执行步骤304;
步骤309:创建第一数组allocationResultArray记录每种任务分配方案信息;
步骤310:创建第二数组Clist记录第一数组中任务分配方案的任务执行时间集合;
步骤311:初始化第二数组索引j=0,创建变量optimal_result表示最优分配方案;
步骤312:从Clist选取第j个数据Clist[j],判断Clist[j]对应的任务分配是否满足实时性;
步骤313:判断Clist[j]对应的任务分配是否满足实时性,如果满足执行步骤314,否则执行步骤315;
步骤314:找到Clist[j]对应的第一数组的分配方案的能耗是否低于当前optimal_result的能耗,如果是执行步骤317,否则执行步骤316;
步骤315:j自增加1,返回步骤312;
步骤316:j自增加1,返回步骤312;
步骤317:更新optimal_result记录,置为Clist[j]分配方案;
步骤318:判断此时的j是否大于Nspm(任务不同分配方案的数量),如果是则执行步骤320,否则执行步骤319;
步骤319:j自增加1,返回步骤312;
步骤320:输出optimal_result最优配置及任务分配;
步骤321:采用EDF调度算法,根据任务的截止期限或周期排序,截止期限或周期越早优先级越高,有序的调度任务;
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
以上所举实施例,对本发明的目的、技术方案和优点进行了进一步的详细说明,所应理解的是,以上所举实施例仅为本发明的优选实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内对本发明所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种基于可变便笺式存储器的任务分配方法,其特征在于,包括以下步骤:
S1、将便笺式存储器NVM中SLC存储单元和MLC存储单元进行互相转换,使所述便笺式存储器SPM动态可变;
S2、获取任务集中每个任务的数据访问信息,按照任务分配至不同存储介质包括动态随机存取存储器DRAM、SLC存储单元以及MLC存储单元中所产生的不同能耗,构建出任务在不同存储介质中的能耗模型和时延模型;
S3、基于能耗模型,采用动态规划算法,计算出在不同种类以及不同数量的存储介质配置下的能耗最低的任务分配方案,并将每种配置下能耗最低的任务分配方案存放在第一数组中;
S4、基于时延模型,计算出当前任务分配方案中任务的执行时间,并建立第二数组;遍历第二数组,判断每种任务分配方案下的任务是否满足实时性,找到满足实时性要求且能耗最低的任务分配方案,利用该任务分配方案将任务分配至对应存储介质中。
2.根据权利要求1所述的一种基于可变便笺式存储器的任务分配方法,其特征在于,所述步骤S1中,初始的便笺式存储器SPM中所有存储单元全部设置为SLC存储单元。
3.根据权利要求1所述的一种基于可变便笺式存储器的任务分配方法,其特征在于,所述步骤S2中,
任务分配在DRAM中的能耗模型为:
EDRAM=Ea+Ed
任务分配在SLC中的能耗模型为:
ESLC=Ers+Ews+Ec
任务分配在MLC中的能耗模型为:
EMLC=Erm+Ewm+Ec
其中,Ea表示任务从存放在DRAM中的数据访问能耗表示为:Ea=(Nw+Nr)×ead,其中ead为DRAM访问一次的能耗开销,Nw为任务写的次数,Nr为任务读的次数;Ed表示DRAM的静态泄露能耗,表示为:Edram=pdram×(Nw+Nr)×tad,其中pdram为DRAM静态泄露功率;Ers表示SLC的读能耗,表示为:Ers=Nr×ers,其中ers为SLC单元读一次的能耗;Ews表示SLC的写能耗,可表示为Ews=Nw×ews,其中ews为SLC单元写一次的能耗;Ec表示SLC存储单元与MLC存储单元之间相互转换的能耗;Erm表示MLC的读能耗,表示为:Erm=Nr×ermm,其中erm为MLC单元读一次的能耗;Ewm表示MLC的写能耗,可表示为:Ewm=Nw×ewm,其中ewm为MLC单元写一次的能耗。
4.根据权利要求3所述的一种基于可变便笺式存储器的任务分配方法,其特征在于,所述采用动态规划算法,计算出在不同种类以及不同数量的存储介质配置下的能耗最低的任务分配方案包括:
V[i,SS,SM]=min(V[i-1,SS,SM]+EDRAM(ti),V[i-1,SS-size(ti),SM]+ESLC(ti),V[i-1,SS,SM-size(ti)]+EMLC(ti))
其中,V[i,SS,SM]表示第i个任务分配至存储介质中获得最优的价值,具体表示为总的最小能耗开销;SS表示当前SLC所剩的空间,SM表示当前MLC所剩的空间,EDRAM(ti)表示任务ti存放至DRAM中产生的能耗,ESLC(ti)表示任务ti放至SLC SPM中产生的能耗,EMLC(ti)表示任务ti放至MLC SPM中产生的能耗。
5.根据权利要求1所述的一种基于可变便笺式存储器的任务分配方法,其特征在于,所述步骤S2中,
任务分配在DRAM中的时延模型为:
TDRAM=(Nr+Nw)×tad+texe
任务分配在SLC中的时延模型为:
TSLC=Nr×trs+Nw×tws+texe
任务分配在MLC中的时延模型为:
TMLC=Nr×trm+Nw×twm+texe
其中,Nw表示任务i总的写次数,Nr表示任务i总的读次数;tad表示任务在DRAM数据访问的时间,texe表示CPU计算的时间;trs表示任务在SLC中数据读一次的时间,tws表示任务在SLC中数据写一次的时间;trm表示任务在MLC中数据读一次的时间,twm表示任务在MLC中数据写一次的时间。
6.根据权利要求5所述的一种基于可变便笺式存储器的任务分配方法,其特征在于,所述步骤S4包括计算每种任务分配方案下的最优执行时间,表示为
Figure FDA0002370710270000031
建立所有任务分配方案下的最优执行时间集
Figure FDA0002370710270000032
即第二数组;遍历第二数组,依次取出数组
Figure FDA0002370710270000033
遍历数组
Figure FDA0002370710270000034
中的元素并计算
Figure FDA0002370710270000035
根据实时性约束,判断当前任务分配方案是否满足实时性要求,即判断当前任务分配下的任务执行时间是否满足
Figure FDA0002370710270000036
若满足实时性要求,则判断当前时间
Figure FDA0002370710270000037
对应的第一数组中的任务分配方案的能耗是否比当前最优分配方案结果变量optimal_result所对应的能耗更低,若更低,则更新该变量optimal_result的记录,第二数组遍历完成后,最终获得的变量optimal_result即为最优分配方案的映射变量,输出最优的存储介质配置以及任务分配方案;其中,Ci表示第i个任务的执行时间。
7.一种基于可变便笺式存储器的任务调度方法,其特征在于,所述方法包括如权利要求1~6任一所述的基于可变便笺式存储器的任务分配方法,利用任务分配方案将任务分配至对应存储介质后;采用最早截止时间优先EDF调度算法,将任务按照它们的截止期限或周期进行排序,截止期限或周期越早优先级越高,对任务进行有序的调度。
CN202010058016.3A 2020-01-16 2020-01-16 一种基于可变便笺式存储器的任务分配及调度方法 Active CN111273865B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010058016.3A CN111273865B (zh) 2020-01-16 2020-01-16 一种基于可变便笺式存储器的任务分配及调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010058016.3A CN111273865B (zh) 2020-01-16 2020-01-16 一种基于可变便笺式存储器的任务分配及调度方法

Publications (2)

Publication Number Publication Date
CN111273865A true CN111273865A (zh) 2020-06-12
CN111273865B CN111273865B (zh) 2023-07-25

Family

ID=70998806

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010058016.3A Active CN111273865B (zh) 2020-01-16 2020-01-16 一种基于可变便笺式存储器的任务分配及调度方法

Country Status (1)

Country Link
CN (1) CN111273865B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113311997A (zh) * 2021-05-28 2021-08-27 上海阵量智能科技有限公司 一种存储器选择方法、装置、计算机设备及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101576851A (zh) * 2008-05-06 2009-11-11 宇瞻科技股份有限公司 存储单元配置方法及其所适用的存储介质
JP2011186555A (ja) * 2010-03-04 2011-09-22 Toshiba Corp メモリ管理装置及び方法
CN103688246A (zh) * 2011-05-17 2014-03-26 桑迪士克科技股份有限公司 具有在活跃slc和mlc存储器分区之间分布的小逻辑组的非易失性存储器和方法
CN104811495A (zh) * 2015-04-27 2015-07-29 北京交通大学 一种用于智慧协同网络的网络组件内容存储方法及模块
US20150324119A1 (en) * 2014-05-07 2015-11-12 Sandisk Technologies Inc. Method and System for Improving Swap Performance
CN105117285A (zh) * 2015-09-09 2015-12-02 重庆大学 一种基于移动虚拟化系统的非易失性存储器调度优化方法
CN106775476A (zh) * 2016-12-19 2017-05-31 中国人民解放军理工大学 混合内存系统及其管理方法
CN109002257A (zh) * 2018-06-25 2018-12-14 重庆邮电大学 一种基于可变便笺存储器的数据分布优化方法
US20190065388A1 (en) * 2017-08-30 2019-02-28 Micron Technology, Inc. Managed nvm adaptive cache management

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101576851A (zh) * 2008-05-06 2009-11-11 宇瞻科技股份有限公司 存储单元配置方法及其所适用的存储介质
JP2011186555A (ja) * 2010-03-04 2011-09-22 Toshiba Corp メモリ管理装置及び方法
CN103688246A (zh) * 2011-05-17 2014-03-26 桑迪士克科技股份有限公司 具有在活跃slc和mlc存储器分区之间分布的小逻辑组的非易失性存储器和方法
US20150324119A1 (en) * 2014-05-07 2015-11-12 Sandisk Technologies Inc. Method and System for Improving Swap Performance
CN104811495A (zh) * 2015-04-27 2015-07-29 北京交通大学 一种用于智慧协同网络的网络组件内容存储方法及模块
CN105117285A (zh) * 2015-09-09 2015-12-02 重庆大学 一种基于移动虚拟化系统的非易失性存储器调度优化方法
CN106775476A (zh) * 2016-12-19 2017-05-31 中国人民解放军理工大学 混合内存系统及其管理方法
US20190065388A1 (en) * 2017-08-30 2019-02-28 Micron Technology, Inc. Managed nvm adaptive cache management
CN109002257A (zh) * 2018-06-25 2018-12-14 重庆邮电大学 一种基于可变便笺存储器的数据分布优化方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李济潇: ""基于可变便笺式存储器的任务与数据分配优化"" *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113311997A (zh) * 2021-05-28 2021-08-27 上海阵量智能科技有限公司 一种存储器选择方法、装置、计算机设备及存储介质
CN113311997B (zh) * 2021-05-28 2024-03-08 上海阵量智能科技有限公司 一种存储器选择方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN111273865B (zh) 2023-07-25

Similar Documents

Publication Publication Date Title
CN106775476A (zh) 混合内存系统及其管理方法
CN109002257B (zh) 一种基于可变便笺存储器的数据分布优化方法
CN102043721B (zh) 闪存存储管理方法
CN100383792C (zh) 缓存数据库数据组织方法
CN107622020A (zh) 一种数据存储方法、访问方法及装置
CN108268220B (zh) 实时嵌入式系统中非易失性混合式内存的软件优化方法
CN105205008B (zh) 降低混合映射算法中日志块映射表内存资源占用的方法
CN102520885B (zh) 一种混合硬盘的数据管理系统
CN111273865B (zh) 一种基于可变便笺式存储器的任务分配及调度方法
CN111276176A (zh) 一种三维堆叠闪存单元阈值电压分布模型构建方法
CN117539408B (zh) 一种存算一体索引系统及键值对存储系统
CN110765710A (zh) 基于非易失器件的通用逻辑综合方法及装置
CN117234720A (zh) 动态可配置的存算融合数据缓存结构、处理器及电子设备
CN111124313A (zh) 电力采集终端数据读写方法、装置和电子设备
Kim et al. NAND flash memory with multiple page sizes for high-performance storage devices
CN112817982B (zh) 一种基于lsm树的动态幂律图存储方法
Zhang et al. An optimal page-level power management strategy in pcm–dram hybrid memory
de Moura et al. f-Hybridmem: A fuzzy-based approach for decision support in hybrid memory management
CN113065035A (zh) 一种单机核外属性图计算方法
CN113010112B (zh) 一种基于可变电阻式存储器的数据分配优化方法
CN101378406A (zh) 一种数据网格副本的选择方法
CN111863109A (zh) 一种三维闪存层间错误率模型及评估方法
CN110221984A (zh) 存储系统的建立方法、装置、存储系统和访问方法
Zhou et al. Write-Aware Data Allocation on Heterogeneous Memory Architecture with Minimum Cost
Erten Access pattern-aware data placement for hybrid dram/nvm

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