Issue No. 02 - February (1993 vol. 4)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/71.207596
<p>Features of an explicitly parallel programming language targeted for reconfigurable parallel processing systems, where the machine's N processing elements (PEs) are capable of operating in both the SIMD and SPMD modes of parallelism, are described. The SPMD (single program-multiple data) mode of parallelism is a subset of the MIMD mode where all processors execute the same program. By providing all aspects of the language with an SIMD mode version and an SPMD mode version that are syntactically and semantically equivalent, the language facilitates experimentation with and exploitation of hybrid SIMD/SPMD machines. Language constructs (and their implementations) for data management, data-dependent control-flow, and PE-address-dependent control-flow are presented. These constructs are based on experience gained from programming a parallel machine prototype and are being incorporated into a compiler under development. Much of the research presented is applicable to general SIMD machines and MIMD machines.</p>
Index Termsdata management; control-flow aspects; SIMD/SPMD parallel language/compiler; explicitly parallel programming language; reconfigurable parallel processing systems; processing elements; single program-multiple data; mode version; data-dependent control-flow; PE-address-dependent control-flow; parallel machine prototype; database management systems; parallel languages; parallel programming; program compilers
M. Nichols, H. Siegel and H. Dietz, "Data Management and Control-Flow Aspects of an SIMD/SPMD Parallel Language/Compiler," in IEEE Transactions on Parallel & Distributed Systems, vol. 4, no. , pp. 222-234, 1993.