Platform Independent Analysis of Probabilities on Multithreaded Programs

Platform Independent Analysis of Probabilities on Multithreaded Programs

Yuting Chen
Copyright: © 2013 |Volume: 1 |Issue: 3 |Pages: 18
ISSN: 2166-7160|EISSN: 2166-7179|EISBN13: 9781466634671|DOI: 10.4018/ijsi.2013070104
Cite Article Cite Article

MLA

Chen, Yuting. "Platform Independent Analysis of Probabilities on Multithreaded Programs." IJSI vol.1, no.3 2013: pp.48-65. http://doi.org/10.4018/ijsi.2013070104

APA

Chen, Y. (2013). Platform Independent Analysis of Probabilities on Multithreaded Programs. International Journal of Software Innovation (IJSI), 1(3), 48-65. http://doi.org/10.4018/ijsi.2013070104

Chicago

Chen, Yuting. "Platform Independent Analysis of Probabilities on Multithreaded Programs," International Journal of Software Innovation (IJSI) 1, no.3: 48-65. http://doi.org/10.4018/ijsi.2013070104

Export Reference

Mendeley
Favorite Full-Issue Download

Abstract

A concurrent program is intuitively associated with probability: the executions of the program can produce nondeterministic execution program paths due to the interleavings of threads, whereas some paths can always be executed more frequently than the others. An exploration of the probabilities on the execution paths is expected to provide engineers or compilers with support in helping, either at coding phase or at compile time, to optimize some hottest paths. However, it is not easy to take a static analysis of the probabilities on a concurrent program in that the scheduling of threads of a concurrent program usually depends on the operating system and hardware (e.g., processor) on which the program is executed, which may be vary from machine to machine. In this paper the authors propose a platform independent approach, called ProbPP, to analyzing probabilities on the execution paths of the multithreaded programs. The main idea of ProbPP is to calculate the probabilities on the basis of two kinds of probabilities: Primitive Dependent Probabilities (PDPs) representing the control dependent probabilities among the program statements and Thread Execution Probabilities (TEPs) representing the probabilities of threads being scheduled to execute. The authors have also conducted two preliminary experiments to evaluate the effectiveness and performance of ProbPP, and the experimental results show that ProbPP can provide engineers with acceptable accuracy.

Request Access

You do not own this content. Please login to recommend this title to your institution's librarian or purchase it from the IGI Global bookstore.