CN112527506B - Device resource processing method and device, electronic device and storage medium - Google Patents

Device resource processing method and device, electronic device and storage medium Download PDF

Info

Publication number
CN112527506B
CN112527506B CN202011507117.0A CN202011507117A CN112527506B CN 112527506 B CN112527506 B CN 112527506B CN 202011507117 A CN202011507117 A CN 202011507117A CN 112527506 B CN112527506 B CN 112527506B
Authority
CN
China
Prior art keywords
resource
resource block
block
amount
application
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
CN202011507117.0A
Other languages
Chinese (zh)
Other versions
CN112527506A (en
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202011507117.0A priority Critical patent/CN112527506B/en
Publication of CN112527506A publication Critical patent/CN112527506A/en
Application granted granted Critical
Publication of CN112527506B publication Critical patent/CN112527506B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The application discloses a processing method and device of equipment resources, electronic equipment and a storage medium, and relates to the technical field of artificial intelligence, in particular to the technical fields of cloud computing, big data, deep learning and the like. The specific implementation scheme is as follows: determining a target resource amount to be allocated to any application currently according to the data amount of the data to be processed currently of the application; under the condition that the target resource amount is less than or equal to the resource amount corresponding to any first resource block in a preset resource list, allocating a target resource matched with the target resource amount in any first resource block to any application; and updating the resource block identifier contained in the preset resource list. Therefore, when the resource is allocated to any application, the resource blocks with small corresponding resource amount are preferentially allocated, so that the utilization rate of the equipment resources can be improved to the maximum extent under the condition of meeting the application requirements, and the resources can be better recovered and utilized.

Description

Device resource processing method and device, electronic device and storage medium
Technical Field
The application relates to the technical field of artificial intelligence, in particular to the technical fields of cloud computing, big data, deep learning and the like, and particularly relates to a processing method and device of equipment resources, electronic equipment and a storage medium.
Background
With the rapid development of computer technology, the field of machine learning has also been rapidly developed, and the success of deep learning in each field is more and more remarkable. The resources required by each application are more and more, and how to meet the resource requirements of each application and improve the resource utilization rate is very important.
Disclosure of Invention
The application provides a method, a device, equipment and a storage medium for processing equipment resources.
According to an aspect of the application, there is provided a method comprising:
determining a target resource amount to be allocated to any application currently according to the data amount of the data to be processed currently of the application;
under the condition that the target resource amount is less than or equal to the resource amount corresponding to any first resource block in a preset resource list, allocating a target resource matched with the target resource amount in any first resource block to any application;
and updating the resource block identifier contained in the preset resource list.
According to another aspect of the application, there is provided an apparatus comprising:
the determining module is used for determining the target resource amount to be allocated to any application according to the data amount of the data to be processed currently by the application;
a first allocation module, configured to allocate, to any one of the applications, a target resource that is matched with any one of the first resource blocks in a preset resource list when the target resource amount is less than or equal to a resource amount corresponding to the target resource amount;
and the updating module is used for updating the resource block identifier contained in the preset resource list.
According to still another aspect of the present application, there is provided an electronic device including:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method for processing the device resource according to the embodiment of the above aspect.
According to another aspect of the present application, there is provided a non-transitory computer readable storage medium storing thereon a computer program for causing a computer to execute a method for processing a device resource according to an embodiment of the above-described aspect.
According to another aspect of the present application, there is provided a computer program product comprising a computer program, which when executed by a processor, implements the processing method of the device resource according to the embodiment of the above-mentioned aspect.
The method and the device for processing the equipment resources, the electronic equipment and the storage medium have the following beneficial effects:
determining a target resource amount to be allocated to any application currently according to the data amount of data to be processed currently of any application, allocating a target resource matched with the target resource amount in any first resource block to any application under the condition that the target resource amount is less than or equal to the resource amount corresponding to any first resource block in a preset resource list, and then updating a resource block identifier contained in the preset resource list. Therefore, when any application is subjected to resource allocation, the resource blocks with small corresponding resource amount are preferentially allocated, so that the first resource blocks in the preset resource list can be used as much as possible, the utilization rate of equipment resources can be improved to the maximum extent under the condition of meeting application requirements, and the resources can be better recycled and utilized.
It should be understood that the statements in this section do not necessarily identify key or critical features of the embodiments of the present application, nor do they limit the scope of the present application. Other features of the present application will become apparent from the following description.
Drawings
The drawings are included to provide a better understanding of the present solution and are not intended to limit the present application. Wherein:
fig. 1 is a schematic flowchart of a method for processing device resources according to an embodiment of the present application;
fig. 2 is a flowchart illustrating a method for processing device resources according to another embodiment of the present application;
fig. 3 is a flowchart illustrating a method for processing device resources according to another embodiment of the present application;
fig. 4 is a schematic structural diagram of a device resource processing apparatus according to an embodiment of the present application;
fig. 5 is a schematic structural diagram of a device resource processing apparatus according to another embodiment of the present application;
fig. 6 is a schematic structural diagram of a device resource processing apparatus according to yet another embodiment of the present application;
FIG. 7 is a block diagram of an electronic device for implementing a method for processing device resources according to an embodiment of the present application;
Detailed Description
The following description of the exemplary embodiments of the present application, taken in conjunction with the accompanying drawings, includes various details of the embodiments of the application for the understanding of the same, which are to be considered exemplary only. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present application. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
Artificial intelligence is the subject of research that makes computers simulate some human mental processes and intelligent behaviors (such as learning, reasoning, thinking, planning, etc.), both at the hardware level and at the software level. Artificial intelligence hardware technologies generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing, and the like; the artificial intelligence software technology mainly comprises a computer vision technology, a voice recognition technology, a natural language processing technology, a machine learning technology, a deep learning technology, a big data processing technology, a knowledge map technology and the like.
Cloud computing refers to accessing an elastically extensible shared physical or virtual resource pool through a network, resources can include servers, operating systems, networks, software, applications, storage devices and the like, a technical system for deploying and managing the resources in a self-service mode as required can be achieved, and efficient and powerful data processing capacity can be provided for technical applications and model training of artificial intelligence, block chains and the like through a cloud computing technology.
The big data technology is used for collecting a large amount of data through various channels, deep mining and analysis of the data are realized through the cloud computing technology, rules and characteristics among the data can be timely found out, and values of the data are summarized and summarized. The big data technology has very important significance for knowing data characteristics and predicting development trend.
Deep learning refers to a multi-layered artificial neural network and a method of training it. One layer of neural network takes a large number of matrix numbers as input, weights are taken through a nonlinear activation method, and another data set is generated as output. Through the appropriate number of matrixes, multiple layers of tissues are linked together to form a neural network brain to carry out accurate and complex processing just like people identify object labeling pictures.
The following describes a method, an apparatus, and an electronic device for processing device resources according to an embodiment of the present application with reference to the drawings.
The device resource processing method in the embodiments of the present application may be executed by the device resource processing apparatus provided in the embodiments of the present application, and the device may be configured in an electronic device.
The device resource in the embodiment of the present application may be a memory resource of the device, a video memory resource, or any resource that can be allocated and used for an application running or loaded in the device, which is not limited in this application.
For convenience of description, the following embodiments of the present application take resources as memory resources for example to perform a description.
In addition, any application in the embodiments of the present application may be an application program that can provide any business service in the electronic device, for example, any application program that can implement speech, image, and word processing.
Fig. 1 is a schematic flowchart of a method for processing device resources according to an embodiment of the present disclosure.
As shown in fig. 1, the method for processing the device resource includes:
step 101, determining a target resource amount to be allocated to any application currently according to the data amount of the data to be processed currently by any application.
The target resource amount may be a memory resource used for storing data to be processed.
102, under the condition that the target resource amount is less than or equal to the resource amount corresponding to any first resource block in the preset resource list, allocating the target resource matched with the target resource amount in any first resource block to any application.
The resource amount corresponding to each resource block contained in the preset resource list is smaller than a set value, wherein the set value can be set as required.
The resource block may be a memory block including any amount of memory resources.
It should be noted that the electronic device further includes a resource pool in addition to the preset resource list, where resource amounts corresponding to resource blocks included in the resource pool are greater than or equal to a set value. Therefore, when the target resource amount to be allocated to any application currently determined according to the data amount of the data to be processed currently of any application is small, the corresponding target resource can be directly allocated to any application from the preset resource list without allocating a large resource amount from the resource pool, so that a small resource block can be fully utilized, resource waste is avoided, and management and recovery are facilitated.
It can be understood that resource blocks are managed to facilitate recycling and utilization, and resources corresponding to the same service can be associated as much as possible, so that processing of a whole resource can be realized.
For example, the target resource amount is 100M, the sizes of the first resource blocks in the preset resource list are 150M, 160M, and 170M, respectively, and the target resource amount is smaller than the size of the resource amount corresponding to any first resource block in the preset resource list, at this time, any first resource block may be allocated to any application.
Or, the target resource amount is 100M, the sizes of the first resource blocks in the preset resource list are 100M, 70M, and 50M, respectively, the target resource amount is equal to the resource amount corresponding to one first resource block in the preset resource list, and at this time, the first resource block corresponding to the resource amount of 100M may be allocated to any application.
It should be noted that the size of the target resource amount, the size of the first resource block, and the number of the first resource blocks are only examples, and cannot be taken as a limitation that any application is allocated with a target resource in any first resource block that matches the target resource amount in this embodiment of the present application.
And 103, updating the resource block identifier contained in the preset resource list.
The resource block identifier may be an address of the memory block in the memory, or any other information used to locate a specific position of the memory block in the memory, and the like, which is not limited in the present application.
In the embodiment of the application, after the target resource matched with the target resource amount in any first resource block in the preset resource list is allocated to any application, in order to ensure the accuracy of the preset resource list, the preset resource list can be updated in time, so that the resource allocated to any application from the preset resource list is accurate.
For example, the resource block identifiers in the original preset resource list are respectively the resource block a, the resource block B, and the resource block C, the resource block C is allocated to any application, and then the resource list is updated, and because the resource block C has been allocated, the resource block identifiers included in the updated resource list can be the resource block a and the resource block B.
It should be noted that the above manner of updating the resource list, the resource block identifier, and the allocation of the resource block are only examples, and cannot be taken as a limitation to updating the resource block identifier included in the preset resource list in the embodiment of the present application.
According to the data volume of the current data to be processed of any application, the target resource volume to be allocated to any application is determined, when the target resource volume is smaller than or equal to the resource volume corresponding to any first resource block in a preset resource list, the target resource matched with the target resource volume in any first resource block is allocated to any application, and then the resource block identifier contained in the preset resource list is updated. Therefore, when any application is subjected to resource allocation, the resource blocks with small corresponding resource amount are preferentially allocated, so that the first resource blocks in the preset resource list can be used as much as possible, the utilization rate of equipment resources can be improved to the maximum extent under the condition of meeting application requirements, and the resources can be better recycled and utilized.
In the above embodiment, the target resource amount to be currently allocated to any application is determined according to the data amount of the current data to be processed, and when the target resource amount is less than or equal to the resource amount corresponding to any first resource block in the preset resource list, the any first resource block may be directly allocated to the any application. In actual use, the target resource amount may be greater than the resource amount corresponding to each resource block in the preset resource list, or the resource amounts corresponding to a plurality of resource blocks in the preset resource list are all greater than the target resource amount, which is described in detail below with reference to fig. 2.
Step 201, according to the data volume of the current data to be processed of any application, determining the target resource volume to be allocated to any application currently.
Step 202, the target resource amount is less than or equal to the resource amount corresponding to at least two first resource blocks in the preset resource list, and the resource block identifier allocated for any application at present is determined.
For example, the target resource amount is 100M, the resource amounts corresponding to the first resource blocks in the preset resource list are 70M, 120M, and 300M, respectively, where the resource amounts corresponding to two first resource blocks are greater than the target resource amount, at this time, the resource block identifier allocated to any one application may be determined first, for example, the resource block identifier allocated to any one application is a.
It should be noted that the foregoing examples are merely illustrative, and cannot be taken as limitations on the size of the target resource amount, the size and number of the first resource blocks, and the resource block identifier in the embodiment of the present application.
Step 203, according to the position relation between the resource blocks corresponding to the resource block identifiers, allocating the first resource block with the shortest distance to the allocated resource block identifiers in the at least two first resource blocks to any application.
For example, the allocated resource block is a resource block a for any application, two first resource blocks in the preset resource list are provided, the corresponding resource amounts of the two first resource blocks are respectively 100M and 120M, the first resource block with the size of 100M is adjacent to the resource block a, the first resource block with the size of 120M is far away from the resource block a, and the first resource block with the size of 100M can be allocated to the application, that is, the adjacent resource is preferentially allocated to the application, so that resource waste is avoided, and when the resource is recovered, the adjacent resource can be recovered in a large batch, and the utilization rate of the resource is improved.
Or, for any application, the allocated resource blocks are the resource block a and the resource block B, there are three first resource blocks in the preset resource list, where the corresponding resource amounts are greater than the target resource amount, the corresponding resource amounts are respectively 100M, 120M, and 200M, and the position sequence is: the resource allocation method comprises the following steps of a first resource block with the size of 100M, a resource block A, a first resource block with the size of 120M, a resource block B and a first resource block with the size of 200M, wherein the first resource block with the size of 120M is located between the resource block A and the resource block B and is closest to the resource block A and the resource block B, so that the first resource block can be allocated to any application, namely adjacent resources are preferentially allocated to the application, and therefore resource waste can be avoided.
Or, for any application, the allocated resource blocks are the resource block a and the resource block B, there are two first resource blocks in the preset resource list, where the corresponding resource amounts are greater than the target resource amount, the corresponding resource amounts are 100M and 300M, and the position order is: a first resource block of size 100M, resource block a, resource block B, a first resource block of size 300M. The first resource block with the size of 100M is before the resource block A, the resource block A is adjacent to the resource block B, the first resource block with the size of 300M is after the resource block B, and the distances from the two first resource blocks to the resource block A and the resource block B are the same. In order to reduce the resource waste, the first resource block closest to the target resource amount may be preferentially selected, and if the target resource amount is 80M, the first resource block with the size of 100M may be allocated to the application, that is, the adjacent resource block close to the target resource amount may be preferentially allocated to the application, so that the resource waste may be avoided.
It should be noted that the foregoing examples are merely illustrative, and cannot be taken as limitations on resource block identifiers, first resource block sizes, numbers, positions, and the like in the embodiments of the present application.
And 204, under the condition that the target resource amount is smaller than the resource amount corresponding to any first resource block, determining the new resource block identifier and the resource amount corresponding to the residual resource blocks except the target resource in any first resource block.
Step 205, storing the new resource block identifier and the resource amount into a preset resource list.
Step 206, the identifier of any first resource block and the corresponding resource amount are deleted from the preset resource list.
For example, the target resource amount is 60M, the resource amount corresponding to the first resource block a is 100M, the remaining resource blocks in the first resource block except the target resource are new resource blocks, the identifier of the new resource block may be B, and the corresponding resource amount is 40M, so that the resource block B and the resource amount 40M may be stored in a preset resource list, and the first resource block a and the resource amount 100M are deleted from the preset resource list, so that the resource list may be updated in time, and the accuracy thereof is ensured.
It should be noted that the foregoing examples are merely examples, and cannot be taken as a limitation to updating resource block identifiers included in a preset resource list in the embodiment of the present application.
Step 207, deleting the identifier of any first resource block and the corresponding resource amount from the preset resource list under the condition that the target resource amount is equal to the resource amount corresponding to any first resource block.
For example, the target resource amount is 30M, the resource amount corresponding to the first resource block a is 30M, and the target resource amount is equal to the resource amount corresponding to the first resource block a, so that the first resource block a and the resource amount are 30M and can be directly deleted from the preset resource list, which is convenient for management and operation.
It should be noted that, the foregoing examples are only illustrative, and cannot be taken as a limitation that the identifier of any first resource block and the corresponding resource amount are deleted from a preset resource list in this embodiment of the application.
And 208, under the condition that the target resource amount is larger than the resource amount corresponding to each resource block in the preset resource list, allocating the target resource matched with the target resource amount in any second resource block of the resource pool to any application.
The second resource block may be any resource block in a resource pool, and the resource amount corresponding to each resource block included in the resource pool is greater than or equal to a set value, where the set value may be set as needed.
For example, the set value is 1G, the resource amount corresponding to each resource block included in the resource pool is greater than or equal to 1G, and each resource block in the preset resource list is less than 1G.
It should be noted that, the above setting values are only examples, and in actual use, the setting values may be set as needed.
In the embodiment of the application, when the target resource amount is greater than the resource amount corresponding to each resource block in the preset resource list, it indicates that there is no sufficiently large resource block in the preset resource list that can meet the data amount of the current data to be processed, and at this time, a second resource block matched with the target resource amount may be selected from the resource pool and allocated to the application.
For example, the target resource amount is 200M, the sizes of the first resource blocks in the preset resource list are 50M, 60M, and 70M, respectively, and the target resource amounts are all larger than the sizes of the three resource blocks in the preset resource list, and at this time, in order to meet the target resource amount, a matched second resource block may be selected from the resource pool.
It should be noted that the foregoing examples are only examples, and cannot be taken as limitations on the size of the target resource amount and the size and number of resource blocks in the preset resource list in the embodiment of the present application.
In addition, in order to reduce the time consumption for acquiring the target resource block as much as possible and improve the acquisition efficiency of the target resource block, in a possible implementation manner, the target resource block matched with the target resource amount may be acquired from the resource pool when the target resource amount is greater than or equal to the threshold.
The threshold value may be a preset numerical value of any magnitude.
For example, the set threshold is 300M, and the target resource amount is 400M, at this time, in order to perform resource allocation more quickly, a target resource block matching the target resource amount may be directly obtained from the resource pool, without comparing the target resource amount with the resource amount corresponding to each resource block in the preset resource list, so that the efficiency of allocating the target resource to the application may be improved.
It should be noted that the foregoing example is only an example, and cannot be used as a method for acquiring a target resource block matched with a target resource amount from a resource pool in the embodiment of the present application.
In the embodiment of the application, when the target resource amount is greater than or equal to the threshold value, the target resource block matched with the target resource amount can be directly obtained from the resource pool, so that the target resource amount does not need to be compared with each resource block in a preset resource list, the time is saved, and the efficiency of obtaining the target resource block is improved.
Step 209, store the first resource block identifier and the first resource amount corresponding to the remaining resources, except the target resource, in any second resource block into a preset resource list.
For example, the size of the second resource block is 500M, the resource amount corresponding to the target resource is 400M, and the remaining resources in the second resource block except the target resource are 100M, that is, the first resource block is identified as resource block a, and the first resource amount is 100M, so that the resource block a and the first resource amount 100M can be stored in a preset resource list.
It should be noted that the foregoing examples are only examples, and cannot be taken as a limitation that the first resource block identifier and the first resource amount are stored in a preset resource list in the embodiment of the present application.
According to the resource allocation method and device, when resource allocation is carried out on any application, a first resource block meeting the target resource quantity is preferentially searched from a preset resource list, if the first resource block which can meet the target resource quantity does not exist in the preset resource list, a second resource block meeting the target resource quantity is searched from a resource pool and allocated to the application, and then resource block identification contained in the preset resource list is updated. Therefore, when the resource allocation is carried out, the smaller resource block can be fully utilized, and the resource block can be obtained from the resource pool to meet the larger target resource amount, so that the resource allocation can be carried out rapidly and reasonably, and the utilization rate of the equipment resource can be improved.
In the execution process or the quitting use process of each application, the used resource amount can change, and in order to dynamically and real-timely manage the resources, the resources used by each application can be monitored and recycled. The process of monitoring and recycling resources is described in detail below with reference to fig. 3.
Step 301, monitoring the usage status of each allocated resource block corresponding to each application.
The usage state of each allocated resource block may be in use or may also be an idle state, which is not limited in this application.
For example, the monitored usage states of each allocated resource block in application 1 are that resource block a is in use, resource block B is in use, and resource block C is in an idle state.
It should be noted that the above examples are merely illustrative, and are not intended to limit the usage state of each allocated resource block in the embodiments of the present application.
Step 302, under the condition that at least one allocated resource block corresponding to any application is in an idle state, releasing the occupation of at least one allocated resource block by any application.
For example, the use states of each allocated resource block in the application 1 are that the resource block a is in use, the resource block B is in use, and the resource block C is in an idle state, so that the occupation of the application 1 on the resource block C can be eliminated, the resource block can be timely recovered, and the resource idleness is reduced.
It should be noted that the foregoing examples are merely illustrative, and cannot be taken as a limitation to release the occupation of the allocated resource blocks by any application in the embodiments of the present application.
It can be understood that, in a specific use, the recovery mode of at least one allocated resource block may be determined according to a resource amount corresponding to the at least one allocated resource block.
For example, when the amount of resources corresponding to the at least one allocated resource block is smaller than the threshold, it is determined to recycle the at least one allocated resource block to the preset resource list.
Or, determining to reclaim the at least one allocated resource block to the resource pool when the resource amount corresponding to the at least one allocated resource block is greater than or equal to the threshold.
The threshold may be a set numerical value with any size, which is not limited in the present application.
For example, the set threshold is 200M, the amount of resources corresponding to the allocated resource blocks is 100M, and the allocated resource blocks can be recovered to the preset resource list when the amount of resources is less than the threshold. Alternatively, when the resource amount corresponding to the allocated resource block is 200M, it is equal to the set threshold, and it may be recovered to the resource pool. Alternatively, when the resource amount corresponding to the allocated resource block is 500M, it is larger than the set threshold value, and it can be collected into the resource pool.
The above examples are merely illustrative, and are not intended to limit the threshold value and the recovery pattern of the allocated resource blocks in the present application.
In addition, when recovering the allocated resource in any idle state, in order to increase the amount of the resource to be recovered as much as possible, in a possible implementation manner, a current usage state of a resource block adjacent to at least one allocated resource block in the idle state may be determined; under the condition that any adjacent resource block is in an idle state currently, combining the resource of any adjacent resource block and at least one allocated resource block to generate a new resource block; and determining the recovery mode of the new resource block according to the resource amount corresponding to the new resource block.
For example, the allocated resource block B in the idle state corresponds to a resource amount of 100M, the resource block a adjacent to the allocated resource block B is still in use, and the resource block C following the resource block B is in the idle state and corresponds to a resource amount of 60M, so that the resource block B and the resource block C can be combined to generate a new resource block D and a new resource block 160M. If the set threshold is 100M, the resource amount 160M corresponding to the new resource block D is greater than the set threshold, so that the new resource block can be recovered to the recovery pool. Or, if the set threshold is 200M, and the resource amount 160M corresponding to the new resource block D is smaller than the set threshold, the new resource block D may be recovered to the preset resource list, so that adjacent resource blocks all in an idle state may be recovered, and the resource utilization rate is improved.
Or, the allocated resource block B in the idle state corresponds to a resource amount of 100M, the adjacent resource block a is still in use, the resource block C located after the resource block B is in the idle state, the corresponding resource amount is 150M, the resource block D in the idle state exists after the resource block C, and the corresponding resource amount is 60M, so that the resource block B, the resource block C, and the resource block D can be combined to generate a new resource block M and a new resource amount 310M. If the set threshold is 200M, the resource amount 310M of the new resource block M is greater than the set threshold, so that the new resource block M can be recovered to the recovery pool. Or, if the set threshold is 500M and the resource amount 310M of the new resource block M is smaller than the set threshold, the new resource block M may be recovered to the preset resource list, so as to increase the recovered resource amount as much as possible and improve the resource utilization rate.
It should be noted that the foregoing examples are merely illustrative, and should not be taken as limitations on the reclamation of allocated resources in an idle state in the embodiments of the present application.
For example, any application is a voice processing application, when it performs voice processing, lengths of received voice data to be processed at different times may be different, when processing longer voice data, a device may allocate larger resources to it, and when processing shorter voice data, resources used by it may be less, so that redundant idle resources may be released to meet more resource requirements as much as possible, thereby improving utilization rate of resources.
For example, the voice data 1 to be processed may be "really good weather today", we go to the park together to play the bar ", the duration is 5 seconds, at this time, the device may allocate 500M resources to the application to process the voice data, the voice data 2 to be processed may be" good ", the duration is 10 milliseconds, the actually used resources may be 100M, at this time, in order to reduce the idle resources, the remaining 400M resources may be released, so that the resource utilization rate may be effectively improved.
Or, any application is a picture processing application, when it performs picture processing, the received picture data to be processed at different times may be different, when processing a larger picture, the device may allocate a larger resource to it, and when processing a smaller picture, the used resource may be less, so that the redundant idle resource may be released, and the resource utilization rate may be improved.
For example, the size of the to-be-processed picture 1 is 200M, at this time, the device may allocate 300M resources to the application to process the picture, and the size of the to-be-processed picture 2 is 50M, at this time, in order to reduce resource idleness, the remaining 250M resources may be released, so that the resource utilization rate may be effectively improved.
It should be noted that the above examples are only illustrative and should not be taken as limiting any application processing service of the present application.
In the embodiment of the present application, the usage state of each allocated resource block corresponding to each application may be monitored, and under the condition that at least one allocated resource block corresponding to any application is in an idle state, the occupation of at least one allocated resource block by any application is released. Therefore, the resources are dynamically and real-timely managed, the allocated resource blocks in the idle state can be timely unoccupied, resource waste is avoided, the resource utilization rate is improved, and the overall operation efficiency is improved.
In order to implement the foregoing embodiments, an apparatus for processing device resources is further provided in the embodiments of the present application. Fig. 4 is a schematic structural diagram of a device resource processing apparatus according to an embodiment of the present application.
As shown in fig. 4, the apparatus 400 for processing the device resource includes: a determination module 410, a first allocation module 420, and an update module 430.
The determining module 410 is configured to determine, according to a data amount of data to be currently processed by any application, a target resource amount to be currently allocated to the any application.
The first allocating module 420 is configured to, when the target resource amount is less than or equal to a resource amount corresponding to any first resource block in a preset resource list, allocate a target resource in the any first resource block, which is matched with the target resource amount, to the any application.
An updating module 430, configured to update the resource block identifier included in the preset resource list.
It should be noted that the explanation of the foregoing embodiment of the method for processing device resources is also applicable to the device for processing device resources in this embodiment, and therefore, the description is not repeated here.
The device resource processing apparatus in the embodiment of the application determines a target resource amount to be currently allocated to any application according to a data amount of data to be currently processed of any application, allocates a target resource in any first resource block, which is matched with the target resource amount, to any application under the condition that the target resource amount is less than or equal to a resource amount corresponding to any first resource block in a preset resource list, and then updates a resource block identifier included in the preset resource list. Therefore, when any application is subjected to resource allocation, the resource blocks with small corresponding resource amount are preferentially allocated, so that the first resource blocks in the preset resource list can be used as much as possible, the utilization rate of equipment resources can be improved to the maximum extent under the condition of meeting application requirements, and the resources can be better recycled and utilized.
Fig. 5 is a schematic structural diagram of a device resource processing apparatus according to another embodiment of the present application.
As shown in fig. 5, the apparatus 500 for processing the device resource includes: a determination module 510, a first allocation module 520, an update module 530, a second allocation module 540, a storage module 550, and an acquisition module 560.
The determining module 510 is configured to determine, according to a data amount of data to be currently processed by any application, a target resource amount to be currently allocated to the any application.
It is understood that the determining module 510 in the present embodiment may have the same function and structure as the determining module 410 in the above-described embodiment.
A first allocating module 520, configured to determine identifiers of resource blocks allocated to the any application currently; and the resource allocation module is further configured to allocate, according to a position relationship between resource blocks corresponding to resource block identifiers, a first resource block, which is the shortest distance from the allocated resource block identifiers, of the at least two first resource blocks to the any application.
It is understood that the first distribution module 520 in the present embodiment may have the same function and structure as the first distribution module 420 in the above-described embodiment.
An updating module 530, configured to delete the identifier of any first resource block and the corresponding resource amount from the preset resource list when the target resource amount is equal to the resource amount corresponding to any first resource block.
In a possible implementation manner, the updating module 530 may further include:
a first determining unit 5310, configured to determine, when the target resource amount is smaller than the resource amount corresponding to any one of the first resource blocks, a new resource block identifier and a resource amount corresponding to a remaining resource block, excluding the target resource, in the any one of the first resource blocks;
a storage unit 5320, configured to store the new resource block identifier and the resource amount into the preset resource list;
a deleting unit 5330, configured to delete the identifier of any one of the first resource blocks and the corresponding resource amount from the preset resource list.
It is understood that the update module 530 in this embodiment may have the same function and structure as the update module 430 in the above embodiment.
A second allocating module 540, configured to, when the target resource amount is greater than the resource amount corresponding to each resource block in the preset resource list, allocate a target resource, which is matched with the target resource amount, in any second resource block of the resource pool to the any application.
A storing module 550, configured to store the first resource block identifier and the first resource amount corresponding to the remaining resource in any second resource block except the target resource into the preset resource list.
An obtaining module 560, configured to obtain, from a resource pool, a target resource block that matches the target resource amount when the target resource amount is greater than or equal to a threshold.
It should be noted that the explanation of the foregoing embodiment of the method for processing device resources is also applicable to the device for processing device resources in this embodiment, and therefore, the description is not repeated here.
When allocating resources to any application, the device resource processing apparatus of the embodiment of the application preferentially searches a first resource block that meets a target resource amount from a preset resource list, and if the preset resource list does not have the first resource block that can meet the target resource amount, searches a second resource block that meets the target resource amount from a resource pool, allocates the second resource block to the application, and then updates a resource block identifier included in the preset resource list. Therefore, when resource allocation is carried out, a smaller resource block can be fully utilized, and the resource block can be obtained from the resource pool to meet a larger target resource amount, so that the resource allocation can be carried out rapidly and reasonably, and the utilization rate of equipment resources can be improved.
Fig. 6 is a schematic structural diagram of a device resource processing apparatus according to yet another embodiment of the present application.
As shown in fig. 6, the processing device 600 for the device resource includes: a monitoring module 610 and a releasing module 620.
The monitoring module 610 is configured to monitor a usage status of each allocated resource block corresponding to each application.
A releasing module 620, configured to release, when at least one allocated resource block corresponding to any application is in an idle state, occupation of the at least one allocated resource block by the any application.
In one possible implementation, the releasing module 620 includes:
a second determining unit 6210, configured to determine a recovery mode of the at least one allocated resource block according to a resource amount corresponding to the at least one allocated resource block.
In a possible implementation manner, the second determining unit 6210 is specifically configured to determine to recycle the at least one allocated resource block to the preset resource list when the resource amount corresponding to the at least one allocated resource block is smaller than a threshold; or, the resource allocation method is further specifically configured to determine to reclaim the at least one allocated resource block to the resource pool when the resource amount corresponding to the at least one allocated resource block is greater than or equal to the threshold.
In one possible implementation manner, the releasing module 620 further includes:
a third determining unit 6220, configured to determine a current usage status of resource blocks adjacent to the at least one allocated resource block in the idle state.
A generating unit 6230, configured to perform resource merging on any adjacent resource block and the at least one allocated resource block to generate a new resource block when the any adjacent resource block is currently in an idle state.
A fourth determining unit 6240, configured to determine a recovery mode of the new resource block according to the resource amount corresponding to the new resource block.
It should be noted that the explanation of the foregoing embodiment of the method for processing device resources is also applicable to the device for processing device resources in this embodiment, and therefore, the description is not repeated here.
The device resource processing apparatus in the embodiment of the present application monitors the usage state of each allocated resource block corresponding to each application, and releases the occupation of at least one allocated resource block by any application when at least one allocated resource block corresponding to any application is in an idle state. Therefore, the resources are dynamically and real-timely managed, the allocated resource blocks in the idle state can be timely unoccupied, resource waste is avoided, the resource utilization rate is improved, and the overall operation efficiency is improved.
There is also provided, in accordance with an embodiment of the present application, an electronic device, a readable storage medium, and a computer program product.
FIG. 7 illustrates a schematic block diagram of an example electronic device 700 that can be used to implement embodiments of the present application. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be examples only, and are not meant to limit implementations of the present application that are described and/or claimed herein.
As shown in fig. 7, the device 700 comprises a computing unit 701, which may perform various suitable actions and processes according to a computer program stored in a Read Only Memory (ROM)702 or a computer program loaded from a storage unit 708 into a Random Access Memory (RAM) 703. In the RAM 703, various programs and data required for the operation of the device 700 can also be stored. The computing unit 701, the ROM 702, and the RAM 703 are connected to each other by a bus 704. An input/output (I/O) interface 705 is also connected to bus 704.
A number of components in the device 700 are connected to the I/O interface 705, including: an input unit 706 such as a keyboard, a mouse, or the like; an output unit 707 such as various types of displays, speakers, and the like; a storage unit 708 such as a magnetic disk, optical disk, or the like; and a communication unit 709 such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 709 allows the device 700 to exchange information/data with other devices via a computer network, such as the internet, and/or various telecommunication networks.
Computing unit 701 may be a variety of general purpose and/or special purpose processing components with processing and computing capabilities. Some examples of the computing unit 701 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various specialized artificial intelligence (A I) computing chips, various computing units running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, and so forth. The computing unit 701 performs the respective methods and processes described above, such as the processing method of the device resource. For example, in some embodiments, the processing of device resources may be implemented as a computer software program tangibly embodied on a machine-readable medium, such as storage unit 708. In some embodiments, part or all of a computer program may be loaded onto and/or installed onto device 700 via ROM 702 and/or communications unit 709. When the computer program is loaded into the RAM 703 and executed by the computing unit 701, one or more steps of the method of processing of device resources described above may be performed. Alternatively, in other embodiments, the computing unit 701 may be configured by any other suitable means (e.g., by means of firmware) to perform the processing method of the device resource.
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuitry, Field Programmable Gate Arrays (FPGAs), application specific integrated circuits (AS ics), Application Specific Standard Products (ASSPs), System On Chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, receiving data and instructions from, and transmitting data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for implementing the methods of the present application may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the program codes, when executed by the processor or controller, cause the functions/operations specified in the flowchart and/or block diagram to be performed. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this application, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic, speech, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), Wide Area Networks (WANs), the internet, and blockchain networks.
The computer system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The Server may be a cloud Server, also called a cloud computing Server or a cloud host, and is a host product in a cloud computing service system, so as to solve the defects of high management difficulty and weak service extensibility in a traditional physical host and VPS service ("Virtual Private Server", or "VPS" for short). The server may also be a server of a distributed system, or a server incorporating a blockchain.
According to the technical scheme, the target resource amount to be allocated to any application at present is determined according to the data amount of the data to be processed at present of any application, under the condition that the target resource amount is smaller than or equal to the resource amount corresponding to any first resource block in a preset resource list, the target resource matched with the target resource amount in any first resource block is allocated to any application, and then the resource block identifier contained in the preset resource list is updated. Therefore, when any application is subjected to resource allocation, the resource blocks with small corresponding resource amount are preferentially allocated, so that the first resource blocks in the preset resource list can be used as much as possible, the utilization rate of equipment resources can be improved to the maximum extent under the condition of meeting application requirements, and the resources can be better recycled and utilized.
It should be understood that various forms of the flows shown above may be used, with steps reordered, added, or deleted. For example, the steps described in the present application may be executed in parallel, sequentially, or in different orders, as long as the desired results of the technical solutions disclosed in the present application can be achieved, and the present invention is not limited herein.
The above-described embodiments are not intended to limit the scope of the present disclosure. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may be made in accordance with design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims (10)

1. A method for processing device resources comprises the following steps:
determining a target resource amount to be allocated to any application at present according to the data amount of the data to be processed at present of the application;
under the condition that the target resource amount is less than or equal to the resource amount corresponding to any first resource block in a preset resource list, allocating a target resource matched with the target resource amount in any first resource block to any application;
under the condition that the target resource amount is larger than the resource amount corresponding to each resource block in the preset resource list, allocating a target resource matched with the target resource amount in any second resource block of a resource pool to any application, wherein the resource amount corresponding to each resource block contained in the preset resource list is smaller than a set value, and the resource amount corresponding to each resource block contained in the resource pool is larger than or equal to the set value;
storing a first resource block identifier and a first resource amount corresponding to the residual resource except the target resource in any second resource block into the preset resource list;
updating the resource block identifier contained in the preset resource list;
wherein, the updating the resource block identifier included in the preset resource list includes:
under the condition that the target resource amount is smaller than the resource amount corresponding to any one first resource block, determining a new resource block identifier and a resource amount corresponding to the residual resource blocks except the target resource in any one first resource block;
storing the new resource block identification and the resource amount into the preset resource list;
deleting the identifier of any first resource block and the corresponding resource amount from the preset resource list;
monitoring the use state of each allocated resource block corresponding to each application;
under the condition that at least one allocated resource block corresponding to any application is in an idle state, releasing the occupation of the at least one allocated resource block by the any application;
determining a current usage state of resource blocks adjacent to the at least one allocated resource block in the idle state;
under the condition that any adjacent resource block is in an idle state currently, carrying out resource combination on the any adjacent resource block and the at least one allocated resource block to generate a new resource block;
under the condition that the resource amount corresponding to the new resource block is smaller than a threshold value, the new resource block is determined to be recycled to the preset resource list;
alternatively, the first and second electrodes may be,
and under the condition that the resource quantity corresponding to the new resource block is greater than or equal to the threshold value, determining to recycle the new resource block to a resource pool.
2. The method according to claim 1, wherein the target resource amount is less than or equal to resource amounts corresponding to at least two first resource blocks in the preset resource list, respectively, and the allocating a target resource in any one of the first resource blocks, which matches the target resource amount, to the any application includes:
determining the identifiers of the resource blocks which are allocated to any application currently;
and allocating the first resource block with the shortest distance to each allocated resource block identifier in the at least two first resource blocks to any application according to the position relation between the resource blocks corresponding to the resource block identifiers.
3. The method of claim 1, wherein the updating the resource block identifier included in the preset resource list includes:
and deleting the identifier of any first resource block and the corresponding resource amount from the preset resource list under the condition that the target resource amount is equal to the resource amount corresponding to any first resource block.
4. The method of claim 1, wherein the de-occupying of the at least one allocated resource block by the any application comprises:
and determining the recovery mode of the at least one allocated resource block according to the resource amount corresponding to the at least one allocated resource block.
5. An apparatus for processing device resources, comprising:
the determining module is used for determining the target resource amount to be allocated to any application according to the data amount of the data to be processed currently by the application;
a first allocation module, configured to allocate, to any one of the applications, a target resource that is matched with any one of the first resource blocks in a preset resource list when the target resource amount is less than or equal to a resource amount corresponding to the target resource amount;
a second allocating module, configured to allocate, when the target resource amount is greater than a resource amount corresponding to each resource block in the preset resource list, a target resource, which is matched with the target resource amount, in any second resource block of a resource pool to the any application, where the resource amount corresponding to each resource block included in the preset resource list is less than a set value, and the resource amount corresponding to each resource block included in the resource pool is greater than or equal to the set value;
a storage module, configured to store a first resource block identifier and a first resource amount corresponding to a remaining resource in any second resource block except the target resource into the preset resource list;
an updating module, configured to update the resource block identifier included in the preset resource list;
the update module further includes:
a first determining unit, configured to determine, when the target resource amount is smaller than a resource amount corresponding to any one of the first resource blocks, a new resource block identifier and a resource amount corresponding to a remaining resource block, excluding the target resource, in the any one of the first resource blocks;
the storage unit is used for storing the new resource block identification and the resource amount into the preset resource list;
a deleting unit, configured to delete the identifier of any one of the first resource blocks and the corresponding resource amount from the preset resource list;
the monitoring module is used for monitoring the use state of each allocated resource block corresponding to each application;
a release module, configured to release, when at least one allocated resource block corresponding to any application is in an idle state, occupation of the at least one allocated resource block by the any application;
the release module further comprises:
a third determining unit, configured to determine a current usage state of a resource block adjacent to the at least one allocated resource block in the idle state;
a generating unit, configured to perform resource merging on any adjacent resource block and the at least one allocated resource block to generate a new resource block when the any adjacent resource block is currently in an idle state;
a fourth determining unit, configured to determine a recovery mode of the new resource block according to a resource amount corresponding to the new resource block;
the fourth determining unit is specifically configured to:
under the condition that the resource amount corresponding to the new resource block is smaller than a threshold value, determining to recycle the new resource block to the preset resource list;
alternatively, the first and second electrodes may be,
and under the condition that the resource amount corresponding to the new resource block is greater than or equal to the threshold value, determining to recycle the new resource block to a resource pool.
6. The apparatus of claim 5, wherein the first allocation module is specifically configured to:
determining the identifiers of the resource blocks which are allocated to any application currently;
and allocating the first resource block with the shortest distance to each allocated resource block identifier in the at least two first resource blocks to any application according to the position relation among the resource blocks corresponding to the resource block identifiers.
7. The apparatus of claim 5, wherein the update module is specifically configured to:
and deleting the identifier of any first resource block and the corresponding resource amount from the preset resource list under the condition that the target resource amount is equal to the resource amount corresponding to any first resource block.
8. The apparatus of claim 5, wherein the disarm module comprises:
a second determining unit, configured to determine a recovery mode of the at least one allocated resource block according to a resource amount corresponding to the at least one allocated resource block.
9. An electronic device, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein, the first and the second end of the pipe are connected with each other,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-4.
10. A non-transitory computer readable storage medium having stored thereon computer instructions for causing the computer to perform the method of any one of claims 1-4.
CN202011507117.0A 2020-12-18 2020-12-18 Device resource processing method and device, electronic device and storage medium Active CN112527506B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011507117.0A CN112527506B (en) 2020-12-18 2020-12-18 Device resource processing method and device, electronic device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011507117.0A CN112527506B (en) 2020-12-18 2020-12-18 Device resource processing method and device, electronic device and storage medium

Publications (2)

Publication Number Publication Date
CN112527506A CN112527506A (en) 2021-03-19
CN112527506B true CN112527506B (en) 2022-09-23

Family

ID=75001612

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011507117.0A Active CN112527506B (en) 2020-12-18 2020-12-18 Device resource processing method and device, electronic device and storage medium

Country Status (1)

Country Link
CN (1) CN112527506B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113052514B (en) * 2021-05-21 2021-10-29 深圳市海柔创新科技有限公司 Method, apparatus, device, storage medium and program product for resource allocation
CN113225830B (en) * 2021-06-07 2023-05-26 维沃移动通信有限公司 Data network uplink scheduling method and device and electronic equipment

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8578047B2 (en) * 2008-03-07 2013-11-05 Industrial Technology Research Institute Methods and systems for resource allocation
CN104679592A (en) * 2013-12-02 2015-06-03 北京兆易创新科技股份有限公司 Method and system for dynamically distributing resources in microcontroller unit MCU
CN104714845B (en) * 2013-12-17 2018-06-26 华为技术有限公司 Resource dynamic regulation method, device and more kernel operating systems
CN104580194B (en) * 2014-12-31 2017-11-24 北京四达时代软件技术股份有限公司 Towards the virtual resources management method and device of Video Applications
CN106681835B (en) * 2016-12-28 2019-04-05 华为技术有限公司 The method and resource manager of resource allocation
CN109471727B (en) * 2018-10-29 2021-01-22 北京金山云网络技术有限公司 Task processing method, device and system
CN110780823B (en) * 2019-11-06 2023-09-12 广东三维家信息科技有限公司 Small object memory management method, small object memory management device, electronic equipment and computer readable medium
CN111459648B (en) * 2020-06-17 2020-09-11 北京机电工程研究所 Heterogeneous multi-core platform resource optimization method and device for application program

Also Published As

Publication number Publication date
CN112527506A (en) 2021-03-19

Similar Documents

Publication Publication Date Title
CN112527506B (en) Device resource processing method and device, electronic device and storage medium
CN113342345A (en) Operator fusion method and device of deep learning framework
CN112667403A (en) Server scheduling method and device and electronic equipment
CN113344074B (en) Model training method, device, equipment and storage medium
CN117236236B (en) Chip design data management method and device, electronic equipment and storage medium
CN112527509B (en) Resource allocation method and device, electronic equipment and storage medium
CN112560936A (en) Model parallel training method, device, equipment, storage medium and program product
CN117474091A (en) Knowledge graph construction method, device, equipment and storage medium
CN112862017A (en) Point cloud data labeling method, device, equipment and medium
CN115328621B (en) Transaction processing method, device, equipment and storage medium based on block chain
CN115495248B (en) Memory allocation method and device of reasoning card, electronic equipment and storage medium
CN116594563A (en) Distributed storage capacity expansion method and device, electronic equipment and storage medium
CN115759629A (en) Site selection method, device, equipment and medium for power change station
CN110659312B (en) Data processing method, device, equipment and computer storage medium
CN114116142A (en) Identification generation method and device, electronic equipment and storage medium
CN114860405B (en) Parameter updating method and device of multitask model and storage medium
CN113254993B (en) Data protection method, apparatus, device, storage medium, and program product
CN116700996B (en) Memory allocation method, device, equipment and medium of neural network
CN114724090B (en) Training method of pedestrian re-identification model, and pedestrian re-identification method and device
CN115330532B (en) Block chain processing method, device, equipment and storage medium based on account model
CN116244413B (en) New intention determining method, apparatus and storage medium
CN115640112A (en) Resource scheduling method, device, equipment and medium based on label
CN118034596A (en) Data storage processing method and device, electronic equipment and storage medium
CN115934246A (en) Virtual machine creating method, device, equipment and medium
CN115168407A (en) Numerical value addressing method and device, electronic equipment and storage medium

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