ACM Home Page
Please provide us with feedback. Feedback
Semantic parallelization: a practical exercise in abstract interpretation
Full text PdfPdf (965 KB)
Source Annual Symposium on Principles of Programming Languages archive
Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages table of contents
Munich, West Germany
Pages: 39 - 48  
Year of Publication: 1987
ISBN:0-89791-215-2
Author
P. Jouvelot  Laboratoire MASI, Université PARIS 6, 4, Place Jussieu, 75252 PARIS Cedex 05, France
Sponsor
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 7,   Downloads (12 Months): 25,   Citation Count: 5
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/41625.41629
What is a DOI?

ABSTRACT

The parallelization of sequential programs is an adequate approach for the easy use of architectural features provided on parallel computers. We propose to enhance this technique with the notion of semantic parallelization. The principle is to consider the transformations of programs induced by parallelization as non-standard denotational semantics of the source programming language. We show how to apply this concept to detect, in a toy language ALL, parallelizable complex commands and to deal with some type of programs using indirections. Thanks to results in domain theory and abstract interpretation, we give correctness proofs for these transformations with respect to ALL standard semantic. A byproduct of our approach is that a denotational specification is also an executable prototype ;hence, we were able to implement a semantic parallelizer in the ML functional language. Running examples are supplied.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
Aho86
Aho, A., Sethi, R., and Ullman, J. D., Compilers, Addison-Wesley, 1986.
 
Allen82
Allen, J. R. and Kennedy, K., PFC : a Program to Convert Fortran to a Parallel Form, Supercomputers, Design and Applications, COMPSAC, IEEE, 1982.
 
Allia85
Alliant,, A/ZJANT FX/Series : Product Swmnary, Aeton, June 1985.
 
Berns66
Bernstein, A. J., "Analysis of Programs for Parallel Processing," IEEE Trans. on Elec. Comp., vol. 15, pp. 757-763, October 1966.
 
Carde85
Cardelli, L., "Basic Polymorphic Typeeh~cking," Polymorphism 1, vol. II, Bell Labs, January 1985.
Clark86
 
Coope72
Cooper, D. C., Theorem Proving in Arithmetic without Multiplication, M~h.Intell.7, 1972.
 
Cousi85
Cousineau, G., "The ML Handbook," (draft 1NRIA), May 1985.
 
Couso78b
Cousot, P., M~hodes It~ratives de Construction de Points Fixes d'Opkrateurs Monotones sur un Trefflis, Analyse S~mantique des Programmes, Thesis, U.S.M.G, Grenoble, 1978.
Couso77
Couso78a
 
Duffi74
Duffin, R. J., "On Fourier's Analysis of Linear Inequality Systems," Mathematical ProgSt., vol. 1, North-Holland, 1974.
Fishe84
 
Floyd67
Floyd, R. W., Assigning Meanings to Programs, 19- th Syrup. in Applied Maths., American Mathematical Society, 1967.
 
Forte85
Fortes, J. A. B. and Moldovan, D.I., "Parallelism Detection and Transformation Techniques Useful for VLSI Algorithms," J. of Parallel and Distributed Computing, vol. 2, pp. 277-301, Academic Press, 1985.
 
Gordo79b
 
Gordo79a
Gordon, M. J. C. and Milner, R., Edinburgh LCF, LNCS 78, Springer-Verlag, 1979.
 
Hilli85
 
Johns78
Johnson, S. C., YACC: Yet Another Compiler- Compiler, Bells Labs, Murray Hills, July 1978.
 
Jouve86c
Jouvelot, P., Parallkiisation Sbnantique, PhD. Thesis (expected, in French), Univ. of Paris 6, 1986.
 
Jouve86a
 
Kreis67
Kreisel, G. and Krivine, J. L., Elements de Logique Math~matique, Dunod, 1967.
Kuck77
Li86
 
MacQu83
MacQueen, D., "Modules for SML," Polymorphism, vol. I, Bell Labs, December 1983.
 
Nicol84
Nieolau, A. and Fisher, J. A., "Measuring the Parallelism Available for Very Long Instruction Word Architectures," IEEE Tr. on Computers, vol. C-33, November 1984.
Niels85
 
Oppen78
Oppen, D. C., "A 22~ Upper Bound on the Complexity of Presburger Arithmetic," JCSS, vol. 16, pp. 323-332, 1978.
Perro79
Schwa80
 
Scott72
Scott, D., The Lattice of Flow Diagrams, Symposium on Semantics of Algorithmic Language, Springer- Verlag, 1972.
 
Suzuk77
Suzulo, N. and Jefferson, D., Verification Decidability of Presburger Array Programs, Proe.on Theoretical Computer Science, Waterloo, 1977.
 
Triol86a
Triol86b