Abstract

In this paper, we predict memory bandwidth in NUMA architecture by implementing a method based on a supervised machine learning algorithm, the k-Nearest Neighbor (KNN) regression method. The main motivation for using KNN in our model is its flexibility to deal with different data types, its capability to incorporate small data size, its compatibility with irregular feature vectors and its simplicity. Memory bandwidth usage is expressed in terms of total transferred data per execution time, and it changes with respect to problem size and the number of processors. We consider problem size and the number of threads as KNN features. We measure memory bandwidth components, transferred data and execution time for different ranges of problem size and number of threads. Then, considering these values as training data, we predict memory bandwidth for unknown problem sizes and number of threads. The objective of this paper is not to reach accurate predictions for the memory bandwidth components, but rather to use these components to achieve an acceptable level of memory bandwidth prediction. We implement this approach in NUMA architecture and verify its accuracy by applying it to different ranges of regular and irregular high performance computing applications. Using this approach, we can predict memory bandwidth in both dimensions. The highest potential prediction error is observed when training data do not have enough knowledge of specific PSs and number of threads.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call