Compiler Performance Engineer

AzulIndiaRemoteFull-timeMid level, 2–5 yearsListed 3 hours ago

Apply now

About this role

Minimum Requirements

- 2+ years of professional experience in compilers, JIT compilers or low level performance engineering

- Strong C++ design and coding skills

- Solid understanding of compiler optimization theory: SSA, data flow analysis, loop transformations

- Ability to read assembly and reason about why one instruction sequence is faster than another

What You Will Do

- Analyze performance of Java benchmarks and customer workloads, find gaps in generated code and trace them to their root cause in the compiler

- Implement and improve optimizations in Falcon's middle end and back end: inlining, loop optimizations, vectorization, redundancy elimination, speculative optimizations and their interaction with the runtime

- Improve code generation for x86_64 and AArch64

- Write tests and benchmarks that prove the improvement and protect it from regressions

- Contribute changes upstream to LLVM where it makes sense

Very Nice to Have

- Experience with LLVM IR and LLVM optimization passes, or with another optimizing compiler such as HotSpot C2, Graal, GCC or V8

- Experience with profilers such as perf, VTune or async profiler

- Knowledge of x86_64 and/or AArch64 microarchitecture

- Experience with Java, Scala or Kotlin, or with JVM internals

- MSc or PhD in Computer Science with a compiler or performance focus