CN105117285B - 一种基于移动虚拟化***的非易失性存储器调度优化方法 - Google Patents

一种基于移动虚拟化***的非易失性存储器调度优化方法 Download PDF

Info

Publication number
CN105117285B
CN105117285B CN201510572270.4A CN201510572270A CN105117285B CN 105117285 B CN105117285 B CN 105117285B CN 201510572270 A CN201510572270 A CN 201510572270A CN 105117285 B CN105117285 B CN 105117285B
Authority
CN
China
Prior art keywords
task
memory
intensive
cpu
virtual machine
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.)
Active
Application number
CN201510572270.4A
Other languages
English (en)
Other versions
CN105117285A (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
Original Assignee
Chongqing University
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 filed Critical Chongqing University
Priority to CN201510572270.4A priority Critical patent/CN105117285B/zh
Publication of CN105117285A publication Critical patent/CN105117285A/zh
Application granted granted Critical
Publication of CN105117285B publication Critical patent/CN105117285B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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

  • Memory System (AREA)

Abstract

本发明公开了一种基于移动虚拟化***的非易失性存储器调度优化方法,它包括以下步骤:步骤1、在移动虚拟化***上,DRAM存储器与NVRAM存储器结合;步骤2、针对单个虚拟机,将任务划分为写密集型任务和读密集型任务;步骤3、根据任务的密集性和CPU的利用率,动态地将写密集型任务分配到DRAM存储器上,读密集型任务分配到NVRAM存储器上;步骤4、在多个虚拟机之间采用不公平的调度算法。本发明具的优点是:增大了内存容量且减少了存储器的能耗,同时提高了任务的响应速度。

Description

一种基于移动虚拟化***的非易失性存储器调度优化方法
技术领域
本发明涉及一种虚拟机和存储器的调度分配方法,具体涉及一种虚拟化***中非易失存储器的调度优化方法。
背景技术
近年来,嵌入式移动设备在计算能力、存储能力等方面都有着明显提升。像大型服务器一样,虚拟化技术也可以应用于智能手机、平板电脑等移动设备。随着多个操作***运行在各自隔离的虚拟机里面,移动虚拟化为移动操作***提供了更好的安全性、隔离性和低成本等优势。一个移动设备上,可在不同虚拟机上运行不同或者相同的操作***。移动虚拟化平台需要在同一时间运行两个或者更多的虚拟机,这样就要求较大内存资源。相比服务器等传统计算设备,移动设备在的内存资源、电池寿命等方面仍然非常有限。以智能手机为例,众所周知智能手机由于大小和温度的限制,只能携带非常有限的电池(1000-2000mAh)。然而,内存单独就能消耗大于30%的所有能耗。通用的DRAM存储器受限于能耗大、容量难扩展等问题,加速了有限能量的耗尽。新型能耗低、容量大的非易失性随机访问存储器(Non-volatile Random Access Memory,简称NVRAM存储器),如:记忆组存储器、相变存储器(PCM),有望替代传统的DRAM存储器,并克服DRAM存储器的问题。
但是,NVRAM存储器存在写延迟长的问题,会降低写密集型任务的性能,时间要求严格的任务可能无法接受性能的降低。为此,结合NVRAM存储器和DRAM存储器的优势,提出了基于NVRAM存储器和DRAM存储器的混合内存***,以替代传统的基于DRAM的内存***。另一方面,目前基于KVM虚拟平台的虚拟机调度都是基于公平调度原则,将每个虚拟机作为一个普通的Linux进程,采用Linux默认的CFS调度算法,并将每个虚拟机都赋予相同优先级,,以保证每个虚拟机得到同等的资源。而移动设备用户更关注前台虚拟机性能,例如软件响应速度等。因此,在移动虚拟化***上的基于NVRAM/DRAM混合内存的调度算法需要重新设计,以保证前台虚拟机获得更多硬件资源,增加前台虚拟机的流畅度。
发明内容
针对现有技术存在的不足,本发明所要解决的技术问题是从虚拟化资源管理的层面,提供一种基于移动虚拟化***的非易失性存储器调度优化方法,它能减少存储器的能耗,还能提高前台虚拟机任务的响应速度,并满足前台任务的实时性。
本发明所要解决的技术问题是通过这样的技术方案实现的,它包括有以下步骤:
步骤1、在移动虚拟化***上,
针对单个虚拟机,将任务划分为写密集型任务和读密集型任务;
步骤2、根据任务的密集性和CPU的利用率,动态地将写密集型任务分配到DRAM存储器上,读密集型任务分配到NVRAM存储器上;
步骤1)若待执行的任务为读密集型任务,将任务分配到NVRAM存储器;若任务为写密集型任务,将任务分配到DRAM存储器;
步骤2)首先判断任务的CPU利用率是否大于1,
Ut是满足所有任务都可调度的最大的CPU利用率,Ut取1;该式左端就表示所有任务的CPU利用率之和;xi为每个任务的标志位,EDi代表基于DRAM存储器的任务执行时间,ENi代表基于NVRAM存储器的任务执行时间,Pi代表任务的执行周期;n为执行任务的总数;
然后判断存放在NVRAM存储器的任务大小是否大于NVRAM存储器的大小;
Si代表任务需内存的大小,S为NVRAM存储器的大小;
步骤3)若步骤2)中有一个条件成立,则选在NVRAM存储器上的任务中具有最大RAi的任务,RAi为计算任务Ti写操作次数Wi与读操作次数Ri的比率,改存放到DRAM存储器上,直到步骤2)中没有一个条件成立;
步骤3、在KVM虚拟平台上,提升前台虚拟机优先级,多个虚拟机之间采用不公平的调度算法。
本发明由于在步骤2,根据任务的密集性和CPU的利用率,动态地将写密集型任务分配到高性能的DRAM存储器上,读密集型任务分配到高密度、低功耗的NVRAM存储器上,在扩大内存的基础上尽量减少***能耗;由于在步骤3,在多个虚拟机之间采用不公平的调度算法,增加前台虚拟机任务的优先级,使前台虚拟机获得更多的执行时间,从而减少任务截止时间的缺失率,并提高任务的响应速度。
本发明具有以下优点:增大了内存容量且减少了存储器的能耗,同时提高了任务的响应速度。
附图说明
本发明的附图说明如下:
图1为本发明虚拟机的任务分配流程图;
图2为本发明的虚拟机调度流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步说明:
本发明包括有以下步骤:
步骤1、在移动虚拟化***上,DRAM存储器与NVRAM存储器结合;
针对单个虚拟机,将任务划分为写密集型任务和读密集型任务;
步骤2、根据任务的密集性和CPU的利用率,动态地将写密集型任务分配到DRAM存储器上,读密集型任务分配到NVRAM存储器上;
步骤3、在KVM虚拟平台上,提升前台虚拟机优先级,多个虚拟机之间采用不公平的调度算法。
如图1所示,上述步骤2中任务划分过程和上述步骤3中任务分配过程如下:该流程开始于步骤101,
在步骤102,输入要执行的任务集T={T1,T2,...Tn},并给出每个任务的相关信息Ti<Wi,Ri,Si,EDi,ENi,Pi>,其中,Ti为任务集T的任一元素;Wi代表任务的写次数,Ri代表任务的读次数,Si代表任务需内存的大小,EDi代表基于DRAM存储器的任务执行时间,ENi代表基于NVRAM存储器的任务执行时间,Pi代表任务的执行周期;还输入NVRAM存储器的大小S和NVRAM存储器被占用大小SN
在步骤103,初始化每个任务Ti的执行时间为DRAM存储器上的执行时间Ci=EDi
在步骤104,初始化每个任务Ti的标志位xi=1,代表任务在DRAM存储器上执行;
在步骤105,设置i=1,从任务1开始判定;
在步骤106,判定i是否小于执行任务的总数n;若是,则执行步骤107;否则,执行步骤112;
在步骤107,计算任务Ti写操作次数Wi与读操作次数Ri的比率:
在步骤108,判定任务Ti的写密集性:为此设定一个阈值α,如果任务Ti的写操作次数Wi除以读操作次数Ri的值小于该阈值α,Ti归类为读密集型任务,接下来执行步骤109;相反,如果大于阈值α,Ti归类为写密集型任务,接下来执行步骤110;
在步骤109,将任务Ti分配到NVRAM存储器,重新设定任务Ti的执行时间为Ci=ENi,标志位xi=0,代表任务在NVRAM存储器上执行,接下来执行步骤111;
在步骤110,将任务Ti分配到DRAM存储器,接下来执行步骤111;
在步骤111,执行i加1,接下来执行步骤106;
在步骤112,首先判断任务的CPU利用率是否小于1:
Ut是满足所有任务都可调度的最大的CPU利用率,不同的调度算法Ut不同,本发明使用调度算法的Ut为1;则该式就表示所有任务的CPU利用率之和必需小于调度算法所能调度的最大CPU利用率,否则就会有一部分任务在截止时间之前不能调度;
然后判断存放在NVRAM存储器的任务是否大于NVRAM存储器的大小:
若上述(1)式或(2)式中有一个成立,则执行步骤113;否则,执行步骤115;
在步骤113,选在NVRAM存储器上的任务(N-task)中具有最大RAi的任务Ti,改存放到DRAM存储器上;
在步骤114,修改任务Ti的执行时间为DRAM存储器上的执行时间Ci=EDi,标志位xi=1,接下来执行步骤112;
通过步骤112到步骤114循环,直到步骤112中没有一个条件成立,以此来尽可能地提高NVRAM存储器和CPU的利用率。
在步骤115,程序结束。
如图2所示,上述步骤3的虚拟机调度算法如下:该流程开始于步骤201,然后,
在步骤202,输入虚拟机集合VM={VM1,VM2,...,VMn},每个虚拟机VMi的vCPU集合{vCPU1,vCPU2,...,vCPUn},以及CPU集合CPU={CPU1,CPU2,...,CPUn}和每个CPU的任务运行队列;
在步骤203,假设每个虚拟机VMi都在后台运行,每个虚拟机VMi设置级别为低级:PRIi=low;
在步骤204,判断任务集T={T1,T2,...Tn}是否为空;若为空,则执行步骤212;否则,执行步骤205;
在步骤205,判断是否有虚拟机VMi由后台切换到前台,若是,执行步骤206;否则执行步骤207;
在步骤206,重新设置虚拟机VMi的级别为高级:PRIi=high;然后执行步骤207;
在步骤207,判断是否有虚拟机VMi由前台切换到后台,若是,执行步骤208;否则执行步骤209;
在步骤208,重新设置虚拟机VMi的级别为低级:PRIi=low;重新执行VMi负载均衡;然后执行步骤209;
在步骤209,判断CPU的任务运行队列是否为空,若是,则执行步骤210;否则执行步骤211;
在步骤210,重新执行CPU负责均衡;然后执行步骤211;
在步骤211,执行CFS调度算法来调度虚拟机。在KVM虚拟平台上,将每个虚拟机作为一个普通的Linux进程,并根据虚拟机的优先级给每个虚拟机分配不同的调度参数(nice值,值越小优先级越高),从而给每个虚拟机分配不同的CPU时间,以保证前台虚拟机获得更多的硬件资源。接下来执行步骤204;
在步骤212,程序结束。

Claims (3)

1.一种基于移动虚拟化***的非易失性存储器调度优化方法,其特征是,包括:
步骤1、在移动虚拟化***上,针对单个虚拟机,将任务划分为写密集型任务和读密集型任务;
步骤2、根据任务的密集性和CPU的利用率,动态地将写密集型任务分配到DRAM存储器上,读密集型任务分配到NVRAM存储器上:
步骤1)若待执行的任务为读密集型任务,将任务分配到NVRAM存储器;若任务为写密集型任务,将任务分配到DRAM存储器;
步骤2)首先判断任务的CPU利用率是否大于1,
Ut是满足所有任务都可调度的最大的CPU利用率,Ut取1;该式左端就表示所有任务的CPU利用率之和;xi为每个任务的标志位,EDi代表基于DRAM存储器的任务执行时间,ENi代表基于NVRAM存储器的任务执行时间,Pi代表任务的执行周期;n为执行任务的总数;
然后判断存放在NVRAM存储器的任务大小是否大于NVRAM存储器的大小;
Si代表任务需内存的大小,S为NVRAM存储器的大小;
步骤3)若步骤2)中有一个条件成立,则选在NVRAM存储器上的任务中具有最大RAi的任务,RAi为计算任务Ti写操作次数Wi与读操作次数Ri的比率,改存放到DRAM存储器上,直到步骤2)中没有一个条件成立;
步骤3、在KVM虚拟平台上,提升前台虚拟机优先级,多个虚拟机之间采用不公平的调度算法。
2.根据权利要求1所述的基于移动虚拟化***的非易失性存储器调度优化方法,其特征是:所述写密集型任务和读密集型任务划分步骤包括:
步骤1),获得要执行的任务集T={T1,T2,...Tn},并给出每个任务的相关信息Ti<Wi,Ri,Si,EDi,ENi,Pi>,其中,Ti为任务集T的任一元素;Wi代表任务的写次数,Ri代表任务的读次数,Si代表任务需内存的大小,EDi代表基于DRAM存储器的任务执行时间,ENi代表基于NVRAM存储器的任务执行时间,Pi代表任务的执行周期;还输入NVRAM存储器的大小S和NVRAM存储器被占用大小SN
步骤2),计算任务Ti写操作次数Wi与读操作次数Ri的比率:
步骤3),判定任务Ti的写密集性:设定一个阈值α,如果任务Ti的RAi小于该阈值α,Ti归类为读密集型任务,如果大于阈值α,Ti归类为写密集型任务。
3.根据权利要求2所述的基于移动虚拟化***的非易失性存储器调度优化方法,其特征是:所述步骤3包括以下步骤:
步骤1)获得虚拟机集合VM={VM1,VM2,...,VMn},每个虚拟机VMi的vCPU集合{vCPU1,vCPU2,...,vCPUn},以及CPU集合CPU={CPU1,CPU2,...,CPUn}和每个CPU的任务运行队列;
步骤2)假设每个虚拟机VMi都在后台运行,每个VMi设置级别为低级:PRIi=low;若虚拟机VMi由后台切换到前台,重新设置VMi的级别为高级:PRIi=high;相反,若虚拟机VMi由前台切换到后台,重新设置VMi的级别为低级:PRIi=low;
步骤3)重新利用CPU的负载均衡调节资源的分配。
CN201510572270.4A 2015-09-09 2015-09-09 一种基于移动虚拟化***的非易失性存储器调度优化方法 Active CN105117285B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510572270.4A CN105117285B (zh) 2015-09-09 2015-09-09 一种基于移动虚拟化***的非易失性存储器调度优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510572270.4A CN105117285B (zh) 2015-09-09 2015-09-09 一种基于移动虚拟化***的非易失性存储器调度优化方法

Publications (2)

Publication Number Publication Date
CN105117285A CN105117285A (zh) 2015-12-02
CN105117285B true CN105117285B (zh) 2019-03-19

Family

ID=54665286

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510572270.4A Active CN105117285B (zh) 2015-09-09 2015-09-09 一种基于移动虚拟化***的非易失性存储器调度优化方法

Country Status (1)

Country Link
CN (1) CN105117285B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105550040B (zh) * 2015-12-29 2019-06-14 四川中电启明星信息技术有限公司 基于kvm平台的虚拟机cpu资源预留算法
KR20170085286A (ko) * 2016-01-14 2017-07-24 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
CN107038121B (zh) 2016-02-03 2020-11-17 华为技术有限公司 虚拟机的内存地址分配方法以及装置
CN106445633A (zh) * 2016-09-13 2017-02-22 中国电子科技集团公司第三十二研究所 通过nvram提升虚拟机性能的方法和***
CN108182158A (zh) * 2018-01-12 2018-06-19 江苏华存电子科技有限公司 一种应用在存储***中的任务调度优化方法
CN108897618B (zh) * 2018-06-19 2021-10-01 中国科学技术大学 一种异构内存架构下基于任务感知的资源分配方法
CN111273865B (zh) * 2020-01-16 2023-07-25 重庆邮电大学 一种基于可变便笺式存储器的任务分配及调度方法
CN112231095B (zh) * 2020-09-02 2023-03-28 北京航空航天大学 基于机器学习的面向资源管理的云任务细粒度分类方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101799784A (zh) * 2009-02-10 2010-08-11 三星电子株式会社 存储器装置及其损耗平均方法
CN103810113A (zh) * 2014-01-28 2014-05-21 华中科技大学 一种非易失存储器和动态随机存取存储器的融合内存***
CN104115132A (zh) * 2011-12-22 2014-10-22 英特尔公司 借助于存储器通道关闭的功率节约
CN104298615A (zh) * 2014-10-09 2015-01-21 重庆大学 一种存储器交换分区损耗的均衡方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101799784A (zh) * 2009-02-10 2010-08-11 三星电子株式会社 存储器装置及其损耗平均方法
CN104115132A (zh) * 2011-12-22 2014-10-22 英特尔公司 借助于存储器通道关闭的功率节约
CN103810113A (zh) * 2014-01-28 2014-05-21 华中科技大学 一种非易失存储器和动态随机存取存储器的融合内存***
CN104298615A (zh) * 2014-10-09 2015-01-21 重庆大学 一种存储器交换分区损耗的均衡方法

Also Published As

Publication number Publication date
CN105117285A (zh) 2015-12-02

Similar Documents

Publication Publication Date Title
CN105117285B (zh) 一种基于移动虚拟化***的非易失性存储器调度优化方法
CN1717645B (zh) 用于多线程处理器性能控制的装置和方法
US8935491B2 (en) Memory architecture for dynamically allocated manycore processor
EP2657836A1 (en) Acceleration method, device and system for co-processing
CN104090847A (zh) 一种固态存储设备的地址分配方法
US9274852B2 (en) Apparatus and method for managing virtual processing unit
CN111767134A (zh) 一种多任务动态资源调度方法
US20130167152A1 (en) Multi-core-based computing apparatus having hierarchical scheduler and hierarchical scheduling method
US10013264B2 (en) Affinity of virtual processor dispatching
US8769543B2 (en) System and method for maximizing data processing throughput via application load adaptive scheduling and context switching
US20130097382A1 (en) Multi-core processor system, computer product, and control method
US10768684B2 (en) Reducing power by vacating subsets of CPUs and memory
US20120102012A1 (en) Cross-region access method for embedded file system
CN113342477A (zh) 一种容器组部署方法、装置、设备及存储介质
US9069621B2 (en) Submitting operations to a shared resource based on busy-to-success ratios
Singh et al. Value and energy optimizing dynamic resource allocation in many-core HPC systems
CN104182280B (zh) 面向混合主存嵌入式***的低能耗rm实时任务调度方法
CN109324886A (zh) 集群资源调度方法和装置
CN112114967B (zh) 一种基于服务优先级的gpu资源预留方法
KR102204032B1 (ko) 비대칭 멀티코어 기반 스마트 모바일 단말의 에너지 소모를 줄이기 위한 실시간 태스크의 코어 할당 방법 및 그 장치
CN110955644A (zh) 一种存储***的io控制方法、装置、设备及存储介质
WO2022083471A1 (zh) 一种功耗管理方法、装置
WO2024013831A1 (ja) タスクスケジューラ装置、計算システム、タスクスケジューリング方法およびプログラム
KR100676671B1 (ko) 유저 쓰레드 관리 장치 및 그 방법
Liu et al. D-IOCost: Dynamic Cost-Aware Fair Queueing for Better I/O Proportionality and Performance

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant