Detailed Description
The following description of the embodiments of the present application will be made clearly and completely with reference to the drawings in the embodiments of the present application, and it is apparent that the described embodiments are only some embodiments of the present application, not all embodiments. The components of the embodiments of the present application, which are generally described and illustrated in the figures herein, may be arranged and designed in a wide variety of different configurations. Thus, the following detailed description of the embodiments of the present application, as provided in the accompanying drawings, is not intended to limit the scope of the application, as claimed, but is merely representative of selected embodiments of the application. All other embodiments, which can be made by those skilled in the art based on the embodiments of the present application without making any inventive effort, are intended to be within the scope of the present application.
It should be noted that: like reference numerals and letters denote like items in the following figures, and thus once an item is defined in one figure, no further definition or explanation thereof is necessary in the following figures. Meanwhile, in the description of the present application, the terms "first", "second", and the like are used only to distinguish the description, and are not to be construed as indicating or implying relative importance.
It should be noted that embodiments or technical features of embodiments in the present application may be combined without conflict.
In recent years, technology research such as computer vision, deep learning, machine learning, image processing, image recognition and the like based on artificial intelligence has been advanced significantly. Artificial intelligence (Artificial Intelligence, AI) is an emerging scientific technology for studying and developing theories, methods, techniques and application systems for simulating and extending human intelligence. The artificial intelligence discipline is a comprehensive discipline and relates to various technical categories such as chips, big data, cloud computing, internet of things, distributed storage, deep learning, machine learning, neural networks and the like. Computer vision is an important branch of artificial intelligence, and particularly, machine recognition is a world, and computer vision technologies generally include technologies such as face recognition, living body detection, fingerprint recognition and anti-counterfeit verification, biometric feature recognition, face detection, pedestrian detection, object detection, pedestrian recognition, image processing, image recognition, image semantic understanding, image retrieval, word recognition, video processing, video content recognition, behavior recognition, three-dimensional reconstruction, virtual reality, augmented reality, synchronous positioning and map building (SLAM), computational photography, robot navigation and positioning, and the like. With research and progress of artificial intelligence technology, the technology expands application in various fields, such as security protection, city management, traffic management, building management, park management, face passing, face attendance, logistics management, warehouse management, robots, intelligent marketing, computed photography, mobile phone images, cloud services, intelligent home, wearing equipment, unmanned driving, automatic driving, intelligent medical treatment, face payment, face unlocking, fingerprint unlocking, personnel verification, intelligent screen, intelligent television, camera, mobile internet, network living broadcast, beauty, make-up, medical beauty, intelligent temperature measurement and the like.
In the related art, the problem that the SoC has poor integration effect due to the fact that the frequency adjustment strategy carried by the SoC is not accurate enough for adjusting the working frequency of the computing device and cannot give consideration to the performance and the power consumption of the computing device; to solve this problem, the present application provides an operating frequency adjustment method, a computer program product, and an electronic device; furthermore, the method can dynamically adjust the working frequency of the computing equipment based on heterogeneous computing algorithm according to the performance-power consumption mapping relation of each computing equipment in the SoC and the load condition thereof. Therefore, more accurate working frequency can be obtained, and the performance and the power consumption of each computing device can be considered, so that the integration effect of the SoC is better.
The computing device may include, for example, a graphics processor (graphics processing unit, GPU for short), an embedded Neural network processor (Neural-Network Processing Unit, NPU for short), a central processor (central processing unit, CPU for short), and the like. Thus, the SoC may be integrated GPU, NPU, CPU and the like.
The above related art solutions have drawbacks, which are results obtained by the inventor after practice and careful study, and therefore, the discovery process of the above problems and the solutions proposed by the embodiments of the present invention hereinafter for the above problems should be all contributions of the inventor to the present invention in the process of the present invention.
Referring to fig. 1, a flowchart of an operating frequency adjustment method according to an embodiment of the present application is shown. As shown in fig. 1, the operating frequency adjustment method includes thefollowing steps 101 to 102.
Step 101, obtaining a performance-power consumption mapping relation of at least one computing device and performance requirement conditions of at least one task executed on the at least one computing device;
in some application scenarios, the above performance-power consumptionThe mapping relationship may be derived by a power consumption calculation. The power consumption calculation formula here is, for example, p=c×v, where CPU is taken as an example2 * A x f. Wherein P represents a power consumption value; c represents a constant related to circuit architecture and chip technology; v represents an operating voltage; a may be equivalent to the load of the CPU; f represents the operating frequency. That is, the purpose of reducing power consumption can be achieved by reducing C, V, A or f. Wherein, when the operating voltage is reduced, the operating frequency needs to be reduced. But as the operating frequency decreases, so too does the performance. Typically, each CPU may obtain a performance-power consumption curve that characterizes a performance-power consumption mapping as shown in FIG. 2. From this performance-power consumption curve, it is known that at lower performance, performance and power consumption can increase in an approximately linear proportion, and after the performance reaches a certain higher value, the performance still increases approximately linearly, but the power consumption increases exponentially. Similarly, the trend of increasing performance-power consumption relationships (both early performance and power consumption increase linearly, and later power consumption increases exponentially) for computing devices such as NPUs, GPUs, and the like is the same as CPUs.
In some application scenarios, the performance requirement condition described above may be characterized by the execution time of the task. For example, the execution time of the task a is 3 seconds, and if the actual execution time exceeds 3 seconds, it may be considered that the performance of the computing device to execute the task does not meet the performance requirement condition. In these application scenarios, performance requirements of multiple tasks may be integrated to determine performance requirement conditions for multiple tasks that need to be performed consecutively. For example, there are m tasks to be performed, if at ti Representing the execution time of each task, wherein the value range of i is more than 0 and less than or equal to m; the performance requirement conditions corresponding to the m tasks may be: t=t0 +t1 +...+tm-1 ≤tlimit The method comprises the steps of carrying out a first treatment on the surface of the Wherein t islimit A time constraint value representing performance; which may be set according to the current application scenario. For example, in a video playback application scenario, tlimit May be 20 milliseconds; in the photographing application scene, tlimit May be 5 milliseconds, etc.
In some application scenarios, the performance-power consumption mapping relation of each computing device and the performance requirement condition corresponding to the task may be preset, so as to facilitate the acquisition operation of the SoC and facilitate the adjustment of the working frequency of the computing device in the later stage.
Step 102, adjusting the working frequency of the at least one computing device under different load conditions according to the performance requirement condition or according to the performance-power consumption mapping relation and the performance requirement condition.
After the SoC obtains the performance requirement condition and the performance-power consumption mapping relation, the operating frequency of the computing device can be adjusted according to the current load condition. That is, there may be a case where adjustment is made only according to the performance demand condition or in accordance with both the performance demand condition and the performance-power consumption map, due to the load condition being different.
In this embodiment, through the obtained performance requirement condition and the obtained performance-power consumption mapping relationship, based on the load situation, the multiple tasks can obtain more accurate working frequency on the basis of meeting the performance requirement condition, so as to give consideration to the performance and power consumption of each computing device, and make the integration effect of the SoC better.
It should be noted that, although the task may be executed in a CPU, GPU, or NPU, the performance requirement condition of a plurality of tasks to be executed and the performance-power consumption mapping relationship of the computing device are all available no matter on which computing device is executed, and thus the adjustment process of the operating frequency thereof is the same. On the basis, the frequency adjustment gear and the execution interface of different computing devices can be adaptively adjusted by the person skilled in the art.
In some alternative implementations, thestep 102 may include the following sub-steps:
sub-step 1021, determining a minimum power consumption value corresponding to each task on the basis that the performance of the at least one task meets the performance requirement condition;
in some application scenarios, performance of multiple tasks may be determined first to determine whether the performance meets a performance requirement. In some alternative implementations, the performance of the at least one task may be determined based on the steps of:
step A, aiming at each task, executing the task for a plurality of times according to the working frequency corresponding to the power consumption inflection point of the task, and determining the execution time average value of the task; the power consumption inflection point represents a demarcation point of linear increase and exponential increase of power consumption in the performance-power consumption mapping relation;
as shown in fig. 2, the power consumption inflection point may be, for example, an O point; that is, the power consumption increases approximately linearly before the O-point, and increases exponentially after the O-point. In this way, since the power consumption increases exponentially after the power consumption inflection point, in order to achieve both performance and power consumption, the task may be executed at the operating frequency corresponding to the power consumption inflection point. Here, since each power consumption value corresponds to one performance value, each performance value may correspond to one operating frequency. Therefore, the operating frequency corresponding to the inflection point of power consumption can be determined.
After the task is executed for a plurality of times with the working frequency corresponding to the inflection point of the power consumption, the execution time average value can be determined. For example, task a is continuously executed 3 times at an operating frequency of 900 mhz, and if the time taken for the first execution is 2 ms, the time taken for the second execution is 3 ms, and the time taken for the third execution is 4 ms, it can be determined that the average of the execution times corresponding to the 3 times is 3 ms.
And B, determining the performance of the at least one task according to the execution time average value respectively corresponding to the at least one task.
After the SoC determines the execution time average value of each task, performance of a plurality of tasks may be determined according to the execution time average value. For example, the time-averaged execution of each task may be accumulated and the accumulated sum may be utilized to characterize the performance of multiple tasks.
In this implementation manner, through the step a and the step B, performance of a plurality of tasks may be determined by an execution time average value corresponding to each task. In this way, a more stable performance value can be obtained, so that the operating frequency satisfying the performance requirement condition is more stable.
In some application scenarios, after determining the performance of the plurality of tasks, if the performance meets the performance requirement, a minimum power consumption value corresponding to each task may be further determined to reduce the power consumption of the computing device. For example, the execution time of the plurality of tasks is less than 40 milliseconds, when the performance thereof satisfies the performance requirement condition. On the basis, the minimum power consumption values corresponding to the task a, the task b and the task c can be further determined.
Sub-step 1022, adjusting an operating frequency of each of the computing devices under the current load condition according to the minimum power consumption value.
After the SoC determines the minimum power consumption value corresponding to each task, the operating frequency of the computing device where the task is located under the current load condition may be adjusted according to the minimum power consumption value. For example, the task is executed at the operating frequency corresponding to the minimum power consumption value.
In this implementation, through the above-mentioned substep 1021 and substep 1022, the operating frequency may be adjusted according to the minimum power consumption value on the basis that the performance of the plurality of tasks satisfies the performance requirement condition, so that the computing device can satisfy the performance requirement with the minimum power consumption. In some application scenarios, due to the reduction of power consumption, the heating effect of the mobile terminal (such as a mobile phone, a tablet computer and the like) where the computing equipment is located can be reduced, the damage to the mobile terminal is reduced to a certain extent, and the user experience is improved.
In some alternative implementations, the minimum power consumption value is determined based on a lowest operating frequency of the computing device under current load conditions. In some application scenarios, since the operating frequency may be adjusted by its corresponding frequency gear, when determining the minimum power consumption value, it may be implemented based on adjusting the frequency gear to the lowest gear.
Thus, the above sub-step 1022 may include the steps of:
step 1, determining the working frequency corresponding to the execution time average value of each task as an initial working frequency;
here, the execution time average may correspond to performance, which corresponds to the operating frequency. Therefore, the SoC can determine the operating frequency corresponding to the execution time average of the task.
After the SoC determines the working frequency corresponding to the execution time average value of the task, the working frequency may be directly determined as the initial working frequency. That is, the SoC may be adjusted based on the initial operating frequency to obtain a stable and accurate target operating frequency.
Step 2, reducing the frequency based on the initial working frequency, and judging whether the performance of the at least one task still meets the performance requirement condition;
in some application scenarios, the SoC may gradually decrease the operating frequency after determining the initial operating frequency to obtain the minimum power consumption value.
In some application scenarios, after each reduction of the working frequency, it may be determined whether the performance of the plurality of tasks still meets the performance requirement condition, so as to ensure that smooth execution of the tasks is not affected.
And step 3, if the performance of the at least one task still meets the performance requirement condition, determining the reduced working frequency as a target working frequency until the performance of the at least one task does not meet the performance requirement condition, and stopping reducing the frequency.
If the SoC detects that the performance of the plurality of tasks still meets the performance requirement after the operating frequency is reduced based on the initial operating frequency, the current operating frequency may be determined as the target operating frequency. At this time, the power consumption of the computing device is lower than when the task was performed at the previous operating frequency.
In the implementation manner, the minimum working frequency meeting the performance requirement condition can be determined by gradually reducing the frequency, so that the power consumption reaches the minimum value.
In some optional implementations, before the step 2, the operating frequency adjustment method further includes the following steps:
step 00, according to the performance-power consumption mapping relation, determining the number of frequency gears which can be adjusted when the power consumption increases linearly;
in some application scenarios, since the power consumption increases exponentially after the inflection point of the power consumption, in order to avoid the faster increase of the power consumption, the working frequency interval corresponding to the power consumption before the inflection point of the power consumption may be determined. In these application scenarios, the operating frequency may be annotated by a frequency shift. For example, each time a gear is added, the corresponding operating frequency is increased by 200 megahertz.
In this way, the SoC can determine the working frequency interval corresponding to the linear increase part of power consumption, and then determine the number of frequency gears corresponding to the working frequency interval.
Step 01, according to the number of the frequency gears, the corresponding total performance amount when the power consumption is linearly increased is averaged to obtain a performance average value;
after the SoC determines the number of frequency gears available for adjustment, the total performance corresponding to the linearly increased power consumption can be averaged to obtain a performance average. For example, as shown in fig. 2, the total performance before the O point can be equally divided according to the number of frequency gear steps, so as to obtain a corresponding performance average.
Thus, the step 2 may include: after each frequency corresponding to one frequency gear is reduced, judging whether the performance of the at least one task still meets the performance requirement condition after the performance average value is reduced by the initial performance corresponding to the initial working frequency.
After each time the SoC decreases the frequency range, it may be determined whether decreasing the frequency range may cause performance of the plurality of tasks to fail to meet the performance requirement. Specifically, after each frequency shift is reduced, the performance corresponding to the reduced working frequency can be determined first, and then whether the performance meets the performance requirement can be further determined. For example, the execution time of the task a increases from 10 ms to 15 ms after the frequency corresponding to the frequency shift is lowered. At this time, it can be judged whether or not the performance corresponding to the plurality of tasks does not satisfy the performance requirement condition due to the 5 ms of the increase of the task a. For example, the performance requirement condition is t=t0 +t1 +...+tm-1 ≤tlimit If the inequality is caused to be not good after the addition of 5 millisecondsImmediately, it can be considered that the performance of the plurality of tasks cannot meet the performance requirement condition after the current lowering of the frequency.
In the implementation mode, the number of frequency gears which can be adjusted is determined based on the linear increase part of the power consumption, so that the adjustment granularity of the working frequency can be thinned, and the more accurate working frequency can be obtained.
In some application scenarios, since each frequency bin corresponds to an operating frequency, the operating frequency increment between adjacent frequency bins may be the same. Therefore, the frequency of the linear part of the power consumption can be evenly divided according to the number of frequency gears, and then the performance average value can be determined based on the frequency, so that the calculation process is simplified.
In some alternative implementations, thestep 102 may further include the steps of:
step one, aiming at each task, continuously executing the task at the target working frequency of the task, and determining the execution time rechecking mean value of the task;
in some application scenarios, after determining a target operating frequency, the SoC is configured to verify whether the target operating frequency enables stable operation of the plurality of computing devices. The target operating frequency may be reviewed.
In these application scenarios, the SoC may continuously execute each task multiple times with respect to the target working frequency of the task, and determine an execution time rechecking average value of the task.
Step two, determining the rechecking performance of the at least one task according to the rechecking average value of the execution time corresponding to the at least one task respectively;
after the SoC determines the execution time review mean value of each task, the review performance of the plurality of tasks may be determined based on the execution time review mean value, and in some application scenarios, for example, the execution time review mean values corresponding to the plurality of tasks may be accumulated, and the accumulation and the characterization of the review performance of the plurality of tasks may be used.
Step three, if the rechecking performance of the at least one task still meets the performance requirement condition, keeping the target working frequency unchanged;
in some application scenarios, if it is detected that the performance of multiple task rechecks still meets the performance requirement condition, it may be considered that the performance and the power consumption of the computing device may be considered based on the currently determined target working frequency, and then the current target working may be kept unchanged.
And step four, if the rechecking performance of the at least one task does not meet the performance requirement condition, the frequency is increased on the basis of the target working frequency until the performance requirement condition is met.
In some application scenarios, if it is detected that the performance requirements cannot be met by the rechecking performance of the plurality of tasks, the performance requirements may be preferably met for smooth execution of the tasks. When performance requirements are met, then the frequency may not be increased, and then tasks can be performed at the lowest power consumption.
In the implementation manner, the determined target working frequency can be checked, so that the computing device can perform tasks more stably at the checked working frequency.
In some alternative implementations, thestep 102 may include: when the load is detected to be reduced, determining a minimum power consumption value corresponding to each task on the basis that the performance of the at least one task meets the performance requirement condition; and adjusting the working frequency of each computing device under the current load condition according to the minimum power consumption value.
In some application scenarios, if the load is detected to be smaller, the operating frequency of the computing device may be readjusted based on the performance-power consumption mapping relationship and the performance requirement condition to obtain a target operating frequency suitable for the current load condition.
In these application scenarios, the process of adjusting the operating frequency of each computing device under current load conditions as the load becomes smaller and the technical effects achieved may be similar to sub-steps 1021 through 1022 described above. Further, the minimum power consumption value corresponding to the load becomes smaller may be realized based on the adjustment of the frequency gear to the lowest gear. In this way, the process of adjusting the operating frequency of each computing device under the current load condition according to the minimum power consumption value and the obtained technical effects may be similar to those of the above steps 1 to 3, which are not repeated here.
In some alternative implementations, thestep 102 may include: and when the load is detected to be large, adjusting the working frequency of the computing equipment on the basis of meeting the performance requirement condition.
In some application scenarios, if a load is detected to be large, the operating frequency of the computing device may be adjusted only according to performance requirement conditions. That is, the power consumption condition can be ignored at this time, and the performance requirement is preferentially satisfied, so as to ensure smooth execution of the task.
In some alternative implementations, before thestep 101, the operating frequency adjustment method further includes the following steps:
firstly, determining whether an initial operating frequency adjustment strategy using the system-on-chip can enable the at least one task to meet an execution condition after execution is completed;
in some application scenarios, the SoC will typically have an operating frequency adjustment policy on its own. Here, the SoC's own operating frequency adjustment policy may be determined as the initial operating frequency adjustment policy described above.
In these application scenarios, the SoC may first determine whether its initial operating frequency adjustment policy enables the task to meet the execution condition after execution is completed. Here, the above-described execution conditions may include, for example, that the performance thereof satisfies the performance requirement condition, and/or that the power consumption of the computing device executing the task is below a preset power consumption threshold on the basis of the performance requirement condition being satisfied, or the like.
Then, if the at least one task can be enabled to meet the execution condition after the execution is completed, adjusting the working frequency of the at least one computing device according to the initial working frequency adjustment strategy;
if the SoC detects that the task can meet the execution condition after execution according to the initial operating frequency adjustment policy, the SoC may adjust the operating frequency of the computing device according to the initial operating frequency adjustment policy. In some application scenarios, for example, the operating frequency of the computing device may be adjusted by an initial operating frequency adjustment policy before the operating frequency is adjusted by any of the implementations described above, so as to determine whether the initial operating frequency adjustment policy enables the task to meet the execution condition after execution is completed.
Finally, if the at least one task cannot meet the execution condition after the execution is completed, acquiring a performance-power consumption mapping relation of at least one computing device and a performance requirement condition of the at least one task executed on the at least one computing device.
If the SoC detects that the task cannot meet the execution condition after execution according to the initial operation frequency adjustment policy, the operation frequency can be adjusted by using any implementation manner, so that when the SoC cannot meet the execution condition by using the operation frequency adjustment policy, the SoC can adaptively adjust the operation frequency of the computing device according to the performance requirement condition or according to the performance-power consumption mapping relationship and the performance requirement condition, thereby achieving the purpose of considering both performance and power consumption.
In some optional implementations, the operating frequency adjustment method further includes: and after detecting that any task is completed, adjusting the working frequency of the task to the minimum value.
In some application scenarios, after each task is executed, the working frequency of the task may be adjusted to a minimum value to reduce power consumption.
Referring to fig. 3, a block diagram of an operating frequency adjustment device according to an embodiment of the present application is shown, where the operating frequency adjustment device may be a module, a program segment, or a code on an electronic device. It should be understood that the apparatus corresponds to the embodiment of the method of fig. 1 described above, and is capable of performing the steps involved in the embodiment of the method of fig. 1, and specific functions of the apparatus may be referred to in the foregoing description, and detailed descriptions thereof are omitted herein as appropriate to avoid redundancy.
Alternatively, the above-described operating frequency adjustment device may be applied to a system-on-chip, which may include theacquisition module 301 and theadjustment module 302. Wherein the obtainingmodule 301 is configured to obtain a performance-power consumption mapping relationship of at least one computing device and a performance requirement condition of at least one task executed on the at least one computing device; anadjusting module 302, configured to adjust an operating frequency of the at least one computing device under different load conditions according to the performance requirement condition, or according to the performance-power consumption mapping relationship and the performance requirement condition.
Optionally, the adjustingmodule 302 is further configured to: determining a minimum power consumption value corresponding to each task on the basis that the performance of the at least one task meets the performance requirement condition; and adjusting the working frequency of each computing device under the current load condition according to the minimum power consumption value.
Optionally, the performance of the at least one task is determined based on the steps of: aiming at each task, executing the task for a plurality of times at the working frequency corresponding to the power consumption inflection point of the task, and determining the execution time average value of the task; the power consumption inflection point represents a demarcation point of linear increase and exponential increase of power consumption in the performance-power consumption mapping relation; and determining the performance of the at least one task according to the execution time average value respectively corresponding to the at least one task.
Optionally, the minimum power consumption value is determined based on a minimum operating frequency of the computing device under current load conditions; theadjustment module 302 is further configured to: for each task, determining the working frequency corresponding to the execution time average value of the task as an initial working frequency; reducing the frequency based on the initial operating frequency, and judging whether the performance of the at least one task still meets the performance requirement condition; and if the performance of the at least one task still meets the performance requirement condition, determining the reduced working frequency as a target working frequency until the performance of the at least one task does not meet the performance requirement condition, and stopping reducing the frequency.
Optionally, before the frequency is reduced based on the initial operating frequency and whether the performance of the at least one task still meets the performance requirement condition is determined, the operating frequency adjustment device further includes an average module, where the average module is configured to: according to the performance-power consumption mapping relation, determining the number of frequency gears which can be adjusted when the power consumption increases linearly; according to the number of the frequency gears, the corresponding performance total amount when the power consumption is linearly increased is averaged to obtain a performance average value; theadjustment module 302 is further configured to: after each frequency corresponding to one frequency gear is reduced, judging whether the performance of the at least one task still meets the performance requirement condition after the performance average value is reduced by the initial performance corresponding to the initial working frequency.
Optionally, theadjustment module 302 is further configured to: aiming at each task, continuously executing the task at the target working frequency of the task, and determining the execution time rechecking mean value of the task; determining the rechecking performance of the at least one task according to the rechecking mean value of the execution time corresponding to the at least one task respectively; if the rechecking performance of the at least one task still meets the performance requirement condition, keeping the target working frequency unchanged; if the rechecking performance of the at least one task does not meet the performance requirement condition, the frequency is increased on the basis of the target working frequency until the performance requirement condition is met.
Optionally, theadjustment module 302 is further configured to: when the load is detected to be reduced, determining a minimum power consumption value corresponding to each task on the basis that the performance of the at least one task meets the performance requirement condition; and adjusting the working frequency of each computing device under the current load condition according to the minimum power consumption value.
Optionally, theadjustment module 302 is further configured to: and when the load is detected to be large, adjusting the working frequency of the computing equipment on the basis of meeting the performance requirement condition.
Optionally, the operating frequency adjustment device further includes a determining module, configured to determine, before the obtaining the performance-power consumption mapping relationship of the at least one computing device and the performance requirement condition of the at least one task executed on the at least one computing device, whether an initial operating frequency adjustment policy using the system-in-chip enables the at least one task to satisfy an execution condition after execution is completed; if the at least one task can meet the execution condition after the execution is completed, adjusting the working frequency of the at least one computing device according to the initial working frequency adjustment strategy; and if the at least one task cannot meet the execution condition after the execution is completed, acquiring the performance-power consumption mapping relation of the at least one computing device and the performance requirement condition of the at least one task executed on the at least one computing device.
It should be noted that, for convenience and brevity, a person skilled in the art will clearly understand that, for the specific working procedure of the apparatus described above, reference may be made to the corresponding procedure in the foregoing method embodiment, and the description will not be repeated here.
Referring to fig. 4, fig. 4 is a schematic structural diagram of an electronic device for executing an operating frequency adjustment method according to an embodiment of the present application, where the electronic device may include: at least oneprocessor 401, such as a CPU, at least onecommunication interface 402, at least onememory 403, and at least onecommunication bus 404. Wherein thecommunication bus 404 is used to enable direct connection communication of these components. Thecommunication interface 402 of the device in the embodiment of the present application is used for performing signaling or data communication with other node devices. Thememory 403 may be a high-speed RAM memory or a nonvolatile memory (non-volatile memory), such as at least one magnetic disk memory. Thememory 403 may also optionally be at least one storage device located remotely from the aforementioned processor. Thememory 403 has stored therein computer readable instructions which, when executed by theprocessor 401, may cause the electronic device to perform the method process described above with reference to fig. 1.
It will be appreciated that the configuration shown in fig. 4 is merely illustrative, and that the electronic device may also include more or fewer components than shown in fig. 4, or have a different configuration than shown in fig. 4. The components shown in fig. 4 may be implemented in hardware, software, or a combination thereof.
Embodiments of the present application provide a computer readable storage medium having stored thereon a computer program which, when executed by a processor, may perform a method process performed by an electronic device in the method embodiment shown in fig. 1.
Embodiments of the present application provide a computer program product comprising computer program instructions which, when read and executed by a processor, are capable of performing the method provided by the above-described method embodiments, for example, the method may comprise: obtaining a performance-power consumption mapping relationship of at least one computing device and performance requirement conditions of at least one task executing on the at least one computing device; and adjusting the working frequency of the at least one computing device under different load conditions according to the performance requirement conditions or according to the performance-power consumption mapping relation and the performance requirement conditions.
In the embodiments provided in the present application, it should be understood that the disclosed apparatus and method may be implemented in other manners. The above-described apparatus embodiments are merely illustrative, for example, the division of the units is merely a logical function division, and there may be other manners of division in actual implementation, and for example, multiple units or components may be combined or integrated into another system, or some features may be omitted, or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be through some communication interface, device or unit indirect coupling or communication connection, which may be in electrical, mechanical or other form.
Further, the units described as separate units may or may not be physically separate, and units displayed as units may or may not be physical units, may be located in one place, or may be distributed over a plurality of network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
Furthermore, functional modules in various embodiments of the present application may be integrated together to form a single portion, or each module may exist alone, or two or more modules may be integrated to form a single portion.
In this document, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions.
The foregoing is merely exemplary embodiments of the present application and is not intended to limit the scope of the present application, and various modifications and variations may be suggested to one skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principles of the present application should be included in the protection scope of the present application.