Certified Transformation for Static Single Assignment of SPMD Programs

Citation:
El-Zawawy, M. A., "Certified Transformation for Static Single Assignment of SPMD Programs", Proceedings of The 14th International Conference on Computational Science and Its Applications -- DOI: 10.1109/ICCSA.2014.15, Page(s): 12 -- 17, IEEE CONFERENCE PUBLICATIONS, Guimarães, Portugal, June 30 - July 3, 2014.

Date Presented:

June 30 - July 3

Abstract:

A common program view adapted by most contemporary compilers is Static Single Assignment (SSA) which can be realized as transitional form (TF). In SSA, each variable is modified by exactly one assignment. SSA is based on splitting variables of the original program into many versions. Power constraints of sequential programming led parallel programming to be the main programming style today for performance boosting. The single program, multiple data (SPMD) style of parallelism is a prevalent model of parallel computing. A Proof-Carrying Code package typically consists of the original code, a proof that is checkable by a machine, and the code’s correctness specification.

A new technique for constructing a static single assignment form for SPMD programs is introduced in this paper. The proposed technique is in the form of a system of inference rules. The input of our proposed technique is a SPMD program and the output is a SSA form of the program. Judgment derivations in the proposed system are convenient choices for proof parts of a PCC packages. Therefore the resulting SSA form is certified in terms of proof-carrying code area of research.

Tourism