Title :
Experiences in initiating concurrency software research efforts
Author :
Harper, K. Eric ; Zheng, Jiang ; Mahate, Shakeel
Author_Institution :
Ind. Software Syst., ABB Corp. Res., Raleigh, NC, USA
Abstract :
Multi-core CPUs are now common in modern computers. To get access to effectively an unlimited supply of compute resources, software programs that have been highly optimized to use a single CPU need to be converted where possible to use concurrency. We have initiated our concurrency software research for performance enhancement on a large-scale system with high throughput and low latency transactions. In this paper, we report our experience, experiments, and results in various aspects of concurrency design and programming, including multi-threaded prototypes, static and dynamic concurrency analysis, future techniques and trends, concurrency experiments, and concurrency design patterns. Based on the concurrency experiments, we achieved at least 80 percent overall performance increases as measured by transaction throughput. As a result, capital expenditures for large scale deployments can be significantly reduced.
Keywords :
large-scale systems; multiprocessing programs; multiprocessing systems; parallel programming; research and development; software engineering; concurrency design; concurrency programming; concurrency software research; dynamic concurrency analysis; large-scale system; multicore CPU; multithreaded prototypes; performance enhancement; static concurrency analysis; Concurrent computing; Message systems; Parallel processing; Programming; Runtime; Servers; Software; concurrency; multi-core; parallelism;
Conference_Titel :
Software Engineering, 2010 ACM/IEEE 32nd International Conference on
Conference_Location :
Cape Town
Print_ISBN :
978-1-60558-719-6
DOI :
10.1145/1810295.1810316