Back to Search Start Over

A general guide to applying machine learning to computer architecture

Authors :
Universitat Politècnica de Catalunya. Departament d'Arquitectura de Computadors
Barcelona Supercomputing Center
Universitat Politècnica de Catalunya. CAP - Grup de Computació d'Altes Prestacions
Nemirovsky, Daniel
Arkose, Tugberk
Markovic, Nikola
Nemirovsky, Mario
Unsal, Osman Sabri
Cristal Kestelman, Adrián
Valero Cortés, Mateo
Universitat Politècnica de Catalunya. Departament d'Arquitectura de Computadors
Barcelona Supercomputing Center
Universitat Politècnica de Catalunya. CAP - Grup de Computació d'Altes Prestacions
Nemirovsky, Daniel
Arkose, Tugberk
Markovic, Nikola
Nemirovsky, Mario
Unsal, Osman Sabri
Cristal Kestelman, Adrián
Valero Cortés, Mateo
Publication Year :
2018

Abstract

The resurgence of machine learning since the late 1990s has been enabled by significant advances in computing performance and the growth of big data. The ability of these algorithms to detect complex patterns in data which are extremely difficult to achieve manually, helps to produce effective predictive models. Whilst computer architects have been accelerating the performance of machine learning algorithms with GPUs and custom hardware, there have been few implementations leveraging these algorithms to improve the computer system performance. The work that has been conducted, however, has produced considerably promising results. The purpose of this paper is to serve as a foundational base and guide to future computer architecture research seeking to make use of machine learning models for improving system efficiency. We describe a method that highlights when, why, and how to utilize machine learning models for improving system performance and provide a relevant example showcasing the effectiveness of applying machine learning in computer architecture. We describe a process of data generation every execution quantum and parameter engineering. This is followed by a survey of a set of popular machine learning models. We discuss their strengths and weaknesses and provide an evaluation of implementations for the purpose of creating a workload performance predictor for different core types in an x86 processor. The predictions can then be exploited by a scheduler for heterogeneous processors to improve the system throughput. The algorithms of focus are stochastic gradient descent based linear regression, decision trees, random forests, artificial neural networks, and k-nearest neighbors.<br />This work has been supported by the European Research Council (ERC) Advanced Grant RoMoL (Grant Agreemnt 321253) and by the Spanish Ministry of Science and Innovation (contract TIN 2015-65316P).<br />Peer Reviewed<br />Postprint (published version)

Details

Database :
OAIster
Notes :
21 p., application/pdf, English
Publication Type :
Electronic Resource
Accession number :
edsoai.on1037158017
Document Type :
Electronic Resource