Skip to content

Latest commit

 

History

History
52 lines (36 loc) · 1.57 KB

README.md

File metadata and controls

52 lines (36 loc) · 1.57 KB

advanced_DVFS

Linux shell script for advanced DVFS technique.

Set a maximum temperature, # of cores, maximum frequency of your devices.
It predicts the higest temperature of cores at different frequencies.
The highest one is adopted for CPU frequency.

We use linear-regression model.
The model was established using the following:

EXEC, IPC, FREQ, AFREQ, L3MPI, READ, WRITE,
INST, PhysIPC, INSTnom, Proc_Energy_(Joules), Total_Util, frequency

"Total_Util" is total utilization of cores.
"frequency" is current CPU frequency.
Other details are in PCM (Processor Counter Monitor) - https://github.com/opcm/pcm. 

This model is based on Intel i7-7700.
Thus, different types of servers may show slightly different prediction results.


This script must be run with sudo privileges.

Installation

  1. Install PCM (Processor Counter Monitor)
git clone https://github.com/opcm/pcm.git 
  1. Download this project
git clone https://github.com/JeongIn/advanced_DVFS.git 
  1. Move "pcm-pred_model.cpp" and "advanced_DVFS" to "pcm" folder

  2. Modify "Makefile"

 EXE = pcm-pred_model.x 
  1. Make
 make 

How to Use

  1. super user mode
 su 
  1. Start "pcm-pred_model"
cd pcm/
./pcm-pred_model.x 
  1. Start "advanced_DVFS" with new terminal.
    [This example will limit system temperature to 50 Celsius (8 cores, Maximum frequency: 4.2GHz]
cd pcm/
./advanced_DVFS.sh 50 8 4200000