Title :
An Introduction to the Plasma Language
Author :
Kahne, Brian ; Gupta, Aseem ; Wilson, Peter ; Dutt, Nikil
Author_Institution :
Freescale Semicond. Inc., Austin, TX
Abstract :
The ability to enhance single-thread performance, such as by increasing clock frequency, is reaching a point of diminishing returns: power is becoming a dominating factor and limiting scalability. Adding additional cores is a scalable way to increase performance, but it requires that system designers have a method for developing multithreaded applications. Plasma, (parallel language for system modeling and analysis) is a parallel language for system modeling and multi-threaded application development implemented as a superset of C++. The language extensions are based upon those found in Occam, which is based upon CSP (communicating sequential processes) by C. A. R. Hoare. The goal of the Plasma project is to investigate whether a language with the appropriate constructs might be used to ease the task of developing highly multi-threaded software. In addition, through the inclusion of a discrete event simulation API, we seek to simplify the task of system modeling and increase productivity through clearer representation and increased compile-time checking of the more difficult-to-get-right aspects of systems models (the concurrency). The result is a single language which allows users to develop a parallel application and then to model it within the context of a system, allowing for hardware-software partitioning and various other early tradeoff analyses. We believe that this language offers a simpler and more concise syntax than other offerings and can be targeted at a large range of potential architectures, including heterogeneous systems and those without shared memory
Keywords :
C++ language; application program interfaces; discrete event simulation; modelling; parallel languages; C++ language; communicating sequential processes; discrete event simulation API; hardware-software partitioning; multithreaded software; parallel language; system design; system modeling; Clocks; Design methodology; Discrete event simulation; Frequency; Modeling; Parallel languages; Plasma applications; Plasma simulation; Productivity; Scalability;
Conference_Titel :
Microprocessor Test and Verification, 2005. MTV '05. Sixth International Workshop on
Conference_Location :
Austin, TX
Print_ISBN :
0-7695-2627-6