Ziyang Xu will present his General Exam "Revisiting Type-Awareness for Automatic Parallelization" on Friday, January 17, 2020 at 10:30am in CS 302
Ziyang Xu will present his General Exam "Revisiting Type-Awareness for Automatic Parallelization" on Friday, January 17, 2020 at 10:30am in CS 302. The members of his committee are as follows: David August (adviser), Amit Levy, and Zachary Kincaid. Everyone is invited to attend his talk, and those faculty wishing to remain for the oral exam following are welcome to do so. His abstract and reading list follow below. Abstract: Over the last decade, advances in memory analyses, speculative techniques, and parallelization paradigms have dramatically improved the power of automatic parallelization. To be applicable for general-purpose C and C++ codes, parallelizing compilers incorporating these advances work without making use of type information. This study explores the value of making RAPPORT, a state-of-the-art parallelization framework, aware of modern type features when parallelizing Rust programs. We extend RAPPORT with a Rust frontend that brings type information to the IR. New type-aware memory analysis (TAMA) modules bring this information into the RAPPORT's collaborative analysis framework (CAF), allowing these modules to use type information in collaborating with other memory analysis modules to maximize their effect. We measure the extent to which this framework can use Rust type information to uncover more or better automatic parallelization opportunities. Reading List: Books: [1]J. L. Hennessy and D. A. Patterson, Computer architecture: a quantitative approach. Elsevier, 2011. [2]A. W. Appel, Modern Compiler Implementation in ML. New York, NY, USA: Cambridge University Press, 2004. Papers: [1]B. K. Rosen, M. N. Wegman, and F. K. Zadeck, “Global value numbers and redundant computations,” in Proceedings of the 15th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 1988, pp. 12–27. [2]D. G. Clarke, J. M. Potter, and J. Noble, “Ownership Types for Flexible Alias Protection,” in Proceedings of the 13th ACM SIGPLAN Conference on Object-oriented Programming, Systems, Languages, and Applications, New York, NY, USA, 1998, pp. 48–64. [3]A. Diwan, K. S. McKinley, and J. E. B. Moss, “Type-based Alias Analysis,” in Proceedings of the ACM SIGPLAN 1998 Conference on Programming Language Design and Implementation, New York, NY, USA, 1998, pp. 106–117. [4]K. Crary, D. Walker, and G. Morrisett, “Typed memory management in a calculus of capabilities,” in Proceedings of the 26th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL ’99, San Antonio, Texas, United States, 1999, pp. 262–275. [5]G. Ottoni, R. Rangan, A. Stoler, and D. I. August, “Automatic thread extraction with decoupled software pipelining,” in 38th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO’05), 2005, pp. 12 pp. – 118. [6]M. J. Bridges, N. Vachharajani, Y. Zhang, T. Jablin, and D. I. August, “Revisiting the Sequential Programming Model for Multi-Core,” in Proceedings of the 40th Annual IEEE/ACM International Symposium on Microarchitecture, pp. 69-84. IEEE Computer Society, 2007. [7]S. Campanoni, T. Jones, G. Holloway, V. J. Reddi, G.-Y. Wei, and D. Brooks, “HELIX: automatic parallelization of irregular programs for chip multiprocessing,” in Proceedings of the Tenth International Symposium on Code Generation and Optimization - CGO ’12, San Jose, California, 2012, p. 84. [8]N. P. Johnson, H. Kim, P. Prabhu, A. Zaks, and D. I. August, “Speculative Separation for Privatization and Reductions,” in Proceedings of the 33rd ACM SIGPLAN Conference on Programming Language Design and Implementation, New York, NY, USA, 2012, pp. 359–370. [9]N. P. Johnson, J. Fix, S. R. Beard, T. Oh, T. B. Jablin, and D. I. August, “A collaborative dependence analysis framework,” in 2017 IEEE/ACM International Symposium on Code Generation and Optimization (CGO), Austin, TX, USA, 2017, pp. 148–159. [10]V. Astrauskas, P. Müller, F. Poli, and A. J. Summers, “Leveraging Rust Types for Modular Specification and Verification,” Proc. ACM Program. Lang., vol. 3, no. OOPSLA, pp. 147:1–147:30, Oct. 2019. [11]S. Apostolakis, Z. Xu, G. Chan, S. Campanoni, and D. I. August, “Perspective: A Sensible Approach to Speculative Automatic Parallelization,” in Proceedings of the Twenty-Fifth International Conference on Architectural Support for Programming Languages and Operating Systems, 2020.
participants (1)
-
Nicki Mahler