World Scientific
  • Search
Skip main navigation

Cookies Notification

We use cookies on this site to enhance your user experience. By continuing to browse the site, you consent to the use of our cookies. Learn More
×
Our website is made possible by displaying certain online content using javascript.
In order to view the full content, please disable your ad blocker or whitelist our website www.worldscientific.com.

System Upgrade on Tue, Oct 25th, 2022 at 2am (EDT)

Existing users will be able to log into the site and access content. However, E-commerce and registration of new users may not be available for up to 12 hours.
For online purchase, please visit us again. Contact us at [email protected] for any enquiries.

ON THE COMPILATION OF A LANGUAGE FOR GENERAL CONCURRENT TARGET ARCHITECTURES

    The challenge of programming many-core architectures efficiently and effectively requires models and methods to co-design chip architectures and their software tool chain, using an approach that is both vertical and general. In this paper, we present compilation schemes for a general model of concurrency captured in a parallel language designed for system-level programming and as a target for higher level compilers. We also expose the challenges of integrating these transformation rules into a sequential-oriented compiler. Moreover, we discuss resource mapping inherent to those challenges. Our aim has been to reuse as much of the existing sequential compiler technology as possible in order to harness decades of prior research in compiling sequential languages.

    References

    • D. Geer, Computer 38(5), 11 (2005), DOI: 10.1109/MC.2005.160. Crossref, ISIGoogle Scholar
    • H. Sutter, Dr. Dobb's Journal 30(3), 292 (2005). Google Scholar
    • B. Chapman, The Multicore Programming Challenge, APPT '07: Proceedings of Advanced Parallel Processing Technologies4847 (2007) p. 3. Google Scholar
    • E. Haritanet al., Multicore Design is the Challenge! What is the Solution?, DAC '08: Proceedings of the 45th annual conference on Design automation (2008) pp. 128–130. Google Scholar
    • S. Amarasinghe, (How) Can Programmers Conquer the Multicore Menace?, PACT '08: Proceedings of the 17th international conference on Parallel Architectures and Compilation Techniques (2008) pp. 133–133. Google Scholar
    • H. Sutter and J. Larus, Queue 3(7), 54 (2005), DOI: 10.1145/1095408.1095421. CrossrefGoogle Scholar
    • H. Gabb, T. Mattson and C. Breshears, Intel Software Insight Magazine 16, 24 (2009). Google Scholar
    • C. R. Jesshope and A. Shafarenko, Concurrency Engineering, ACSAC '08: Proceedings of 13th IEEE Asia-Pacific Computer Systems Architecture Conference (2008) pp. 1–8. Google Scholar
    • T. Bernardet al., A General Model of Concurrency and its Implementation as Many-Core Dynamic RISC Processors, Proceedings of IC-SAMOS '08 (2008) pp. 1–9. Google Scholar
    • K. Bousiaset al., Journal of Systems Architecture 55(3), 149 (2009), DOI: 10.1016/j.sysarc.2008.07.001. Crossref, ISIGoogle Scholar
    • M. Lankamp, Developing a Reference Implementation for a Microgrid of Microthreaded Microprocessors, MSc thesis, University of Amsterdam, The Netherlands, Advisor: C. R. Jesshope, Aug. 2007 . Google Scholar
    • T. D Vu and C. R. Jesshope, Formalizing SANE Virtual Processor in Thread Algebra, ICFEM '07: Proceedings of 9th International Conference on Formal Engineering Methods (Springer-Verlag, 2007) pp. 345–365. Google Scholar
    • G. R. Gao and V. Sarkar, IEEE Transactions on Computers 49(8), 798 (2000), DOI: 10.1109/12.868026. Crossref, ISIGoogle Scholar
    •  Arvind, Rishiyur S. Nikhil and Keshav K. Pingali, ACM Transactions on Programming Languages and Systems 11(4), 598 (1989), DOI: 10.1145/69558.69562. Crossref, ISIGoogle Scholar
    • The SPARC Architecture Manual Version 9, 2009 , http://www.sparc.org/standards/SPARCV9.pdf . Google Scholar
    • C. R. Jesshope, μTC - an Intermediate Language for Programming Chip Multiprocessors, ACSAC '06: Proceedings of Pacific Computer Systems Architecture Conference (2006) pp. 147–160. Google Scholar
    • Hans-J. Boehm, Threads Cannot be Implemented as a Library, in HP Internet Systems and Storage Laboratory, Nov. 2004 . Google Scholar
    • H. Kasimet al., Survey on Parallel Programming Model, NPC '08: Proceedings of the IFIP International Conference on Network and Parallel Computing (2008) pp. 266–275. Google Scholar
    • F.   McMahon , The Livermore FORTRAN Kernels: A Computer Test of the Numerical Performance Range , Technical Report UCRL-53745 ( Lawrence Livermore National Lab. , USA , 1986 ) . Google Scholar
    • OpenMP Architecture Review Board, The OpenMP Specification for Parallel Programming, version 3.0, 2008 , http://www.openmp.org/mp-documents/spec30.pdf . Google Scholar
    • Karl Fürlinger and Michael Gerndt, High Performance Computing for Computational Science 4395, 39 (2007). Google Scholar
    • Robert D. Blumofeet al., SIGPLAN Notices 30(8), 207 (1995), DOI: 10.1145/209937.209958. Crossref, ISIGoogle Scholar
    • T. El-Ghazawi and L. Smith, UPC: Unified Parallel C, SC '06: Proceedings of the 2006 ACM/IEEE conference on Supercomputing (2006) p. 27. Google Scholar
    • David B Skillicorn and Domenico Talia, ACM Computing Surveys 30(2), 123 (1998), DOI: 10.1145/280277.280278. Crossref, ISIGoogle Scholar