Abstract—The use of multithreading can enhance theperformance of a software system. However, its excessive usecan degrade the performance. For example, a thread-per-jobapproach might lead to a large amount of threads withincreased associated overheads.
In this paper we explore the use of the Parallelism Viewpointto support one possible strategy to reduce the number ofthreads, namely finding candidate threads that can be replacedby thread pooling. Thread pooling reduces the large numberof threads by reusing threads from an existing pool. As anexample we analyze the threads of a precision criticalparallelism-intensive electron microscope software system.Results show that the viewpoint provides a profound insightinto the threading structure of the system, which helps inreducing the number of threads in a cost-effective way. And,the total time gain along with such reduction is encouraging.
Index Terms—Multithreading, architecture viewpoint, parallelism viewpoint, software performance, thread pooling.
Naeem Muhammad, Nelis Boucke and Yolande Berbers are with the Department of Computer Science, Katholieke Universiteit Leuven, Belgium (e-mail: firstname.lastname@example.org).
Cite: Naeem Muhammad, Nelis Boucke, and Yolande Berbers, "Using the Parallelism Viewpoint to Optimize the Use of Threads in Parallelism-intensive Software Systems," International Journal of Computer Theory and Engineering vol. 5, no. 1, pp. 123-127, 2013.