Title :
Industrial Case Study on Supporting the Comprehension of System Behaviour under Load
Author :
Syer, Mark D. ; Adams, Bram ; Hassan, Ahmed E.
Author_Institution :
Software Anal. & Intell. Lab. (SAIL), Queen´´s Univ., Kingston, QC, Canada
Abstract :
Large-scale software systems achieve concurrency on enormous scales using a number of different design patterns. Many of these design patterns are based on pools of pre-existing and reusable threads that facilitate incoming service requests. Thread pools limit thread lifecycle overhead (thread creation and destruction) and resource thrashing (thread proliferation). Despite their potential for scalability, thread pools are hard to configure and test because of concurrency risks like synchronization errors and dead lock, and thread pool-specific risks like resource thrashing and thread leakage. Addressing these challenges requires a thorough understanding of the behaviour of the threads in the thread pool. We argue for a methodology to automatically identify and rank deviations in the behaviour of threads based on resource usage.
Keywords :
reverse engineering; software architecture; software maintenance; large-scale software systems; preexisting thread pool; reusable thread pool; system behaviour comprehension; thread creation; thread destruction; thread lifecycle overhead; thread proliferation; Instruction sets; Instruments; Measurement; Performance analysis; Software engineering; Software systems; behaviour-based clustering; thread-pools; understanding ULS systems;
Conference_Titel :
Program Comprehension (ICPC), 2011 IEEE 19th International Conference on
Conference_Location :
Kingston, ON
Print_ISBN :
978-1-61284-308-7
Electronic_ISBN :
1092-8138
DOI :
10.1109/ICPC.2011.38