Architecture and Real-Time Systems (ARTS) Laboratory

 Architecture and Real-Time Systems (ARTS) Laboratoryclock

TILTS(A fast temperature method based on HotSpot)

HotSpot[1] is widely used for temperature modeling in academic researches. Its accuracy has been justified and accepted. However, since the temperature calculation process in HotSpot is based on 4th order Runge-Kutta method and bring a large overhead, it's inefficient when performing thermal analysis for long simulation times. In HotSpot, the time needed for temperature calculation of each interval is based on the length of the interval. In a long thermal analysis, longer interval will reduce the number of intervals but the time need to calculation the temperature in a interval will greatly increased. If the interval is small, there will be more intervals. TILTS[2] (Time Invariant Linear Thermal System) is a novel transient thermal simulation method for CPU chips ar the architecture level. It make use that the thermal system of a CPU chip can be treated as a time invariant linear system. The temperature can obtained using the system responses. When the intervals are of different length, the time needed for calculating temperature is the same.

TILTS was developed by Yongkui Han in 2006 and integrated it in HotSpot 3.0.2. In [2], he show that TILTS has the same accuracy and achieves speedups of over 1000 for an interval of 100us . As HotSpot has developed to version 5.0.2, we integrate TILTS in the latest HotSpot and test the accuracy and speedups. The results are shown in the table below. The application used to test TILTS are from Mibench [3]. The power files are generated using Wattch[4]. The difference between temperaure obtained from TILTS and temperature obtained from HotSpot is trivial. And the TILTS achieves up to 600 times speedups.

speedups No. of Computations Interval Max Temperature Diff **
fft 11.5 0.05M 1e-6 sec 0.0210%
blowfish 10.7 0.08M 1e-6 sec 0.0010%
rawcaudio 10.0 0.25M 1e-6 sec 0.0210%
rawdaudio 9.1 0.18M 1e-6 sec 0.0211%
rijndael 9.5 0.09M 1e-6 sec 0.0211%
tmedian 9.5 0.14M 1e-6 sec 0.0209%
h263enc 9.8 2.0M 1e-6 sec 0.0309%
h263enc* 12.8 2.0M 1e-5 sec 0.0301%
h263enc* 18.8 2.0M 1e-4 sec 0.0300%
h263enc* 69.4 2.0M 1e-3 sec 0.1000%
h263enc* 635.8 2.0M 1e-2 sec 3.3100%

The following package contains the codes which replace the original thermal method of HotSpot with TILTS.

HotSpot with Tilts(code)

Comparison between Original HotSpot and HotSpot with Tilts(comparison data plot and instruction)


[1] HotSpot

[2]Y. Han and I. Koren, "Simulated Annealing Based Temperature Aware Floorplanning," (pdf file) Journal of Low-Power Electronics, pp. 141-155, Vol. 3, Sept. 2007

[3] Mibench

[4] Wattch

* If the No. of computation is small, the initialization of TILTS will take a significant part of the simulation time. So when the interval of h263enc getting large we make the No. of computations not changed by repeating the benchmark.

** The max temperature difference is the maximum of: abs( (T_HotSpot(t) - T_TILTS(t))/T_HotSpot(t) ), where T_HotSpot(t) is the temperature obtained using HotSpot at time t,T_TILTS(t) is the temperature obtained using TILTS at time t.