next up previous
Next: Future Work Up: ICC++: A C++ Dialect Previous: Discussion and Related Work

Summary

 

ICC++ is a new C++ dialect designed to support both efficient sequential and parallel execution. By allowing concurrency to be introduced incrementally, ICC++ allows sequential and parallel program versions to be maintained with a single source and permits convenient expression of irregular and fine-grained concurrency. By defining a simple object consistency model and a flexible set of extensions, ICC++ supports the construction of concurrent data abstractions. Distributed data abstractions are further supported with a compatible extension of arrays called collections. Finally, by focusing on programmer annotation for potential concurrency, not actual concurrency, ICC++ allow the system to optimize execution granularity to match the underlying machine, providing both high performance sequential and parallel execution on both shared and distributed memory systems.



Julian Dolby
dolby@cs.uiuc.edu