CN108776617A - It is a kind of that target identification method is prefetched based on access frequency and dynamic priority - Google Patents

It is a kind of that target identification method is prefetched based on access frequency and dynamic priority Download PDF

Info

Publication number
CN108776617A
CN108776617A CN201810585355.XA CN201810585355A CN108776617A CN 108776617 A CN108776617 A CN 108776617A CN 201810585355 A CN201810585355 A CN 201810585355A CN 108776617 A CN108776617 A CN 108776617A
Authority
CN
China
Prior art keywords
cow
target
disks
access
timeslice
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
Application number
CN201810585355.XA
Other languages
Chinese (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.)
Shandong Chaoyue CNC Electronics Co Ltd
Original Assignee
Shandong Chaoyue CNC Electronics Co Ltd
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 Shandong Chaoyue CNC Electronics Co Ltd filed Critical Shandong Chaoyue CNC Electronics Co Ltd
Priority to CN201810585355.XA priority Critical patent/CN108776617A/en
Publication of CN108776617A publication Critical patent/CN108776617A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority

Abstract

The present invention provides a kind of prefetching target identification method based on access frequency and dynamic priority, belong to field of cloud computer technology, the present invention is analyzed by the COW disk access statistical informations to VMM, using the COW disks of access frequency highest or highest priority as prefetching target.It is concentrated on a few corresponding COW disk of the used software of user by that will prefetch, substantially increases the specific aim prefetched, help to reduce the number for taking block on demand and improve the runnability of software in virtual machine.

Description

It is a kind of that target identification method is prefetched based on access frequency and dynamic priority
Technical field
The present invention relates to cloud computing technologies more particularly to a kind of target that prefetches based on access frequency and dynamic priority to know Other method.
Background technology
The specific aim that the accuracy of target prefetches raising is prefetched, and then improves the local life of software task in virtual machine Middle rate is vital.Ensure the key for prefetching target accuracy is that the COW disk access obtained from VMM layer how to be utilized to believe Breath carrys out COW disks corresponding with accurately identification the used software of user in real time.DPM(Demand-driven Prefetch The virtual machine image of Mechanism, requirement drive prefetch mechanism) mechanism of the corresponding COW disks of identification the used software of user It is based primarily upon following facts:
1. if the access frequency of a COW disk within a short period of time is higher than other COW disks, wherein installing Software is probably user's software currently in use, which should prefetch target as current;
2. if COW disk access frequency in one section of longer time is higher, wherein the software installed is very May be exactly the software that user or frequently uses, it should be higher as the priority for prefetching target.
Invention content
For the lance of user terminal stand-by period and virtual machine runnability existing for the deploying virtual machine under distributed environment Shield.The present invention proposes a kind of prefetching target identification method AFPTR (Access based on access frequency and dynamic priority Frequency and dynamic Priority-based prefetch Target Recognition), by VMM's COW disk access statistical informations are analyzed, using the COW disks of access frequency highest or highest priority as prefetching target.
The invention mainly comprises the following steps:
1. time slicing:User is divided into the short period piece TS (Time that length is t using the time of software in virtual machine Slice), the COW disk access statistical informations in single timeslice are the basic foundations that present invention identification prefetches target.
2. currently prefetching target:According to the COW disk access statistical informations of a upper timeslice, by access frequency highest or The COW disks of highest priority prefetch target as current time piece;When user uses various software, target is currently prefetched It can change with the variation for using software.
3.COW disk priority:Each COW disks are endowed a priority;When a COW disk is in a timeslice It is interior due to access frequency highest and as prefetch target when, be incremented by the COW disks priority;When a COW disk is in N number of company Do not become when prefetching target in continuous timeslice, the priority for the COW disks that successively decrease.
4. timeout mechanism:For the timeslice of no read request, last timeslice is prefetched into target as currently prefetching mesh Mark;If still the COW disks of highest priority made without read request after continuously across M without the timeslice of read request Currently to prefetch target.
VMM is by the COW disk access statistics record of each timeslice in the acess control information area as shown in Figure 1 (access_profile) in.When a COW disk is accessed, VMM is incremented by corresponding count value in the acess control information area. Using the COW disk access statistical informations in the acess control information area, policy module prefetch_policy each times are prefetched Piece executes an above-mentioned steps and prefetches target COW disks with determine current time piece.Module prefetch is prefetched according to prefetching Target COW disks, VMM without on demand take block to ask when execute prefetching process.
If pre_target and cur_target, which are respectively a upper timeslice and current time piece, prefetches target COW magnetic The sequence number of disk, Max_Seq_No are maximum COW Disk Serial Numbers, access_profile, TS_counter and cow_ Prio is with COW Disk Serial Numbers for lower target array, and access_profile records the accessed number of each COW disks, TS_counter records the timeslice count value of each COW disks, and cow_prio is the number for recording each COW disks priority Group, function Inc_Slice_Counter are incremented by each timeslice count value in given time piece counting array, function Get_ Max returns to the maximum value in fixed number group, and function Fetch_Complete judges whether total caching arrives given COW disks Local, function Clear_Access_Profile removes the COW disk access meters of a upper timeslice in access_profile Number, M and N are timeout threshold, and m is count value and initial value is 0, then pseudocode of the invention is described as follows shown in text.
Input:COW magnetic disc access times array access_profile, COW disk time pieces count array TS_ Counter, COW disk priority array cow_prio, timeout threshold M, N
Output:Prefetch the sequence number cur_target of target COW disks
When user is using various software collaborative work and frequent switching between them, the identification of AFPTR algorithms is utilized Prefetching target also accordingly can continually change.DPM prefetches mesh calibration method by keeping multiple in piece at the same time Lower prefetching efficiency caused by frequent switching to avoid individually prefetching target.No matter target (cur_target) is currently prefetched Prefetch whether target (pre_target) is identical with a upper timeslice, the module prefetch that prefetches of DPM will be to upper one The prefetching for target (pre_target) that prefetch of timeslice keeps a timeslice, therefore prefetches module in a timeslice most More targets (COW disks) that prefetch different to two simultaneously prefetch.
Prefetch target identification method of the AFPTR algorithms by fine-grained time slicing and based on access frequency is known in real time The corresponding COW disks of the other currently used software of user, improve the specific aim prefetched;The excellent of COW disks is adjusted by dynamic First grade so that the higher COW disks of access frequency are bigger as the probability for prefetching target in one section of longer time, further Improve the accuracy for prefetching target identification;It is realized by the suitable timeout parameter of setting preferential using locality of reference and height Grade COW disks preferentially prefetch between balance, reduce prefetching the invalid of target for mistake and prefetch as far as possible.It is compared to single Large scale virtual disk image, AFPTR algorithms concentrate on a few corresponding COW magnetic of the used software of user by that will prefetch On disk, the specific aim prefetched is substantially increased, help to reduce the number for taking block on demand and improves the operation of software in virtual machine Performance.
Description of the drawings
Fig. 1 is that requirement drive virtual machine image prefetches mechanism schematic diagram of main components.
Specific implementation mode
More detailed elaboration is carried out to present disclosure below:
In the realization based on QEMU virtual machines, pressed being realized in the on-demand deployment mechanisms prototype system of virtual machine of centralization The client of block function and service routine need to be taken to be extended to respectively as shown in Figure 1 to prefetch CLIENT PROGRAM cow_client and prefetch clothes Program of being engaged in cow_server.In addition to taking block thread on demand, prefetch threads are extended to prefetching CLIENT PROGRAM cow_client With prefetch_policy threads to realize pre-fetch function.Cow_client will create user's end block caching when program starts Area (block_cache) carries out pipe for caching the block obtained from server end, and using LRU replacement strategy to block buffer area Reason.The service routine cow_server that prefetches of server end is extended by two request queues different types of block is taken to ask to distinguish It asks:It takes block request queue on demand and prefetches request queue.Cow_server is serviced according to the strategy of prerequisite variable (FIFO) Request in every queue, and Priority Service takes in block request queue and block is taken to ask on demand;Block request queue is only taken on demand For sky when, just service, which prefetches in request queue, takes block to ask.
By the way that DEMAND_FETCH the and SHARED_MEM_MGNT marks in configuration file mcow.cfg are both configured to True takes block and shared section key management function to enable the on-demand of mcow drivings, to support to prefetch mechanism.Mcow is in virtual block Share and access statistical information area (access_profile) is created when equipment initializes, and by COW in virtual machine operational process The acess control information (COW disk access count value takes block number, history access information etc. on demand) of disk is recorded in real time at visit It asks in statistical information area.Mcow can be accessed in virtual machine operational process to be delayed by prefetching the block that CLIENT PROGRAM cow_client is created Area (block_cache) is deposited to improve the access performance of virtual disk.The semaphore machine that mcow and cow_client passes through Linux System realizes the read-write mutual exclusion to two pieces of shared section keys.

Claims (5)

1. a kind of prefetching target identification method based on access frequency and dynamic priority, which is characterized in that include mainly as follows Several steps,
1), time slicing:User is divided into the short period piece TS that length is t using the time of software in virtual machine, when single Between COW disk access statistical informations in piece be basic foundation that identification prefetches target;
2) target, is currently prefetched:According to the COW disk access statistical informations of a upper timeslice, by access frequency highest or excellent The first highest COW disks of grade prefetch target as current time piece;When user uses more than one software, currently prefetch Target can change with the variation for using software;
3), COW disks priority:Each COW disks are endowed a priority;When a COW disk is in a timeslice Due to access frequency highest as when prefetching target, it is incremented by the priority of the COW disks;When a COW disk is N number of continuous Timeslice in do not become when prefetching target, the priority for the COW disks that successively decrease;
4), timeout mechanism:For the timeslice of no read request, last timeslice is prefetched into target as currently prefetching target; If still without read request after continuously across M without the timeslice of read request, using the COW disks of highest priority as working as Before prefetch target.
2. according to the method described in claim 1, it is characterized in that,
VMM is by the COW disk access statistics record of each timeslice in the acess control information area;When a COW disk When accessed, VMM is incremented by corresponding count value in the acess control information area;It is visited using the COW disks in the acess control information area Ask statistical information, prefetch each timeslices of policy module prefetch_policy execute an above-mentioned steps it is current with determination when Between piece prefetch target COW disks;Module prefetch is prefetched according to prefetching target COW disks, in VMM without taking block to ask on demand Shi Zhihang prefetching process.
3. according to the method described in claim 2, it is characterized in that,
Pre_target and cur_target is respectively the sequence for prefetching target COW disks of upper a timeslice and current time piece Row number, Max_Seq_No be maximum COW Disk Serial Numbers, access_profile, TS_counter and cow_prio be with COW Disk Serial Numbers are lower target array, and access_profile records the accessed number of each COW disks, TS_ Counter records the timeslice count value of each COW disks, and cow_prio is the array for recording each COW disks priority, letter Number Inc_Slice_Counter is incremented by each timeslice count value in given time piece counting array, and function Get_Max is returned Maximum value in given array, function Fetch_Complete judge given COW disks whether total caching to local, letter The COW disk access that number Clear_Access_Profile removes a upper timeslice in access_profile counts, M and N For timeout threshold, m is count value and initial value is 0, then pseudocode is described as follows shown:
Input:COW magnetic disc access times array access_profile, COW disk time pieces count array TS_counter, COW disk priority array cow_prio, timeout threshold M, N
Output:Prefetch the sequence number cur_target of target COW disks
Procedure AFPTR()
4. according to the method described in claim 3, it is characterized in that,
When user is using more than one software collaboration work and frequent switching between them, the target that prefetches of identification also can Accordingly continually change.
5. according to the method described in claim 4, it is characterized in that,
The module target COW disks that prefetch at most different to two simultaneously in a timeslice are prefetched to prefetch.
CN201810585355.XA 2018-06-08 2018-06-08 It is a kind of that target identification method is prefetched based on access frequency and dynamic priority Pending CN108776617A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810585355.XA CN108776617A (en) 2018-06-08 2018-06-08 It is a kind of that target identification method is prefetched based on access frequency and dynamic priority

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810585355.XA CN108776617A (en) 2018-06-08 2018-06-08 It is a kind of that target identification method is prefetched based on access frequency and dynamic priority

Publications (1)

Publication Number Publication Date
CN108776617A true CN108776617A (en) 2018-11-09

Family

ID=64025929

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810585355.XA Pending CN108776617A (en) 2018-06-08 2018-06-08 It is a kind of that target identification method is prefetched based on access frequency and dynamic priority

Country Status (1)

Country Link
CN (1) CN108776617A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109586951A (en) * 2018-11-07 2019-04-05 北京达佳互联信息技术有限公司 Implement method, apparatus, electronic equipment and the readable storage medium storing program for executing of failure transfer

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7793265B2 (en) * 2007-06-04 2010-09-07 International Business Machines Corporation Method, apparatus and computer program product for optimizing file accesses for an application executing in a virtual container
CN102307133A (en) * 2011-03-25 2012-01-04 国云科技股份有限公司 Virtual machine scheduling method for public cloud platform
CN103577249A (en) * 2013-11-13 2014-02-12 中国科学院计算技术研究所 Method and system for virtual machine online migration
CN104156255A (en) * 2014-07-31 2014-11-19 华为技术有限公司 Virtual machine migration method, virtual machine migration device and source physical host
CN104391736A (en) * 2014-11-25 2015-03-04 杭州华为数字技术有限公司 Method for setting up sleep mode of virtual machine and device
CN104536909A (en) * 2014-12-09 2015-04-22 华为技术有限公司 Memory management method, memory management device and memory device
US20160078049A1 (en) * 2011-04-29 2016-03-17 International Business Machines Corporation Disk image introspection for storage systems
US20170103202A1 (en) * 2015-10-07 2017-04-13 Electronics And Telecommunications Research Institute Apparatus and method for monitoring virtual machine based on hypervisor

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7793265B2 (en) * 2007-06-04 2010-09-07 International Business Machines Corporation Method, apparatus and computer program product for optimizing file accesses for an application executing in a virtual container
CN102307133A (en) * 2011-03-25 2012-01-04 国云科技股份有限公司 Virtual machine scheduling method for public cloud platform
US20160078049A1 (en) * 2011-04-29 2016-03-17 International Business Machines Corporation Disk image introspection for storage systems
CN103577249A (en) * 2013-11-13 2014-02-12 中国科学院计算技术研究所 Method and system for virtual machine online migration
CN104156255A (en) * 2014-07-31 2014-11-19 华为技术有限公司 Virtual machine migration method, virtual machine migration device and source physical host
CN104391736A (en) * 2014-11-25 2015-03-04 杭州华为数字技术有限公司 Method for setting up sleep mode of virtual machine and device
CN104536909A (en) * 2014-12-09 2015-04-22 华为技术有限公司 Memory management method, memory management device and memory device
US20170103202A1 (en) * 2015-10-07 2017-04-13 Electronics And Telecommunications Research Institute Apparatus and method for monitoring virtual machine based on hypervisor

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
陈彬 消侬 蔡志平 王志英: "虚拟机环境下软件按需部署中的预取机制", 《软件学报》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109586951A (en) * 2018-11-07 2019-04-05 北京达佳互联信息技术有限公司 Implement method, apparatus, electronic equipment and the readable storage medium storing program for executing of failure transfer

Similar Documents

Publication Publication Date Title
EP2539821B1 (en) Caching based on spatial distribution of accesses to data storage devices
Blankstein et al. Hyperbolic caching: Flexible caching for web applications
JP2004133934A (en) Method and mechanism for proactive memory control
US8429351B1 (en) Techniques for determining an amount of data to prefetch
US6748491B2 (en) Designing a cache using an LRU-LFU array
US7877547B2 (en) Method, system and circuit for efficiently managing a cache storage device
EP3089039B1 (en) Cache management method and device
US20130232310A1 (en) Energy efficiency in a distributed storage system
CN103279429A (en) Application-aware distributed global shared cache partition method
CN102981944B (en) A kind of log storing method based on file system
CN104731974A (en) Dynamic page loading method based on big data stream type calculation
EP3066572B1 (en) Cache memory budgeted by chunks based on memory access type
CN109189693B (en) Method for predicting LBA information and SSD
Das et al. Reuse distance-based probabilistic cache replacement
CN103838539A (en) Performance measurement unit, processor core comprising thereof and process profiling method
CN108776617A (en) It is a kind of that target identification method is prefetched based on access frequency and dynamic priority
EP2842040B1 (en) Collaborative caching
US10089236B2 (en) Apparatus and method of performing agentless remote IO catching analysis, prediction, automation, and recommendation in a computer environment
Yang et al. Reducing garbage collection overhead in {SSD} based on workload prediction
JPH08147218A (en) Cache controller
US10168944B2 (en) Information processing apparatus and method executed by an information processing apparatus
CN106919471A (en) For the method and system that snapshot is set up
CN103324441A (en) Information processing method and electric device
US10223270B1 (en) Predicting future access requests by inverting historic access requests in an object storage system
CN107193641A (en) A kind of various dimensions task recognition method and device based on cloud platform

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