Massive parallelism through program restructuring

A technique for mapping algorithms to massively parallel processors is described. It differs from previous work by focusing on explicit program restructuring, as opposed to manual or algebraic mapping. The method is flexible, and it allows nonlinear, as well as linear, mappings. Some restructuring transformations and how they would be used are described. A limitation of the approach is the restriction of skewing and rotating by unit factors only. The method benefits from previous work in program restructuring and systolic array synthesis and thus will be simple to implement.<<ETX>>