Comparing Multinomial and K-Means Clustering for SimPoint
Skip to main content
eScholarship
Open Access Publications from the University of California

Comparing Multinomial and K-Means Clustering for SimPoint

Abstract

SimPoint is a technique used to pick what parts of the program's execution to simulate in order to have a complete picture of execution. SimPoint uses data clustering algorithms from machine learning to automatically find repetitive (similar) patterns in a program's execution, and it chooses one sample to represent each unique repetitive behavior. These samples when taken together represent an accurate picture of the complete execution of the program. SimPoint is based on the k-means clustering algorithm, and recent work has proposed using a different clustering method based on multinomial models, but only provided a preliminary comparison and analysis. In this work we provide a detailed comparison of using k-means and multinomial clustering for SimPoint. We show that k-means performs better than the recently proposed multinomial clustering approach. We then propose two improvements, in the areas of feature reduction and the picking of simulation points, to the prior multinomial clustering approach, which allows multinomial clustering to perform as well as k-means. We then conclude by examining how to potentially combine multinomial clustering with k-means.

Pre-2018 CSE ID: CS2005-0841

Main Content
For improved accessibility of PDF content, download the file to your device.
Current View