Title :
Supporting high level programming with high performance: the Illinois Concert system
Author :
Chien, Andrew ; Dolby, Julian ; Ganguly, Bishwaroop ; Karamcheti, Vijay ; Zhang, Xingbin
Author_Institution :
Dept. of Comput. Sci., Illinois Univ., Urbana, IL, USA
Abstract :
Programmers of concurrent applications are faced with a complex performance space in which data distribution and concurrency management exacerbate the difficulty of building large, complex applications. To address these challenges, the Illinois Concert system provides a global names-pace, implicit concurrency control and granularity management, implicit storage management, and object oriented programming features. These features are embodied in a language ICC++ (derived from C++) which has been used to build a number of kernels and applications. As high level features can potentially incur overhead, the Concert system employs a range of compiler and runtime optimization techniques to efficiently support the high level programming model. The compiler techniques include type inference, inlining and specialization; and the runtime techniques include caching, prefetching and hybrid stack/heap multithreading. The effectiveness of these techniques permits the construction of complex parallel applications that are flexible, enabling convenient application modification or tuning. We present performance results for a number of application programs which attain good speedups and absolute performance
Keywords :
C language; concurrency control; object-oriented programming; optimising compilers; parallel languages; parallel programming; storage management; Concert system; ICC++ language; Illinois Concert system; complex performance space; concurrency management; concurrent applications; data distribution; global names-pace; granularity management; high level programming; high performance; hybrid stack/heap multithreading; implicit concurrency control; implicit storage management; inlining; object oriented programming features; runtime optimization techniques; type inference; Concurrency control; Concurrent computing; Kernel; Object oriented modeling; Object oriented programming; Optimizing compilers; Prefetching; Program processors; Programming profession; Runtime;
Conference_Titel :
High-Level Programming Models and Supportive Environments, 1997. Proceedings., Second International Workshop on
Conference_Location :
Geneva
Print_ISBN :
0-8186-7882-8
DOI :
10.1109/HIPS.1997.582952