Massively parallel SIMD array architectures are making their way into embedded processors. In these architectures, a number of identical processing elements having small private storage and using asynchronous I/O for accessing large shared memory executes the same instruction in lockstep. In this paper, we outline a simple extension to the C language, called Cn , used for programming a commercial SIMD array architecture. The design of Cn is based on the concept of the SIMD array type architecture and revisits first principles of designing efficient and portable parallel programming languages. Cn has a l of abstraction and can also be seen as an intermediate language in the compilation from higher level parallel languages to machine code.
Anton Lokhmotov, Benedict R. Gaster, Alan Mycroft,