This paper describes a set of tools for annotating and exploring program source code on the World Wide Web (WWW). These tools are part of a project to build an electronic textbook for parallel programming that exploits the Caltech Archetypes model of program construction. The tools provide a simple way for Fortran, HPF and C++ programmers to add special annotations to source codes that allow the source code to be converted automatically into WWW hypertext documents. In addition, special compiler based tools examine the source code and discover all subroutine call sites and automatically build the hypertext links to the appropriate subroutine definitions. In the case of parallel C++, a complete class browser has been constructed in HTML and the compiler based tools generates the data base of application specific type and program information.
{"title":"A Web Interface to Parallel Program Source Code Archetypes","authors":"J. Villacis, Dennis Gannon","doi":"10.1145/224170.224207","DOIUrl":"https://doi.org/10.1145/224170.224207","url":null,"abstract":"This paper describes a set of tools for annotating and exploring program source code on the World Wide Web (WWW). These tools are part of a project to build an electronic textbook for parallel programming that exploits the Caltech Archetypes model of program construction. The tools provide a simple way for Fortran, HPF and C++ programmers to add special annotations to source codes that allow the source code to be converted automatically into WWW hypertext documents. In addition, special compiler based tools examine the source code and discover all subroutine call sites and automatically build the hypertext links to the appropriate subroutine definitions. In the case of parallel C++, a complete class browser has been constructed in HTML and the compiler based tools generates the data base of application specific type and program information.","PeriodicalId":269909,"journal":{"name":"Proceedings of the IEEE/ACM SC95 Conference","volume":"5 7","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1995-12-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"113958407","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
High Performance Fortran (HPF) is rapidly gaining acceptance as a language for parallel programming. The goal of HPF is to provide a simple yet efficient machine independent parallel programming model. Besides the algorithm selection, the data layout choice is the key intellectual step in writing an efficient HPF program. The developers of HPF did not believe that data layouts can be determined automatically in all cases, Therefore HPF requires the user to specify the data layout. It is the task of the HPF compiler to generate efficient code for the user supplied data layout. The choice of a good data layout depends on the HPF compiler used, the target architecture, the problem size, and the number of available processors. Allowing remapping of arrays at specific points in the program makes the selection of an efficient data layout even harder. Although finding an efficient data layout fully automatically may not be possible in all cases. HPF users will need support during the data layout selection process. In particular, this support is necessary if the user is not familiar with the characteristics of the target HPF compiler and target architecture, or even with HPF itself. Therefore, tools for automatic data layout and performance estimation will be crucial if the HPF is to find general acceptance in the scientific community. This paper discusses a framework for automatic data layout for use in a data layout assistant tool for a data-parallel language such as HPF. The envisioned tool can be used to generate a first data layout for a sequential Fortran program without data layout statements, or to extend a partially specified data layout in a HPF program to a totally specified data layout. Since the data layout assistant is not embedded in a compiler and will run only a few times during the tuning process of an application program, the framework can use techniques that may be too computationally expensive to be included in a compiler. A prototype data layout assistant tool based on our framework has been implemented as part of the D system currently under development at Rice University. The paper reports preliminary experimental results. The results indicate that the framework is efficient and generates data layouts of high quality.
{"title":"Automatic Data Layout for High Performance Fortran","authors":"K. Kennedy, U. Kremer","doi":"10.1145/224170.224495","DOIUrl":"https://doi.org/10.1145/224170.224495","url":null,"abstract":"High Performance Fortran (HPF) is rapidly gaining acceptance as a language for parallel programming. The goal of HPF is to provide a simple yet efficient machine independent parallel programming model. Besides the algorithm selection, the data layout choice is the key intellectual step in writing an efficient HPF program. The developers of HPF did not believe that data layouts can be determined automatically in all cases, Therefore HPF requires the user to specify the data layout. It is the task of the HPF compiler to generate efficient code for the user supplied data layout. The choice of a good data layout depends on the HPF compiler used, the target architecture, the problem size, and the number of available processors. Allowing remapping of arrays at specific points in the program makes the selection of an efficient data layout even harder. Although finding an efficient data layout fully automatically may not be possible in all cases. HPF users will need support during the data layout selection process. In particular, this support is necessary if the user is not familiar with the characteristics of the target HPF compiler and target architecture, or even with HPF itself. Therefore, tools for automatic data layout and performance estimation will be crucial if the HPF is to find general acceptance in the scientific community. This paper discusses a framework for automatic data layout for use in a data layout assistant tool for a data-parallel language such as HPF. The envisioned tool can be used to generate a first data layout for a sequential Fortran program without data layout statements, or to extend a partially specified data layout in a HPF program to a totally specified data layout. Since the data layout assistant is not embedded in a compiler and will run only a few times during the tuning process of an application program, the framework can use techniques that may be too computationally expensive to be included in a compiler. A prototype data layout assistant tool based on our framework has been implemented as part of the D system currently under development at Rice University. The paper reports preliminary experimental results. The results indicate that the framework is efficient and generates data layouts of high quality.","PeriodicalId":269909,"journal":{"name":"Proceedings of the IEEE/ACM SC95 Conference","volume":"44 17","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1995-12-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132974339","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
We have developed a code which links the primeval fluctuations in the early universe with those observable at the present time by integrating the coupled, linearized, Einstein, Boltzmann, and fluid equations governing the evolution of metric perturbations and density fluctuations; this is the most accurate treatment to date of both the physics and the numerical integration. The results are useful both for calculations of the cosmic microwave background (CMB) anisotropy and the linear power spectrum of matter fluctuations. The serial code (LINGER) is highly efficient on vector machines. Furthermore, this application is perfectly suited for coarse-grained parallelism. A portable, parallel implementation (PLINGER) using common message-passing libraries (PVM, MPI, MPL, and PVMe) has been completed; it achieves Gflop/sec rates on current parallel supercomputers such as the T3D and SP2. LINGER and PLINGER are publically available as part of the COSMICS software package.
{"title":"Parallel Linear General Relativity and CMB Anisotropies","authors":"P. Bode, E. Bertschinger","doi":"10.1145/224170.224305","DOIUrl":"https://doi.org/10.1145/224170.224305","url":null,"abstract":"We have developed a code which links the primeval fluctuations in the early universe with those observable at the present time by integrating the coupled, linearized, Einstein, Boltzmann, and fluid equations governing the evolution of metric perturbations and density fluctuations; this is the most accurate treatment to date of both the physics and the numerical integration. The results are useful both for calculations of the cosmic microwave background (CMB) anisotropy and the linear power spectrum of matter fluctuations. The serial code (LINGER) is highly efficient on vector machines. Furthermore, this application is perfectly suited for coarse-grained parallelism. A portable, parallel implementation (PLINGER) using common message-passing libraries (PVM, MPI, MPL, and PVMe) has been completed; it achieves Gflop/sec rates on current parallel supercomputers such as the T3D and SP2. LINGER and PLINGER are publically available as part of the COSMICS software package.","PeriodicalId":269909,"journal":{"name":"Proceedings of the IEEE/ACM SC95 Conference","volume":"80 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1995-04-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132230940","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
A performance-price ratio of 2.2 Gflops per million dollars is demonstrated in simulations of wind instruments using a cluster of 20 non-dedicated Hewlett-Packard workstations and a shared-bus Ethernet network (the performance-price ratio is calculated assuming that the workstations were dedicated). The present simulations of wind instruments are based on the compressible Navier Stokes equations, and have only recently become possible through the use of parallel computing and through developments in numerical methods. The distributed simulation system has been built directly on top of UNIX and TCP/IP, and includes automatic process migration from busy workstations to free workstations.
{"title":"Price and Performance of Simulating Wind Instruments","authors":"P. Skordos","doi":"10.1109/SUPERC.1995.62","DOIUrl":"https://doi.org/10.1109/SUPERC.1995.62","url":null,"abstract":"A performance-price ratio of 2.2 Gflops per million dollars is demonstrated in simulations of wind instruments using a cluster of 20 non-dedicated Hewlett-Packard workstations and a shared-bus Ethernet network (the performance-price ratio is calculated assuming that the workstations were dedicated). The present simulations of wind instruments are based on the compressible Navier Stokes equations, and have only recently become possible through the use of parallel computing and through developments in numerical methods. The distributed simulation system has been built directly on top of UNIX and TCP/IP, and includes automatic process migration from busy workstations to free workstations.","PeriodicalId":269909,"journal":{"name":"Proceedings of the IEEE/ACM SC95 Conference","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129288167","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}