首页 | 本学科首页   官方微博 | 高级检索  
     


A Data-Parallel FP Compiler
Affiliation:1. Department of Biological Engineering, Massachusetts Institute of Technology, USA;2. Center for Microbiome Informatics and Therapeutics, Massachusetts Institute of Technology, USA;3. Biobot Analytics, Inc., Cambridge, MA, USA;4. Singapore-MIT Alliance for Research and Technology, Antimicrobial Resistance Interdisciplinary Research Group, Singapore;5. Campus for Research Excellence and Technological Enterprise (CREATE), Singapore;6. Center for Data Science NYU, Center for Social Media and Politics, New York University, USA;7. Harvard T.H. Chan School of Public Health, Boston, MA, USA;8. Division of Medical Toxicology, Department of Emergency Medicine, Brigham and Women''s Hospital, Harvard Medical School, USA;9. The Fenway Institute, Fenway Health, Boston, MA, USA;10. Harvard Humanitarian Initiative, Harvard University, USA;11. Broad Institute of MIT and Harvard, Cambridge, MA, USA;12. Massachusetts Water Resources Authority, Boston, MA, USA;13. Department of Pediatrics, Harvard Medical School, Boston, MA, USA;14. Computational Health Informatics Program, Boston Children''s Hospital, Boston, MA, USA;15. Singapore Centre for Environmental Life Sciences Engineering, Nanyang Technological University, Singapore;p. School of Civil and Environmental Enginering, Nanyang Technological University, Singapore;q. Asian School of the Environment, Nanyang Technological University, Singapore
Abstract:In data-parallel programming, operations are performed simultaneously on all elements of large data structures. Backus′s FP functional language promotes this view. FP provides a large set of data rearrangement primitives, and a useful set of functional combining forms that are applied to entire data structures. We describe an FP compiler that generates programs capable of exploiting data-parallelism. The FP compiler deduces the type and shape of objects through type inference, and generates efficient parallel implementations of combining forms. In addition, the compiler determines the effects of data rearrangement functions at compile-time, thereby avoiding creation of large intermediate data structures, and reducing interprocessor communication overhead. FP and its compiler are formally specified, reducing ambiguity concerning constructs of the language and results of the compiler. Performance and speed-ups achieved from our compilation and optimization techniques are demonstrated with timings from a prototype implementation on the Connection Machine CM-2.
Keywords:
本文献已被 ScienceDirect 等数据库收录!
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号