Abstract multiple specialization and its application to program parallelization.

Puebla Sánchez, Alvaro Germán y Hermenegildo, Manuel V. (1999). Abstract multiple specialization and its application to program parallelization.. "The journal of logic programming", v. 41 (n. 283); pp. 279-316. ISSN 0743-1066. https://doi.org/10.1016/S0743-1066(99)00031-X.

Descripción

Título: Abstract multiple specialization and its application to program parallelization.
Autor/es:
  • Puebla Sánchez, Alvaro Germán
  • Hermenegildo, Manuel V.
Tipo de Documento: Artículo
Título de Revista/Publicación: The journal of logic programming
Fecha: Noviembre 1999
Volumen: 41
Materias:
Palabras Clave Informales: Program specialization, Abstract interpretation, Partial evaluation, Static analysis, Parallelization, Loop invariant Detection, Programas de especialización, Interpretación abstracta, Evaluación parcial, Análisis estático, Paralelización, Circuito de detección invariable.
Escuela: Facultad de Informática (UPM) [antigua denominación]
Departamento: Inteligencia Artificial
Licencias Creative Commons: Reconocimiento - Sin obra derivada - No comercial

Texto completo

[img]
Vista Previa
PDF (Document Portable Format) - Se necesita un visor de ficheros PDF, como GSview, Xpdf o Adobe Acrobat Reader
Descargar (2MB) | Vista Previa

Resumen

Program specialization optimizes programs for known valúes of the input. It is often the case that the set of possible input valúes is unknown, or this set is infinite. However, a form of specialization can still be performed in such cases by means of abstract interpretation, specialization then being with respect to abstract valúes (substitutions), rather than concrete ones. We study the múltiple specialization of logic programs based on abstract interpretation. This involves in principie, and based on information from global analysis, generating several versions of a program predicate for different uses of such predicate, optimizing these versions, and, finally, producing a new, "multiply specialized" program. While múltiple specialization has received theoretical attention, little previous evidence exists on its practicality. In this paper we report on the incorporation of múltiple specialization in a parallelizing compiler and quantify its effects. A novel approach to the design and implementation of the specialization system is proposed. The resulting implementation techniques result in identical specializations to those of the best previously proposed techniques but require little or no modification of some existing abstract interpreters. Our results show that, using the proposed techniques, the resulting "abstract múltiple specialization" is indeed a relevant technique in practice. In particular, in the parallelizing compiler application, a good number of run-time tests are eliminated and invariants extracted automatically from loops, resulting generally in lower overheads and in several cases in increased speedups.

Más información

ID de Registro: 14265
Identificador DC: http://oa.upm.es/14265/
Identificador OAI: oai:oa.upm.es:14265
Identificador DOI: 10.1016/S0743-1066(99)00031-X
URL Oficial: http://www.sciencedirect.com/science/article/pii/S074310669900031X
Depositado por: Biblioteca Facultad de Informatica
Depositado el: 13 Ene 2013 08:43
Ultima Modificación: 21 Abr 2016 13:50
  • Open Access
  • Open Access
  • Sherpa-Romeo
    Compruebe si la revista anglosajona en la que ha publicado un artículo permite también su publicación en abierto.
  • Dulcinea
    Compruebe si la revista española en la que ha publicado un artículo permite también su publicación en abierto.
  • Recolecta
  • e-ciencia
  • Observatorio I+D+i UPM
  • OpenCourseWare UPM