General Guide to Applying Machine Learning to Computer Architecture
Autor: | Nikola Markovic, Osman Unsal, Tugberk Arkose, Mateo Valero, Mario Nemirovsky, Adrian Cristal, Daniel Nemirovsky |
---|---|
Přispěvatelé: | 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 |
Rok vydání: | 2018 |
Předmět: |
Informàtica::Intel·ligència artificial::Aprenentatge automàtic [Àrees temàtiques de la UPC]
Computer Networks and Communications Computer science Test data generation Performance prediction Big data Decision tree 02 engineering and technology Machine learning computer.software_genre 01 natural sciences Data science Scheduling (computing) Aprenentatge automàtic 0103 physical sciences 0202 electrical engineering electronic engineering information engineering Computer architecture Informàtica::Arquitectura de computadors [Àrees temàtiques de la UPC] Implementation 010302 applied physics Artificial neural network Scheduling business.industry Macrodades Parameter engineering Computer Science Applications Stochastic gradient descent Computational Theory and Mathematics Hardware and Architecture 020201 artificial intelligence & image processing Artificial intelligence business computer Software Information Systems |
Zdroj: | Recercat. Dipósit de la Recerca de Catalunya instname UPCommons. Portal del coneixement obert de la UPC Universitat Politècnica de Catalunya (UPC) |
ISSN: | 2313-8734 |
Popis: | 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. 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). |
Databáze: | OpenAIRE |
Externí odkaz: |