Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Software Synthesis for High Productivity Exascale Computing

Technical Report ·
DOI:https://doi.org/10.2172/1214546· OSTI ID:1214546
 [1];  [2];  [3]
  1. Univ. of Washington, Seattle, WA (United States); University of Washington (was UC Berkeley)
  2. University of California, Berkeley, CA (United States)
  3. Massachusetts Inst. of Technology (MIT), Cambridge, MA (United States)
Over the three years of our project, we accomplished three key milestones: We demonstrated how ideas from generative programming and software synthesis can help support the development of bulk-synchronous distributed memory kernels. These ideas are realized in a new language called MSL, a C-like language that combines synthesis features with high level notations for array manipulation and bulk-synchronous parallelism to simplify the semantic analysis required for synthesis. We also demonstrated that these high level notations map easily to low level C code and show that the performance of this generated code matches that of handwritten Fortran. Second, we introduced the idea of solver-aided domain-specific languages (SDSLs), which are an emerging class of computer-aided programming systems. SDSLs ease the construction of programs by automating tasks such as verification, debugging, synthesis, and non-deterministic execution. SDSLs are implemented by translating the DSL program into logical constraints. Next, we developed a symbolic virtual machine called Rosette, which simplifies the construction of such SDSLs and their compilers. We have used Rosette to build SynthCL, a subset of OpenCL that supports synthesis. Third, we developed novel numeric algorithms that move as little data as possible, either between levels of a memory hierarchy or between parallel processors over a network. We achieved progress in three aspects of this problem. First we determined lower bounds on communication. Second, we compared these lower bounds to widely used versions of these algorithms, and noted that these widely used algorithms usually communicate asymptotically more than is necessary. Third, we identified or invented new algorithms for most linear algebra problems that do attain these lower bounds, and demonstrated large speed-ups in theory and practice.
Research Organization:
University of California, Berkeley, CA (United States)
Sponsoring Organization:
USDOE Office of Science (SC), Advanced Scientific Computing Research (ASCR)
DOE Contract Number:
SC0005136
OSTI ID:
1214546
Report Number(s):
SC0005136; DOE­UCB­0005136
Country of Publication:
United States
Language:
English

Similar Records

Parallel language constructs for paradigm integration and deterministic computations
Conference · Thu Dec 30 23:00:00 EST 1993 · OSTI ID:10114175

Bilingual parallel programming
Conference · Sun Dec 31 23:00:00 EST 1989 · OSTI ID:6223945

A multilingual parallelization of the icosahedral-hexagonal grid system for integration on the sphere
Conference · Mon Dec 31 23:00:00 EST 1990 · OSTI ID:5633109

Related Subjects