Abstract

Heterogeneous multiprocessor system-on-chips (SoCs) provide a wide range of architectural parameters that can be managed dynamically. For example, one can control the type (big/little), number and frequency of active cores of the state-of-the-art mobile processors at runtime. These runtime choices result in more than 10x range in execution time, 5x range in power consumption, and 50x range in performance per watt. Therefore, it is crucial to make optimum runtime decisions as a function of dynamically varying workloads. This paper presents a reinforcement learning approach for dynamically controlling the number and frequency of big and little cores in mobile processors. We first demonstrate that commonly used Q-Table approach does not scale to address this problem. Then, we propose an efficient deep Q-learning methodology to optimize the performance per watt. Experiments using Odroid XU3 mobile processor platform show that the performance per watt achieved by the proposed approach is within 1% of the optimal value obtained by an oracle.

Original languageEnglish (US)
JournalIEEE Computer Architecture Letters
DOIs
StateAccepted/In press - Jan 1 2019

Fingerprint

Reinforcement learning
Electric power utilization
Experiments
System-on-chip

Keywords

  • Frequency control
  • Instruments
  • Memory management
  • Power demand
  • Power system management
  • Runtime
  • Training

ASJC Scopus subject areas

  • Hardware and Architecture

Cite this

A Deep Q-Learning Approach for Dynamic Management of Heterogeneous Processors. / Gupta, Ujjwal; Mandal, Sumit K.; Mao, Manqing; Chakrabarti, Chaitali; Ogras, Umit.

In: IEEE Computer Architecture Letters, 01.01.2019.

Research output: Contribution to journalArticle

@article{597f0c883af54a559f05178b70a78f38,
title = "A Deep Q-Learning Approach for Dynamic Management of Heterogeneous Processors",
abstract = "Heterogeneous multiprocessor system-on-chips (SoCs) provide a wide range of architectural parameters that can be managed dynamically. For example, one can control the type (big/little), number and frequency of active cores of the state-of-the-art mobile processors at runtime. These runtime choices result in more than 10x range in execution time, 5x range in power consumption, and 50x range in performance per watt. Therefore, it is crucial to make optimum runtime decisions as a function of dynamically varying workloads. This paper presents a reinforcement learning approach for dynamically controlling the number and frequency of big and little cores in mobile processors. We first demonstrate that commonly used Q-Table approach does not scale to address this problem. Then, we propose an efficient deep Q-learning methodology to optimize the performance per watt. Experiments using Odroid XU3 mobile processor platform show that the performance per watt achieved by the proposed approach is within 1{\%} of the optimal value obtained by an oracle.",
keywords = "Frequency control, Instruments, Memory management, Power demand, Power system management, Runtime, Training",
author = "Ujjwal Gupta and Mandal, {Sumit K.} and Manqing Mao and Chaitali Chakrabarti and Umit Ogras",
year = "2019",
month = "1",
day = "1",
doi = "10.1109/LCA.2019.2892151",
language = "English (US)",
journal = "IEEE Computer Architecture Letters",
issn = "1556-6056",
publisher = "Institute of Electrical and Electronics Engineers Inc.",

}

TY - JOUR

T1 - A Deep Q-Learning Approach for Dynamic Management of Heterogeneous Processors

AU - Gupta, Ujjwal

AU - Mandal, Sumit K.

AU - Mao, Manqing

AU - Chakrabarti, Chaitali

AU - Ogras, Umit

PY - 2019/1/1

Y1 - 2019/1/1

N2 - Heterogeneous multiprocessor system-on-chips (SoCs) provide a wide range of architectural parameters that can be managed dynamically. For example, one can control the type (big/little), number and frequency of active cores of the state-of-the-art mobile processors at runtime. These runtime choices result in more than 10x range in execution time, 5x range in power consumption, and 50x range in performance per watt. Therefore, it is crucial to make optimum runtime decisions as a function of dynamically varying workloads. This paper presents a reinforcement learning approach for dynamically controlling the number and frequency of big and little cores in mobile processors. We first demonstrate that commonly used Q-Table approach does not scale to address this problem. Then, we propose an efficient deep Q-learning methodology to optimize the performance per watt. Experiments using Odroid XU3 mobile processor platform show that the performance per watt achieved by the proposed approach is within 1% of the optimal value obtained by an oracle.

AB - Heterogeneous multiprocessor system-on-chips (SoCs) provide a wide range of architectural parameters that can be managed dynamically. For example, one can control the type (big/little), number and frequency of active cores of the state-of-the-art mobile processors at runtime. These runtime choices result in more than 10x range in execution time, 5x range in power consumption, and 50x range in performance per watt. Therefore, it is crucial to make optimum runtime decisions as a function of dynamically varying workloads. This paper presents a reinforcement learning approach for dynamically controlling the number and frequency of big and little cores in mobile processors. We first demonstrate that commonly used Q-Table approach does not scale to address this problem. Then, we propose an efficient deep Q-learning methodology to optimize the performance per watt. Experiments using Odroid XU3 mobile processor platform show that the performance per watt achieved by the proposed approach is within 1% of the optimal value obtained by an oracle.

KW - Frequency control

KW - Instruments

KW - Memory management

KW - Power demand

KW - Power system management

KW - Runtime

KW - Training

UR - http://www.scopus.com/inward/record.url?scp=85059963191&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=85059963191&partnerID=8YFLogxK

U2 - 10.1109/LCA.2019.2892151

DO - 10.1109/LCA.2019.2892151

M3 - Article

AN - SCOPUS:85059963191

JO - IEEE Computer Architecture Letters

JF - IEEE Computer Architecture Letters

SN - 1556-6056

ER -