3 months ago
Responsibilities
- Design and implement C++ kernels for linear algebra and tensor operations including GEMM, batched GEMM, convolutions, reductions, elementwise operations, and fused operations.
- Own kernel performance and correctness by adding microbenchmarks, regression tests, and numerical validation.
- Profile and optimize threading, cache locality, memory layout, and kernel launch efficiency for next-generation AI hardware.
- Debug issues, resolve bugs, and improve product quality and functionality.
- Support Agile ways of working within the team.
- Mentor colleagues by sharing knowledge and providing guidance.
Requirements
- Excellent programming and scripting skills in C++ and Python.
- Understanding of processor architectures and profiling on Linux.
- Experience testing numerical and performance-sensitive code.
- Hands-on experience with reproducibility, determinism, tolerance design, and benchmarking.
- Strong written and oral communication, teamwork, and quality focus.
- Strong algorithmic performance knowledge, including vectorization, memory hierarchy, threading, and lock-free patterns, is desirable.
- Experience with at least one BLAS/DNN stack and extending kernels is desirable.
- Experience with CPU micro-optimizations and numerical stability trade-offs across FP32, FP16, BF16, and FP8 is desirable.
- Experience integrating native code into PyTorch or similar systems through custom operations, extensions, or dispatch keys is desirable.
- Knowledge of ABI/API stability and Linux packaging, including manylinux and wheels, is desirable.
Benefits
- Annual leave policy, medical and dental health plans, gym card, and employee pension matched up to 4%.
- Flexible interview approach and reasonable adjustments are available.
About Graphcore
At Graphcore, we’re building the future of AI compute. We’re a team of semiconductor, software and AI experts, with deep experience in creating the complete AI compute stack - from silicon and software to infrastructure at datacenter scale. As part of the SoftBank Group, backed by significant long-term investment, we are delivering key technology into the fast-growing SoftBank AI ecosystem. To meet the vast and exciting AI opportunity, Graphcore is expanding its teams around the world. We are bringing together the brightest minds to solve the toughest problems, in a place where everyone has the opportunity to make an impact on the company, our products and the future of artificial intelligence.