Hal Finkel via llvm-dev
2016-Dec-22 00:42 UTC
[llvm-dev] Postdoc Positions - LLVM for High-Performance Computing
Hi everyone, I'm happy to report that I have two open postdoctoral research positions at Argonne National Laboratory focusing on LLVM-based compiler technology for high-performance computing. US citizenship is *not* required. If you've received your Ph.D. within the past several years, or are in the process of completing your degree requirements, and would like to join a team working to prepare LLVM for the exascale era, I hope you'll apply to one or both of these positions: 401877: http://bit.ly/2i7mVLl - 401878: http://bit.ly/2hShmQz We'll be working with teams from several other laboratories and universities, as well as the wider LLVM community, on topics ranging from GPU register allocation to high-level optimizations of loops and parallelism constructs. If you have any questions, please send me an e-mail (hfinkel at anl.gov). ** Requisition 401877 - Optimization and Autotuning for Supercomputing Compilers ** http://bit.ly/2i7mVLl Position Description This is an exciting opportunity to work on the future of compiler technology for high-performance computing (HPC) with a particular focus on supporting the world's largest supercomputers as we head toward exascale. Theextremelevels of parallelism available on these machines combined with their complex memory hierarchiescreateuniqueoptimization challenges. This research will exploreenhancementsto LLVM enabling better modeling and exploration of the complex space of potential optimizations in addition toenhancingLLVM's optimization capabilities. One focus of this work will be to enable more-effective autotuning by strengthening the two-way communication between the autotuner and the optimizer. A passion forimprovingcompiler technology, a keen interest in high-performance computing hardware, anda desireto advance scientific computing, will be rewarded in this position. Position Requirements We expect you to have: * Minimum education and experience or equivalent combination: * Doctorate + 0 years. * Experience with compiler and toolchain development, including intermediate representations, machine-independent and machine-dependent optimizations, and code generation; experience with LLVM and Clang is preferred. * Significant experience with C++, includingthe use oftemplates. * Demonstrated knowledge of instruction sets and computer architectures, including pipeline structure and hazards, and cache and memory hierarchies. * Experience with assembly languages, preferably at least one of x86_64, PowerPC, and PTX. * Demonstratedadvanced knowledge ofhigh-level compiler optimizations; experience with polyhedral loop optimizations is preferred. * Advanced knowledge ofthe language semantics of one of the following: C, C++, Fortran. * Advanced knowledge ofmathematical-optimization techniques, especially derivative-free optimization. * Experience with machine learning, especially supervised learning. * Experience with high-performance computing and scientific code development. * Experience with code optimization andthe use ofprofiling and performance-monitoring tools and techniques. * Experience with Linux environments and Python.Good software debugging skills. In addition,candidatesshould show: * Effective analytical andproblem-solvingskills tocontributetocreativesolutions to complex problems. * Good communications skills, both verbal and written. * Goodcollaborativeskills, including the ability to work wellwith otherlabs, universities, computing centers, and industry. ** Requisition 401878 - Parallelism, Memory, and Programming Models for Supercomputing Compilers ** http://bit.ly/2hShmQz Position Description This is an exciting opportunity to work on the future of compiler technology for high-performance computing (HPC) with a particular focus on supporting the world's largest supercomputers as we head toward exascale. Theextremelevels of parallelism available on these machines combined with their complex memory hierarchiescreateuniqueprogramming-model and optimization challenges. This research will exploreenhancementsto LLVM enabling the explicit representation and optimization of parallelism and hierarchical-memory constructs.Enhancementsto programming models, including OpenMP, will be prototyped as we learn how to best provide performance portability across a range of future computing architectures. A passion forimprovingcompiler technology, a keen interest in high-performance computing hardware, anda desireto advance scientific computing, will be rewarded in this position. Position Requirements We expect you to have: * Experience with compiler and toolchain development, including intermediate representations, machine-independent and machine-dependent optimizations, and code generation; experience with LLVM and Clang is preferred. * Significant experience with C++, includingthe use oftemplates. * Demonstrated knowledge of instruction sets and computer architectures, including pipeline structure and hazards, and cache and memory hierarchies. * Experience with assembly languages, preferably at least one of x86_64, PowerPC, and PTX. * Demonstratedadvanced knowledge ofhigh-level compiler optimizations; experience with polyhedral loop optimizations is preferred. * Advanced knowledge ofthe language semantics of one of the following: C, C++, Fortran. * Experience with the OpenMP programming model. * Experience with high-performance computing and scientific code development. * Experience with code optimization andthe use ofprofiling and performance-monitoring tools and techniques. * Experience with Linux environments and Python. * Good software debugging skills. In addition,candidatesshould show: * Effective analytical andproblem-solvingskills tocontributetocreativesolutions to complex problems. * Good communications skills, both verbal and written. * Goodcollaborativeskills, including the ability to work wellwith otherlabs, universities, computing centers, and industry. -Hal -- Hal Finkel Lead, Compiler Technology and Programming Languages Leadership Computing Facility Argonne National Laboratory -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20161221/9f35bfce/attachment.html>