Search

Compiler Developer (m/f/d)

Akhetonics GmbH
locationMünchen, Deutschland
VeröffentlichtVeröffentlicht: Gestern
IT / Telekommunikation
Vollzeit

Join Akhetonics, a pioneer creating the world's first all-optical XPU for general-purpose, ultra-low power, high-performance computing and AI, utilizing a fully secure, European supply chain. As a Compiler Developer, you will be crucial in developing and implementing advanced compiler components using C#, focusing on SSA-based architectures, SPIR-V, and adherence to Clean Code standards. Your core responsibilities will include optimizing code generation strategies, implementing sophisticated program analysis (e.g., Liveness, Dominance Analysis), and refining techniques like Register Allocation within an agile environment.

Activities

  • Develop and implement compiler components using C# or another object-oriented language.
  • Deep understanding and application of SPIR-V concepts and documentation in compiler development.
  • Working with SSA-based compiler architectures to improve code quality and performance.
  • Implement and optimize program analysis techniques, including:
    • Data flow analysis (Liveness, Use-Def Chains, Reaching Definitions).
    • Dominance analysis and Control flow analysis.
  • Develop and refine code generation and optimization strategies:
    • Register Allocation and handling of Spilling.
    • Instruction Legalization/Expansion.
  • Considering and optimizing Register Pressure.
  • Handling special instructions such as Phi Instructions.
  • Ensuring code quality through adherence to Clean Code principles.
  • Creating and executing robust Unit & Integration Tests.
  • Active contribution to an agile development environment.

Requirements

Must Have criteria:

  • Experience in LLVM / MLIR / SPIR-V / HLSL / Shader-Compiler
  • IR-/Backend-/Codegen-Erfahrung
  • Memory models, type systems, calling conventions
  • Systems-level C++ or Rust or Go
  • Debugging complex Compiler Pipelines
  • Experience in industrial Toolchains
  • C# / object-oriented language

General knowledge of

SSA-based compilers:

  • Program analysis:
    • Data flow analysis (liveness, use-def chains, reaching definitions)
    • Dominance analysis
    • Control flow analysis
    • Register pressure
    • Phi instruction
  • Code generation & optimization:
    • Register allocation
    • Spilling
    • Instruction legalization/expansion

Skills:

  • Working in agile environment
  • Testing (Unit & Integration)
  • Clean Code
  • Adaptability to custom/novel architectures

Team

You will be working in a small but focussed team in our Munich office.

Application Process

  • Send us your CV
  • We'll contact you via chat
  • Technical Interview