# CPU-GPU-Memory DVFS for Power-Efficient MPSoC in Mobile Cyber Physical Systems
## 6 Experimental Results
### Evaluation and Comparative Study  
We evaluated CGM-DVFS for each aforementioned experimental application fifteen times and observed the average power consumption of the MPSoC and the average peak temperature of the big CPUs. We chose to observe the peak temperature of the big CPUs since they tend to be the hottest hot spot in the MPSoC [43]. We also evaluated the average power consumption of the MPSoC and the average peak temperature of big CPUs achieved using the performance governor (denoted as performance), the interactive governor (denoted as interactive) and the state-of-the-art approaches as proposed in [4; 6; 7] (mentioned in Section 3). In [4], the proposed Q-Learning (reinforcement learning)-based DVFS is based on a reward function, as shown in Equation (2), which is based on Equation (3). We also denote this methodology as Next in our comparative study. In Equation (2), the reward function attempts to maximise the value of \(PPDW\), which is a metric, _performance per degree watt_, incorporating the performance (\(FPS_{i}\)), temperature (\(\Delta T\), where \(\Delta T\) is the difference between the current temperature, \(T_{i}\), and the ambient temperature, \(T_{a}\)) and power consumption (\(P_{i}\)) of the device. The agent in Next has the following states: \(big\_CPU_{freq}\), \(LITTLE\_CPU_{freq}\), \(GPU_{freq}\), \(FPS_{current}\), \(Target\_{FPS}\), \(Power_{current}\), \(Temperature_{big}\) and \(Temperature_{device}\); where \(big\_CPU_{freq}\) is the frequency of the big CPU, \(LITTLE\_CPU_{freq}\) is the frequency of the LITTLE CPU, \(GPU_{freq}\) is the frequency of the GPU, \(FPS_{current}\) is the current performance in terms of FPS, \(Target\_{FPS}\) is the desired performance in terms of FPS, \(Power_{current}\) is the current power consumption and \(Temperature_{big}\) and \(Temperature_{device}\) are the temperature of the big CPU and the whole device, respectively. The actions performed by the Next agent are as follows: big frequency up, big frequency down, do not change big frequency, LITTLE frequency up, LITTLE frequency down, do not change LITTLE frequency, GPU frequency up, GPU frequency down and do not change GPU frequency. We modified Equation (3) to incorporate the performance of all types of applications, not only FPS-based ones, and the modified equation for \(PPDW\) is Equation (4). Moreover, we also extended [4], denoted as Next_Mod, to incorporate memory DVFS along with CPU and GPU such that we could undertake a comparative study between Next and CGM-DVFS. In Next_Mod, the agent has a new state, \(RAM_{freq}\), frequency of memory, and three more new actions: RAM frequency up, RAM frequency down and do not change RAM frequency. Both Next and Next_Mod were invoked every 100 ms. Exploration sessions for face, yolo, render, stream, traffic and classify applications for Next and Next_Mod were 5 min, whereas blks., strm. and fft were executed for their execution lifespan for Next and Next_Mod to explore. [4; 6; 7]and Next_Mod were chosen for the comparative study because these methods perform DVFS on a combination of CPU, GPU and memory or all of the above. \[max\ R(s_{i},a_{i})=max(PPDW_{i}), \tag{2}\] \[\text{where}\] \[max(PPDW_{i})=PPDW_{best}\geq PPDW_{i}>PPDW_{worst}\] \[PPDW_{i}=\frac{FPS_{i}}{\Delta T\times P_{i}},\text{where}\ \Delta T=T_{i}-T_{a}\] (3) \[PPDW_{i}=\frac{Perf_{i}}{\Delta T\times P_{i}},\text{where}\ \Delta T=T_{i}-T_{a} \tag{4}\]  
Figure 4 shows the average power consumption of the device (see Figure 3(a)) and the average peak temperature of big CPUs (see Figure 3(b)) while executing the aforementioned benchmark applications using different DVFS methodologies: performance, interactive, MRPI, RewardProfiler, Next, Next_Mod and CGM-DVFS. Tables 3 and 4 show the improvement in power-savings (%) and the reduction in peak temperature (%), respectively, of CGM-DVFS compared to performance, MRPI, RewardProfiler, interactive, Next & Next_Mod.