What You Do At AMD Changes EverythingAt AMD, we push the boundaries of what is possible. We believe in changing the world for the better by driving innovation in high-performance computing, graphics, and visualization technologies – building blocks for gaming, immersive platforms, and the data center.Developing great technology takes more than talent: it takes amazing people who understand collaboration, respect, and who will go the “extra mile” to achieve unthinkable results. It takes people who have the passion and desire to disrupt the status quo, push boundaries, deliver innovation, and change the world. If you have this type of passion, we invite you to take a look at the opportunities available to come join our team.
Job Description: The Compiler Engineer is responsible for development and enhancement of high-performance production level C/C++/Fortran compilers. Compiler Engineers are expected to independently design and develop complex optimization passes. Compiler Engineers must work closely with performance analysts, Compiler QA and the Compiler support organization. As needed, Compiler Engineers also work on Performance Analysis of the compiler and produce analysis reports.Job Duties: Following are the responsibilities of the Compiler Engineer
- Implement or enhance compiler passes (mostly backend optimization passes)
- Independently work on optimization passes
- Propose design, defend and implement optimization passes
- Contribute to the technical content of the compiler documentation/manuals.
- Generate a formal Performance Analysis report on performance issues, analysis and quantified improvement in performance.
- Develop a close working relationship with Compiler QA, Compiler Support and other performance/compiler teams.
Qualifications / Experience
- BS and 2+ years or fresh MS/PhD with computer science major
- Hands-on experience in compiler code generation and optimization in at least one major general purpose compiler for C/C++/Fortran
- Goodworking experience with one or more commercial or open source compilers (eg: Open64, LLVM etc)
- Good knowledge of micro-architectural features of modern microprocessors (eg; x86 , ARM)
- Excellent programming/debugging skills at Assembly level.
- Very solid practical C/C++/Fortran experience.
- Prior experience with performance analysis of programs, tuning and experience with analysis tools like profilers
- Prior experience with ARM and/or x86 target code generation a plus.
- Good interpersonal and communication (written and oral) skills
- Experience with parallel programming domain (OpenMP, MPI, auto-parallelization etc) is a plus
- Experience in parallel computing domain like (multi-core, GPGPU, SIMD, MIMD etc) is a plus
- Experience with GCC/LLVM internal is a plus
Requisition Number: 20022
Job Function: Software Engineering
To Apply: click here