TL;DR: In this paper, the tradeoff between fairness to diverse target architectures and programmability of the test programs is addressed through the use of operator and application libraries, and the appropriate balance between register file and cache to optimize performance under varying levels of processor element virtualization.
Abstract: An environment which addresses several problems in evaluating massively parallel array architectures is described. A realistic workload including a series of applications currently being used as building blocks in vision research has been constructed. Both flexibility in architectural parameter selection and simulation efficiency are maintained by combining virtual machine emulation with trace driven simulation. The tradeoff between fairness to diverse target architectures and programmability of the test programs is addressed through the use of operator and application libraries. Initial results are presented indicating the appropriate balance between register file and cache to optimize performance under varying levels of processor element virtualization.
TL;DR: The implementation of the virtualization is adapted for the development of communication libraries and also adapted to enlarge the asynchronous sections of code for SPMD architecture, and a methodology is presented in order to easily port the language on different target architectures.
Abstract: POMPC is a parallel language dedicated to the programming of Massively Parallel Computers according to a synchronous Data Parallel model. It is an extension of the ANSI C language and follows its philosophy. Parallelism is explicitly handled by the definition of collections of parallel variables and the definition of communication primitives. A methodology is presented in order to easily port the language on different target architectures. Virtualization is introduced to handle simultaneously several collections of different sizes and shapes. Virtualization management is a key point of the compilation process. Programmer, architecture, compilation and system points of view lead to a special implementation of the virtualization mixing physical and virtual parallel objects. The implementation of the virtualization is adapted for the development of communication libraries and also adapted to enlarge the asynchronous sections of code for SPMD architecture. The portability of the POMPC language is validated by...