Using a 0-1 integer programming model for automatic static data distribution

This paper describes an automatic data distribution method which deal with both the alignment and the distribution problems in a single optimization phase, as opposed to sequentially solving these two inter-dependent approaches as done by previous work. The core of this work is called the Communicat...

ver descrição completa

Detalhes bibliográficos
Autores: García Almiñana, Jordi|||0000-0002-3515-7150, Ayguadé Parra, Eduard|||0000-0002-5146-103X, Labarta Mancho, Jesús José|||0000-0002-7489-4727
Tipo de documento: artigo
Data de publicação:1996
País:España
Recursos:Universitat Politècnica de Catalunya (UPC)
Repositório:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglês
OAI Identifier:oai:upcommons.upc.edu:2117/331039
Acesso em linha:https://hdl.handle.net/2117/331039
https://dx.doi.org/10.1142/S0129626496000169
Access Level:Acceso aberto
Palavra-chave:Computational complexity
Integer programming
Automatic data distribution
Automatic parallelization
Distributed-memory multiprocessors
Computation and data movement costs
0–1 linear programming
Complexitat computacional
Programació en nombres enters
Àrees temàtiques de la UPC::Informàtica::Informàtica teòrica
Descrição
Resumo:This paper describes an automatic data distribution method which deal with both the alignment and the distribution problems in a single optimization phase, as opposed to sequentially solving these two inter-dependent approaches as done by previous work. The core of this work is called the Communication-Parallelism Graph, which describes the relationships among array dimensions of the same and different array references regarding communication and parallelism. The overall data distribution problem is then formulated as a linear 0–1 integer programming problem, where the objective function to be minimized is the total execution time. The solution is static in the sense that the layout of the arrays does not change during the execution of the program. We also show the feasibility of using this approach to solve the problem in terms of compilation time and quality of the solutions generated.