Performance Prediction of Multi-threaded Applications

In recent years, owing to the advancement in parallel programming, it is becoming crucial to evaluate the performance of multithreaded applications. Most of the times, just allocating resources and using expensive hardware does not guarantee speedup and hence it is important to do code instrumentation. According to Amdahl’s law, many programs might not be parallelizable. Sometimes, the parallelisation overhead might not give the expected speedup. In this paper, we are proposing a learning-based approach to predict the execution time and hence the speedup of an unseen program on a given machine using application characteristics for specific hardware. The authors believe that the speedup depends on a lot of factors which we have showcased in this research. We are not only comparing several machine learning models to show which model works best to predict the performance but also evaluating the features that have a major impact on the performance of the multithreaded application. This research can help programmers rectify those bottlenecks for efficient performance.

More on this project can be found here

updated_at 25-04-2021