AI Kernel Engineer
Codeplay’s mission is to build the largest open ecosystem for accelerator computing targeting AI. To achieve this, we work with partners to integrate open standards, such as SYCL, into applications and machine learning frameworks.
We are seeking a highly skilled AI Kernel Programmer to join our team. As an AI Kernel Programmer, you will be responsible for developing, optimizing, and implementing software components for AI frameworks and hardware accelerators. You will work at the intersection of deep learning algorithms, system architecture, and hardware acceleration to push the boundaries of performance and efficiency in AI model execution. We work in open source and internal projects like CUTLASS and Triton.
Responsibilities
- Design and implement custom AI kernels for deep learning operators such as matrix multiplications, convolutions, and activation functions
- Optimize performance-critical components on CPU, GPU, or other hardware accelerators
- Collaborate with deep learning researchers to translate high-level models into high-performance low-level code
- Contribute to the internals of AI frameworks like PyTorch, TensorFlow or custom inference engines
- Write highly optimized parallel code using SYCL.
- Profile, debug, and benchmark kernel performance across multiple architectures
- Implement hardware-specific optimizations for emerging accelerators
- Driving multiple stages of software projects - from requirements gatherings to launch and validation
- Looking for what can be improved, and having a proactive attitude in helping other team members
- Participating in technical discussions, asking insightful questions, and contributing to scoping schedules, and solutions to issues
- Taking the initiative and assuming responsibility for solving technical problems
- Delivering documented software and standard methodologies
- Contributing to knowledge sharing of the company
- Communicate your ideas, work, and results to other team members and product owners
Required Skills
The ideal candidate is a self-motivated individual who can work through a problem from start to finish, meet deadlines as required to support software projects, and has the ability to work under pressure. You will be working on technology that is seldom announced to the public and could be several years away from public release, so confidentiality is critical. You should be able to work both independently and collaboratively within teams of varying skill sets and expertise. You should be welcoming towards, and able to adapt to, the introduction of new technologies, responsibilities and projects, as Codeplay works with cutting-edge technology and takes on a diverse range of projects
- Proficiency in C/C++ and template meta programming
- Experience with CUDA, OpenCL, or SYCL for GPU programming. Understanding of parallel algorithms on different architectures
- Strong understanding of computer architecture, memory hierarchy, and parallel computing
- Experience with profiling and optimizing applications written in SYCL and oneAPI libraries
- Knowledge of deep learning algorithms and their computational building blocks
- Familiarity with low-level optimization techniques (SIMD, cache blocking, loop unrolling)
- Experience with performance profiling tools like NVProf, VTune, Perf
- Ability to write clean, maintainable, and optimized code
- Experience working in open source projects and doing community contributions
Beneficial Skills
Knowledge and/or experience of any of the following would be useful for the role, but are not essential. You must be able to learn new skills, but will be given support from Codeplay’s team to get you up to speed.
- Experience developing/optimising SYCL AI code
- Familiarity with hardware-specific libraries like cuDNN, CUTLASS, OneDNN.
- Familiarity with LLM operators in pytorch inductor backend
- Hands-on experience with AI framework internals (PyTorch, TensorFlow, ONNX Runtime)
Application Guidance
Codeplay is proud to be an Equal Opportunities employer. We celebrate and value diversity. We are committed to creating an inclusive environment for all employees, regardless of race, colour, gender, religion, national origin, ancestry, citizenship, disability, age, sexual orientation or any other characteristic protected by law. All employment is decided on the basis of qualifications, merit and business need and we strongly encourage applicants from all backgrounds and walks of life. If you have a disability or additional need that requires accommodation, just let us know.