Document Type




Publication Date



Institute of Electrical and Electronic Engineers (IEEE)

Source Publication

IEEE Transactions on Parallel and Distributed Systems

Source ISSN



In multicore processor systems, being able to accurately predict the future provides new optimization opportunities, which otherwise could not be exploited. For example, an oracle able to predict a certain application's behavior running on a smart phone could direct the power manager to switch to appropriate dynamic voltage and frequency scaling modes that would guarantee minimum levels of desired performance while saving energy consumption and thereby prolonging battery life. Using predictions enables systems to become proactive rather than continue to operate in a reactive manner. This prediction-based proactive approach has become increasingly popular in the design and optimization of integrated circuits and of multicore processor systems. Prediction transforms from simple forecasting to sophisticated machine learning based prediction and classification that learns from existing data, employs data mining, and predicts future behavior. This can be exploited by novel optimization techniques that can span across all layers of the computing stack. In this survey paper, we present a discussion of the most popular techniques on prediction and classification in the general context of computing systems with emphasis on multicore processors. The paper is far from comprehensive, but, it will help the reader interested in employing prediction in optimization of multicore processor systems.


Accepted version. IEEE Transactions on Parallel and Distributed Systems, Vol. 30, No. 5 (May 1, 2019) : 1184-1200. DOI. © 2019 Institute of Electrical and Electronic Engineers (IEEE). Used with permission.

ababei_13232acc.docx (289 kB)
ADA Accessible Version